这是我的build.gradle文件:
android {
//...
defaultConfig {
//...
externalNativeBuild {
ndkBuild {
targets "MyGame"
arguments "NDK_MODULE_PATH=$cocospath:$cocospath/cocos:$cocospath/external:$cocospath/cocos/prebuilt-mk:$cocospath/extensions"
arguments "-j" + Runtime.runtime.availableProcessors()
buildTypes {
debug {
abiFilters "armeabi", "armeabi-v7a", "arm64-v8a"
}
release {
abiFilters "armeabi"
}
}
}
}
}
//.........
我尝试在调试模式下构建应用时使用三个abi过滤器(armeabi, armeabi-v7a and arm64-v8a)
,并在构建版本apk时仅使用一个(armeabi)
。但它不起作用。调试版和发行版都使用了所有三个abiFilter。
我的gradle文件出了什么问题?
编辑:
事实证明,当我拥有所有三个abi过滤器并成功构建应用程序时,我想只留下armeabi并且......仍然添加了所有三个。我不得不手动删除app / build目录的内容。
答案 0 :(得分:6)
您将 abiFIlters 放入错误的区块。这就是它的工作方式:
android {
//...
defaultConfig {
//...
externalNativeBuild {
ndkBuild {
targets "MyGame"
arguments …
}
}
}
buildTypes {
release {
ndk {
abiFilters "armeabi-v7a"
}
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
ndk {
abiFilters "x86", "armeabi-v7a"
}
}
}
}