在按照谷歌的文档here制作 Android 应用程序 64 位兼容后,我一直在尝试构建 Android 应用程序包,但仍无法符合 64 位兼容性。
Android Studio 项目包含不同模块(应用程序),这些模块具有自己的 build.gradle 文件,但所有应用程序都具有通用的 build.gradle(Module:app) 和 build.gradle 项目级别。 在通用的 build.gradle(Module: app) 中,我添加了以下内容:
ndk {
abiFilters 'armeabi-v7a','arm64-v8a','x86','x86_64'
}
按照谷歌文档的默认设置。我还尝试将相同的代码添加到应用程序的build.gradle(Module:app)中,并构建了应用程序包,以下是库文件的样子
Gradle不会生成x86_64和arm64-v8a文件,这些文件对于使应用程序符合64位标准是必要的。我尝试了不同的组合方式,例如仅将abifilters添加到根build.gradle中、仅将其添加到应用程序的build.gradle中以及在两者上都使用abifilters,但它都无法生成64位支持库。
该应用程序是使用Java构建的,通过添加以下内容,我能够构建一个64位的应用程序包:
ndk {
abiFilters 'arm64-v8a', 'x86_64'
}
然后分析了该包,发现没有lib文件夹,并且Google开发者控制台的警告消失了,但是在这种情况下,我如何构建既支持64位又支持32位的库呢?