arcgis-android-100.11.0, Android 12/S Runtime Error

1443
2
Jump to solution
05-07-2021 01:58 AM
DVBernMRRA
New Contributor

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?


Edit 1, 11.05.21:
It seems this is an emulator only issue, we got it 
working on pixel 3a with Android 12 Developer Preview 3.

Emulator still breaks with no avail.
 
 
Tags (5)
0 Kudos
1 Solution

Accepted Solutions
DVBernMRRA
New Contributor

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.

View solution in original post

0 Kudos
2 Replies
RamaChintapalli
Esri Contributor

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

0 Kudos
DVBernMRRA
New Contributor

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.

0 Kudos