Skip to content

Many Crashes on tv and phones: UnsatisfiedLinkError. #441

@nikolaychukmax

Description

@nikolaychukmax

Description

We are redesigning big app of ours using rive animations.
Right now we are having rollout of 3% and already heaving huge amount of crashes.

Crash: Fatal Exception: java.lang.UnsatisfiedLinkError
No implementation found for long app.rive.runtime.kotlin.core.FileAssetLoader.constructor() (tried Java_app_rive_runtime_kotlin_core_FileAssetLoader_constructor and Java_app_rive_runtime_kotlin_core_FileAssetLoader_constructor__).
Note: we are using fallback:

private fun initRive() {
        try {
            Rive.init(this)
        } catch (ex: UnsatisfiedLinkError) {
            ReLinker.loadLibrary(this, "rive-android", object : ReLinker.LoadListener {
                override fun success() {
                    Rive.initializeCppEnvironment()
                }

                override fun failure(t: Throwable?) {
                    addLog("Failed to init RIVE")
                }
            })
        }
    }

This was supposed fix for this crash:
Fatal Exception: java.lang.UnsatisfiedLinkError
dlopen failed: unknown reloc type 17 @ 0x82cb4014 (11274)
on Rive.init(context)

Image

Versions, Device, and Other Information

  • Rive Android Runtime Version: version tested is the latest for now 11.2.1
  • Rive API: compose
  • Device:
Image and more - App Minimum SDK Level: 24 - App Target SDK Level: 36 - App NDK Level: not specified. - Frequency: too often for 3% rollout

App has moduels with native libraries: OpenVpn, WireGuard, Xray, Ikev.

Reproduction Steps

This is early crash on initialisation, so unknown. And before loading any .riv file.

Expected Behavior

Working App

Screenshots

Image

Additional context

Please ask any questions, so this will resolve faster

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions