1、libs中有armeabi-v7a和x86目录及so文件
如果:
app的build.gradle中配置
ndk {
abiFilters "armeabi-v7a"
}
Terminal中运行./gradlew installDebug
则报错:
> Task :app:installDebug FAILED
06:15:10 V/ddms: execute: running am get-config
06:15:10 V/ddms: execute 'am get-config' on 'emulator-5554' : EOF hit. Read: -1
06:15:10 V/ddms: execute: returning
Skipping device 'Pixel_2_API_28(AVD) - 9' for 'app:debug': Could not find build of variant which supports density 420 and an ABI in x86
FAILURE: Build failed with an exception.
关注错误信息:
Could not find build of variant which supports density 420 and an ABI in x86
1.1 删除libs目录下x86目录,结果报错同上。
1.2 删除libs目录下x86目录,修改app的build.gradle为:
ndk {
abiFilters "armeabi-v7a", "x86"
}
报错信息如下:
Unable to install /Users/xxx/AndroidStudioProjects/NDKTest
/app/build/outputs/apk/debug/app-debug.apk
com.android.ddmlib.InstallException:
INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
2、abiFilters作用
2.1 当用于C++源码编译打包时,作用是:只生成指定的so文件。
2.2 当用于加载so包时,作用是:只加载指定的so文件。