Проблема 64-битной версии в Android-приложении реакции от Google Play Store
Согласно https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html:
В августе 2019 года Play Store потребует, чтобы новые приложения и обновления приложений с собственными библиотеками предоставляли 64-разрядные версии в дополнение к их 32-разрядным версиям.
У меня есть приложение React Native (которое включает в себя нативный код). У меня вопрос: как я могу узнать, что сторонняя библиотека, которую я использую, или даже мой собственный код не поддерживает 64-битную версию? И как я могу это исправить?
Обновление
Я добавил x86_64
в свой build.gradle
и теперь вижу папку x86_64
в apk, но я думаю, что некоторые файлы отсутствуют.
Вот как выглядит моя папка x86
:
![enter image description here]()
А вот как выглядит моя папка x86_64
:
![enter image description here]()
Ответы
Ответ 1
React Native будет поддерживать 64-разрядную версию Android начиная с версии 0.59
https://github.com/facebook/react-native/issues/2814#issuecomment-457688789
https://github.com/facebook/react-native/commit/f3e5cce4745c0ad9a5c697be772757a03e15edc5
Ответ 2
Весь нативный код для приложения хранится в каталоге libs/
в корне apk. например, для скомпилированного кода ARM или x86 вы можете найти его в libs/architect_type/lib_name.so.
APK - это, по сути, просто zip файл, поэтому вы можете извлечь его любым zip-инструментом.
Список архитектур (ABI) находится здесь. Если у вас нет каталогов для arm64-v8a или x86, но у вас нет x86_64, то вам не хватает 64-битного собственного кода.
Ответ 3
https://github.com/facebook/react-native/issues/2814
Facebook, похоже, тянет ногу на поддержку 64-битных сборок.
Вы можете проверить промежуточные продукты в папке сборки, чтобы узнать, что вы используете.
https://developer.android.com/ndk/guides/abis.html
Android принимает самый низкий общий знаменатель сборки abi. Это станет проблемой, если Facebook не обратится к ней в ближайшее время.
Ответ 4
Новая версия React native была выпущена 12 марта. В этой новой версии реагирует нативная поддержка 64-битных систем. Подробнее об этом вы можете прочитать по ссылке ниже. http://facebook.github.io/react-native/blog/2019/03/12/releasing-react-native-059
Ответ 5
Реактивные новые версии поддерживают 64 бит автоматически.
просто обновите собственную версию реагирования до версии 0.59.0 или более поздней и перестройте приложение, просто запустите:
react-native upgrade 0.59.1