Skip to content

[BUG] Android 5 devices crashing with UnsatisfiedLinkError libcurl.so #112

Description

@bigahega

Describe the bug
Wanted to use the new native library dependencies but apparently Android 5 devices are not happy with this and they are all crashing.

To Reproduce
build.gradle

implementation 'com.android.ndk.thirdparty:openssl:1.1.1g-alpha-1'
implementation 'com.android.ndk.thirdparty:curl:7.69.1-alpha-1'

CMakeLists.txt

find_package(curl REQUIRED CONFIG)
...
target_link_libraries(
        ...
        curl::curl
)

Kt side:

    init {
        try {
            System.loadLibrary("mylib")
        } catch (ignored: UnsatisfiedLinkError) {
            ReLinker.loadLibrary(context, "mylib")
        }
    }

Release build (app bundle)
Android 5 devices: Crash.

Expected behavior
Should not crash like the rest of the Android 6-10 versions?

Logs

dlopen failed: cannot locate symbol "OpenSSL_version_num" referenced by "libcurl.so"
java.lang.Runtime.load (Runtime.java:331)
java.lang.System.load (System.java:981)
com.getkeepsafe.relinker.SystemLibraryLoader.loadPath (SystemLibraryLoader.java:29)
com.getkeepsafe.relinker.ReLinkerInstance.loadLibraryInternal (ReLinkerInstance.java:204)
com.getkeepsafe.relinker.ReLinkerInstance.loadLibrary (ReLinkerInstance.java:136)
com.getkeepsafe.relinker.ReLinker.loadLibrary (ReLinker.java:70)
com.getkeepsafe.relinker.ReLinker.loadLibrary (ReLinker.java:51)
*.<init> (*.java:*)

Environment:
Prefab version:

android.enablePrefab=true
android.prefabVersion=1.1.0

Target OS version: Android 5
Build system: macOS Catalina

Additional context
All Android 5.0 - 5.1 - 5.1.1 versions are crashing. No other crash report received from higher versions.
Some crashing devices:
Huawei Y6 Pro
Samsung J3 (2016)
Samsung Note 3
Samsung Galaxy Grand Prime

Is it stated in somewhere that API 21-22 is not supported in these openssl / lib curl releases or am I missing something here?

Also it would be lovely to be able to use the OpenSSL without libcurl.

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingndkportsNot a Prefab bug, but we don't have a better home for these

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions