根据Google Play团队发送的官方电子邮件,所需的操作是:
如果您尚未开始工作以满足64位要求,我们鼓励您尽快开始。许多应用程序完全使用非本地代码(例如Java编程语言或Kotlin)编写,并且不需要更改代码。
请注意,我们不会更改关于32位支持的政策。 Google Play将继续向32位设备提供具有32位本机代码的应用程序。该要求意味着这些应用程序也需要具有64位版本。
为了帮助您过渡,我们已准备好
文档,说明如何检查您的应用程序是否已支持64位以及如何符合64位标准。
我们还提供了一个高级时间表。
因此,链接的文档解释了:
如果你的应用程序仅使用Java编程语言或Kotlin编写的代码,包括任何库或SDK,则你的应用程序已经准备好支持64位设备。如果你的应用程序使用任何本地代码,或者你不确定是否使用了本地代码,那么你需要评估你的应用程序并采取行动。
检查64位库最简单的方法是检查APK文件的结构。构建时,APK将打包与应用程序所需的任何本地库。本地库存储在基于ABI的各个文件夹中。不需要支持每个64位架构,但对于每个本机32位架构,你必须包含相应的64位架构。
对于ARM架构,32位库位于armeabi-v7a。相应的64位库是arm64-v8a。
对于x86架构,请查找x86以获取32位和x86_64以获取64位。
首先要做的是确保这两个文件夹中都有本地库。要构建64位库,你基本上需要按照以下说明操作:
Most Android Studio projects use Gradle as the underlying build
system, so this section applies to both cases. Enabling builds for
your native code is as simple as adding the arm64-v8a and/or x86_64,
depending on the architecture(s) you wish to support, to the
ndk.abiFilters setting in your app's 'build.gradle' file:
apply plugin: 'com.android.app'
android {
compileSdkVersion 27
defaultConfig {
appId "com.google.example.64bit"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
ndk.abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
最后,一个快速提示:
您的应用程序的64位版本应该提供与32位版本相同的质量和功能集。
顺便说一下,这个官方视频稍微谈了一下这个问题。
.so
文件名来识别它。也许很明显,或者通过搜索可能找到一个匹配项。否则,您可以将dependencies
复制到一个废弃项目中,并确认.so
文件出现在该废弃项目的应用程序中,然后逐个注释掉依赖项,直到找到哪个依赖项引入了.so
。 - CommonsWare