Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

This library causes other NDK using libraries to crash #163

Closed
ZinoKader opened this issue Jul 29, 2016 · 2 comments
Closed

This library causes other NDK using libraries to crash #163

ZinoKader opened this issue Jul 29, 2016 · 2 comments

Comments

@ZinoKader
Copy link

ZinoKader commented Jul 29, 2016

Which versions of uCrop, and which Android API versions are affected by this issue? Did this work in previous versions of uCrop?

It's confirmed working on version 1.5.0, but the latest version 2.1.1 is crashing. I'm currently trying to figure out at which release it starts crashing at.

Do you want to request a feature or report a bug?
bug

What is the current behavior?
I'm currently experiencing the bug with the Spotify Android SDK. It uses the NDK as well.
The app crashes when creating a Player object with the following stack trace:
"couldn't find "libgnustl_shared.so""

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.myapp.android-2/base.apk"],nativeLibraryDirectories=[/data/app/com.myapp.android-2/lib/arm64, /data/app/com.myapp.android-2/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]] couldn't find "libgnustl_shared.so" at java.lang.Runtime.loadLibrary(Runtime.java:367) at java.lang.System.loadLibrary(System.java:1076) at com.spotify.sdk.android.player.NativeSdkPlayer.nativeInit(NativeSdkPlayer.java:44) at com.spotify.sdk.android.player.NativeSdkPlayer.<clinit>(NativeSdkPlayer.java:34) at com.spotify.sdk.android.player.Player.<init>(Player.java:310) at com.spotify.sdk.android.player.Player.create(Player.java:356) at com.spotify.sdk.android.player.Player.access$000(Player.java:86) at com.spotify.sdk.android.player.Player$Builder.build(Player.java:282) at com.spotify.sdk.android.player.Spotify.getPlayer(Spotify.java:110) at com.spotify.sdk.android.player.Spotify.getPlayer(Spotify.java:76) at com.wallofmusic.android.players.SpotifyPlayer.createPlayer(SpotifyPlayer.java:102)

@vxhviet
Copy link

vxhviet commented Aug 3, 2016

Please take a look at this

https://corbt.com/posts/2015/09/18/mixing-32-and-64bit-dependencies-in-android.html

TL, DR: Android isn’t able to load 32- and 64-bit native libraries concurrently. In my case, I have to drop support for 64 bit device.

Edit: Just to be clear, drop support for 64 bit device means dropping the 64 bit binary built for 64 bit device. 64 bit device can still use 32 bit binary just fine.

@ZinoKader
Copy link
Author

I see, thanks for the explanation. I'll have to weigh my options.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants