首页 > 解决方案 > 如何使用 React Native 构建 64 位和 32 位 APK

问题描述

我已将我的应用程序升级到 react-native 0.59.x 以获得 64 位兼容性,以适应来自谷歌的即将到来的截止:

使用本机代码的应用程序必须提供 64 位版本(除了 32 位版本)

-- https://android-developers.googleblog.com/2019/01/get-your-apps-ready-for-64-bit.html

请注意,我们必须提供两个版本。我希望通过组装两个单独的 APK 来做到这一点。这是如何实现的?

目前,我运行./gradlew assembleRelease并在我的目录中获取一个 APKapp/build/outputs/apk/release

更新:如果答案是 React Native 旨在输出包含所有 32 位和 64 位版本的单个 APK,那么这肯定也回答了我的问题。我的期望肯定会偏离。

标签: androidreact-native64-bit

解决方案


来自官方文档

如果您的应用仅使用以 Java 编程语言或 Kotlin 编写的代码,包括任何库或 SDK,则您的应用已经准备好用于 64 位设备。如果您的应用程序使用任何本机代码,或者您不确定它是否使用,您将需要评估您的应用程序并采取行动。

对于 ARM 架构,32 位库位于 armeabi-v7a 中。64 位等效版本是 arm64-v8a。

对于 x86 架构,请查找用于 32 位的 x86 和用于 64 位的 x86_64。

通用 APK 中涵盖了这一点。这就是你正在生产的,所以不用担心!

不过,有疑问然后将您的 apk 放在 Android Studio 的 apk 分析器上并检查它是否具有该库。


推荐阅读