2016-08-17 2 views
2

При запуске моего приложения для Android Android Studio выводит сообщение об ошибке:Как ограничить целевую платформу с помощью android gradle-experimental?

Error:Execution failed for task ':app:processAndroidArmDebugJniLibs'. 
> java.io.FileNotFoundException: <path here>\distribution\wb\lib\x86\libwb.so (The system cannot find the path specified) 

Он пытается получить доступ к библиотеке x86, но я попытался ограничить целевые платформы только руки платформы. Ошибка исчезает, если я заменю $ {targetPlatform.getName()} с armeabi в (Gradle-экспериментальный) файл app.gradle:

model { 
repositories { 
    libs(PrebuiltLibraries) { 
     wb { 
      binaries.withType(SharedLibraryBinary) { 
       sharedLibraryFile = file("${lib_distribution_root}/wb/lib/${targetPlatform.getName()}/libwb.so") 
      } 
     } 
    } 
} 
android { 
    // ... 
    sources { 
     main { 
      jniLibs { 
       dependencies { 
        library "wb" 
       } 
      } 
     } 
    } 
    productFlavors { 
     create("arm") { 
      ndk.abiFilters.add("armeabi") 
     } 
    } 
} 
// ... 

Как исправить построить так, что только рука используется библиотека?

ответ

0

Вы можете добавить ndk.abiFilters в build.gradle:

 

    android { 
     .... 
     defaultConfig { 
     ndk { 
      abiFilters 'armeabi' 
      } 
     } 
     .... 
    } 
+0

Я не знаю, если это работает в Gradle-экспериментальной, но я перешел на стабильную Gradle некоторое время назад. Я думаю, что большинство людей больше не используют gradle-experimental. – jozols

Смежные вопросы