Примечание: это появляется снова, если я использую proguard в моем релизе buildTypes
Просто я пишу, почему Realm сказал:
Couldn ' t загрузить «librealm-jni.so» Если ваше приложение использует другие собственные библиотеки, которые не поставляются с поддержкой 64-разрядных архитектур, Android не сможет загрузить файл Realreal librealm-jni.so на устройства ARM64. Это связано с тем, что Android не может одновременно загружать 32-битные и 64-битные собственные библиотеки. Лучшее решение - все библиотеки предоставляют один и тот же набор поддерживаемых ABI, но иногда это может оказаться невозможным, если вы используете стороннюю библиотеку. См. VL C и конфликты библиотеки Realm.
Обходной путь для решения этой проблемы - исключить библиотеку Realm ARM64 из файла APK, добавив следующий код в build.gradle приложения. Вы можете обратиться к разделу «Смешивание 32- и 64-битных зависимостей» в Android для получения дополнительной информации.
android {
//...
packagingOptions {
exclude "lib/arm64-v8a/librealm-jni.so"
}
//...
}
Также есть ошибка с бета-версиями Android Gradle Plugin 1.4.0, которая приводит к неправильному использованию упаковать .so файлы, включенные в jar-файлы (см. Realm Java выпуск 1421). Чтобы решить эту проблему, вы можете вернуться к Android Gradle Plugin 1.3.0 или использовать Android Gradle Plugin 1.5.0 +.
Нам известен ряд сторонних библиотек, сред и приложений управления. которые еще не поддерживают 64-битную версию:
Parallel Space - но вы можете посоветовать своим пользователям установить 64-битную версию. RenderScript - NDK r14, вероятно, будет поддерживать 64 бит. Unity3d.