We are in the process of upgrading our app for the Android 12/S Preview.
Any call made to the ArcGisRuntimeEnvironment crashes the app.
We were able to reproduce the error in the tutorial provided here.
How to reproduce:
1. Set compileSdkVersion and targetSdkVersion to Android 12:
android {
compileSdkVersion "android-S"
defaultConfig {
targetSdkVersion "S"
}
}
2. Run the app
The error varies but the cause stays the same:
Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: library "libc++_shared.so" not found
Anyone else encountered this ? How to proceed?
Solved! Go to Solution.
Hello Rama
It was x86_64bit and somehow I am not able to download the x86 image.
But I found a solution by following this: https://developer.android.com/games/optimize/64-bit
and packaging the library's 64bit version into the APK by adding:
ndk.abiFilters 'x86','x86_64'
to my build.gradle file.
This is ofc just a solution for development and testing purposes, unless the app is actually intended to work on 64bit architecture. It would bloat the apk unnecessarily otherwise.
I will mark this issue as resolved.
Hi,
Can you check the CPU architecture of the emulator with Android S preview. Runtime currently only provides the native libs for arm64-v8a, armeabi-v7a and x86.
Thanks
Rama
Hello Rama
It was x86_64bit and somehow I am not able to download the x86 image.
But I found a solution by following this: https://developer.android.com/games/optimize/64-bit
and packaging the library's 64bit version into the APK by adding:
ndk.abiFilters 'x86','x86_64'
to my build.gradle file.
This is ofc just a solution for development and testing purposes, unless the app is actually intended to work on 64bit architecture. It would bloat the apk unnecessarily otherwise.
I will mark this issue as resolved.