Android 构建所有ABI,但仅打包一个子集
我正在尝试为我的项目构建所有ABI,但只想将其中的一个子集打包到我的应用程序中。例如,我想构建“x86”、“x86_64”、“armeabi-v7a”和“arm64-v8a”,但只构建包“x86”(例如) 阅读“specifyabis”部分下的文档(),似乎很可能使用他们提供的代码片段作为示例。然而,这似乎对我不起作用 我的代码片段如下Android 构建所有ABI,但仅打包一个子集,android,gradle,android-ndk,Android,Gradle,Android Ndk,我正在尝试为我的项目构建所有ABI,但只想将其中的一个子集打包到我的应用程序中。例如,我想构建“x86”、“x86_64”、“armeabi-v7a”和“arm64-v8a”,但只构建包“x86”(例如) 阅读“specifyabis”部分下的文档(),似乎很可能使用他们提供的代码片段作为示例。然而,这似乎对我不起作用 我的代码片段如下 android { defaultConfig { ndk { abiFilters 'armeabi-v7a'
android {
defaultConfig {
ndk {
abiFilters 'armeabi-v7a'
}
externalNativeBuild {
cmake {
abiFilters 'armeabi-v7a', 'x86'
}
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
在上面的代码片段中,根据我对文档的理解,它应该同时构建armeabi-v7a和x86,但只在我的APK中打包armeabi-v7a。但这不起作用
我使用的是Android插件3.1.0和NDK 16.1.4479499你要找的东西是由拆分控制的
splits {
abi {
enable true
reset()
include 'armeabi-v7a'
universalApk false //don't generate an additional APK that contains all the ABIs
}
}
您要查找的内容由拆分控制
splits {
abi {
enable true
reset()
include 'armeabi-v7a'
universalApk false //don't generate an additional APK that contains all the ABIs
}
}
谢谢你,亚历克斯。这不会创建多个APK吗?我希望用一个ABI创建一个APK,但要构建所有ABI。虽然你只需要一个ABI,但上面的设置就足够了。我不知道如何创建一个有两个ABI的APK,同时创建更多。谢谢Alex的帮助。我在原始问题中发布的代码在理论上应该是有效的,但由于某些原因,它不是:(我对你的回复投了赞成票,因为它非常有用,但我仍然想理解为什么示例代码不起作用。谢谢Alex。这不会创建多个APK吗?我希望创建一个只有一个ABI的APK,但构建所有ABI。虽然你只需要一个ABI,但上面的设置就足够了。我不知道如何使用创建APK。)两个ABI同时构建更多。感谢Alex的帮助。我在原始问题中发布的代码理论上应该可以工作,但由于某些原因,它不是:(我对您的回复投了赞成票,因为它非常有用,但我仍然想理解示例代码不起作用的原因。我相信您对的解释是错误的。如果您想打包(例如,x86和armeabi),但预构建了前一个列表,并且只希望Gradle构建armeabiI beli,那么将此列表定义两次可能会有所帮助eve,您对的解释不正确。如果您希望打包(例如x86和armeabi),但预构建了前者,并且只希望Gradle构建armeabi,那么将此列表定义两次可能会有所帮助