2017-01-05 8 views
1

Я работаю над приложением просмотра PDF, используя ebookdroid & MuPDF Файлы CPP. У меня много проблем с интеграцией NDK в Gradle. Я прошел много ответов, но они не исправили мою проблему.Как установить путь NDK lib в Gradle?

Gradle дает мне следующее сообщение об ошибке:

Error:Execution failed for task ':app:compileDebugNdk'. 
Error: Your project contains C++ files but it is not using a supported native build system. 
Consider using CMake or ndk-build integration with the stable Android Gradle plugin: 
    https://developer.android.com/studio/projects/add-native-code.html 
    or use the experimental plugin: 
    http://tools.android.com/tech-docs/new-build-system/gradle-experimental. 

ответ

0

Редактировать ваш build.gradle, добавьте defaultConfig.externalNativeBuild.ndkBuild, externalNativeBuild.ndkBuild и sourceSet.main.jni.srcDir опции. См. Комментарии ниже.

android { 
     compileSdkVersion 22 
     buildToolsVersion "27.0.0" 

     defaultConfig { 
      minSdkVersion 18 
      targetSdkVersion 22 
      versionCode 1 
      versionName "1.0" 

      //add arguments passed to ndkBuild 
      externalNativeBuild { 
       ndkBuild { 
        arguments "NDK_TOOLCHAIN_VERSION=clang", "APP_SHORT_COMMANDS=true", "APP_ALLOW_MISSING_DEPS=true" 
        arguments "-j" + Runtime.runtime.availableProcessors() 
        cFlags "-fexceptions" 
       } 
      } 

      ndk { 
       abiFilters "armeabi-v7a" 
      } 
     } 

     //specify jni source file path 
     sourceSets.main { 
      java.srcDir "src" 
      res.srcDir "res" 
      jni.srcDir "jni" 
     } 


     buildTypes { 
      debug { 
       debuggable true 
       jniDebuggable true 
      } 
     } 

     //specify makefile/CMake file 
     externalNativeBuild { 
      ndkBuild { 
       path 'jni/Android.mk' 
      } 
     } 
    }