📜  在 Android 中过渡到 x64 架构(1)

📅  最后修改于: 2023-12-03 15:07:37.019000             🧑  作者: Mango

在 Android 中过渡到 x64 架构

介绍

x64 架构是 64 位指令集架构,是一种现代计算机中常见的 CPU 架构。在原来的 32 位架构基础上,x64 架构可以提供更高的内存寻址范围和更高的性能。Android 从 5.0 版本开始支持 x64,使用 x64 架构可以提高应用程序的性能和稳定性。

在过渡到 x64 架构之前,确保你的应用程序无法在 x64 设备上运行,可以通过测试来验证。如果应用程序使用了 x86 本地库,则应该考虑在 x64 设备上使用 64 位版本的本地库。因为 ARM 设备不支持 x86 本地库,因此建议在打包时同时打包 32 位和 64 位版本的本地库。这可以确保在所有 Android 设备上运行。

过渡到 x64 架构
步骤 1:更新 Gradle 构建文件

首先,确保 Gradle 构建文件将您的应用程式设置为构建多种 APK:32 位和 64 位。下面是一个例子:

android {
    ...

    defaultConfig {
        ...
        ndk {
            // Specifies the ABI configurations of your native
            // libraries Gradle should build and package with your APK.
            abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
        }
    }

    // Configures multiple APKs based on your build settings.
    splits {
        abi {
            // Enables building multiple APKs per ABI.
            enable true

            // By default, apps should use 64-bit native libraries
            // when available, otherwise 32-bit. This should apply
            // to all ABIs, so "universalApk" should be true.
            universalApk false

            // Adds an APK for each specified ABI that's supported by
            // your app. Other ABIs will be ignored during packaging.
            include 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'
        }
    }
}

此代码将生成针对 armeabi-v7a、arm64-v8a、x86 和 x86_64 四种不同 ABI 的 APK 文件,它们将在 Google Play 中分别列出。

步骤 2:更新本地库

确保您的本地库支持 64 位。如果使用了 x86 本地库,则应提供 64 位版本的本地库。一些库可能不支持 64 位,如果是这种情况,您可以考虑使用其他库或者手动添加 64 位支持。

步骤 3:测试

在过渡到 x64 架构之前,需要进行全面的测试,确保应用程序在 64 位设备上能够正常运行。建议使用真实的 64 位设备进行测试,以获得更好的结果。

结论

在 Android 中过渡到 x64 架构可以提高应用程序的性能和稳定性。您应该确保您的应用程序在 x64 设备上正常运行,并考虑打包多种 ABI 的 APK 文件,以确保在所有设备上运行。