You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We are encountering a crash in our Android app for some phones when using the Rive Android library. The app crashes on startup with the following error:
androidx.startup.StartupException: com.getkeepsafe.relinker.MissingLibraryException: Could not find 'librive-android.so'. Looked for: [x86, armeabi-v7a, armeabi], but only found: [arm64-v8a].
This indicates that the librive-android.so native library is missing for certain architectures, specifically x86, armeabi-v7a, and armeabi. The app only includes the library for the arm64-v8a architecture.
Provide a Repro
The crash occurs when running the app on devices with architectures other than arm64-v8a, such as armeabi-v7a or x86.
Steps to reproduce the issue:
Integrate the Rive Android library into your Android app.
Build and run the app on device with an armeabi-v7a or x86 architecture.
Observe that the app crashes on startup with the missing library error.
Source .riv/.rev file
N/A – The issue occurs during app initialization, before any .riv files are loaded.
Expected behavior
The app should start without crashing, and the librive-android.so library should be correctly loaded for all supported architectures (armeabi-v7a, arm64-v8a, x86, etc.).
Screenshots
N/A
Device & Versions (please complete the following information)
Device: Various devices with devices with no arm64-v8a architecture from manufactures like ZTE, Oppo, Older Samsung devices, etc.
SDK Level: Android SDK API Level 35
Additional context
Here are the full stack traces from Firebase Crashlytics:
Fatal Exception: java.lang.RuntimeException: Unable to get provider androidx.startup.InitializationProvider: androidx.startup.StartupException: com.getkeepsafe.relinker.MissingLibraryException: Could not find 'librive-android.so'. Looked for: [x86, armeabi-v7a, armeabi], but only found: [arm64-v8a].
at android.app.ActivityThread.installProvider(ActivityThread.java:5927)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5516)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5455)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1550)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6190)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:892)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
Caused by androidx.startup.StartupException: com.getkeepsafe.relinker.MissingLibraryException: Could not find 'librive-android.so'. Looked for: [x86, armeabi-v7a, armeabi], but only found: [arm64-v8a].
at androidx.startup.AppInitializer.doInitialize(AppInitializer.java:187)
at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:238)
at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:206)
at androidx.startup.InitializationProvider.onCreate(InitializationProvider.java:45)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1751)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1726)
at android.app.ActivityThread.installProvider(ActivityThread.java:5924)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5516)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5455)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1550)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6190)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:892)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
Caused by com.getkeepsafe.relinker.MissingLibraryException: Could not find 'librive-android.so'. Looked for: [x86, armeabi-v7a, armeabi], but only found: [arm64-v8a].
at com.getkeepsafe.relinker.ApkLibraryInstaller.installLibrary(ApkLibraryInstaller.java:175)
at com.getkeepsafe.relinker.ReLinkerInstance.loadLibraryInternal(ReLinkerInstance.java:180)
at com.getkeepsafe.relinker.ReLinkerInstance.loadLibrary(ReLinkerInstance.java:136)
at com.getkeepsafe.relinker.ReLinker.loadLibrary(ReLinker.java:70)
at com.getkeepsafe.relinker.ReLinker.loadLibrary(ReLinker.java:51)
at app.rive.runtime.kotlin.core.Rive.init(Rive.kt:42)
at app.rive.runtime.kotlin.core.Rive.init$default(Rive.kt:37)
at app.rive.runtime.kotlin.RiveInitializer.create(RiveInitializer.kt:34)
at app.rive.runtime.kotlin.RiveInitializer.create(RiveInitializer.kt:32)
at androidx.startup.AppInitializer.doInitialize(AppInitializer.java:180)
at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:238)
at androidx.startup.AppInitializer.discoverAndInitialize(AppInitializer.java:206)
at androidx.startup.InitializationProvider.onCreate(InitializationProvider.java:45)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1751)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1726)
at android.app.ActivityThread.installProvider(ActivityThread.java:5924)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5516)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5455)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1550)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6190)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:892)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
The text was updated successfully, but these errors were encountered:
Crash is not limited to Google Phones.
The main problem is that the crash occurs on the emulators used by Google to review apps. As a consequence our app keeps being rejected because of this issue.
I've had the same issue since September 2023 (my comments here).
This is not just limited to Emulators and happens on all Android versions. I'm currently using this library app.rive:rive-android:8.3.0. This is currently the most occurring crash on my Firebase Crashlytics.
Description
We are encountering a crash in our Android app for some phones when using the Rive Android library. The app crashes on startup with the following error:
androidx.startup.StartupException: com.getkeepsafe.relinker.MissingLibraryException: Could not find 'librive-android.so'. Looked for: [x86, armeabi-v7a, armeabi], but only found: [arm64-v8a].
This indicates that the librive-android.so native library is missing for certain architectures, specifically x86, armeabi-v7a, and armeabi. The app only includes the library for the arm64-v8a architecture.
Provide a Repro
The crash occurs when running the app on devices with architectures other than arm64-v8a, such as armeabi-v7a or x86.
Steps to reproduce the issue:
Source
.riv
/.rev
fileN/A – The issue occurs during app initialization, before any .riv files are loaded.
Expected behavior
The app should start without crashing, and the librive-android.so library should be correctly loaded for all supported architectures (armeabi-v7a, arm64-v8a, x86, etc.).
Screenshots
N/A
Device & Versions (please complete the following information)
arm64-v8a
architecture from manufactures like ZTE, Oppo, Older Samsung devices, etc.Additional context
Here are the full stack traces from Firebase Crashlytics:
The text was updated successfully, but these errors were encountered: