Makalele
Makalele

Reputation: 7541

java.lang.UnsatisfiedLinkError and unknown error in ADB

After updating my Huawei Ascend P7 to Android Lolipop (5.1.1) from Android Kitkat (4.4.2) I'm started to experience 2 very problematic issues when I'm launching app:

1) (Android Studio, Eclipse, ADB from terminal)

[2015-10-20 09:34:48 - myapp] ------------------------------
[2015-10-20 09:34:48 - myapp] Android Launch!
[2015-10-20 09:34:48 - myapp] adb is running normally.
[2015-10-20 09:34:48 - myapp] Performing com.example.myapp.MainActivity activity launch
[2015-10-20 09:34:49 - myapp] Automatic Target Mode: using device '7N2SRA153S024947'
[2015-10-20 09:34:49 - myapp] Uploading myapp.apk onto device '7N2SRA153S024947'
[2015-10-20 09:34:51 - myapp] Installing myapp.apk...
[2015-10-20 09:35:12 - myapp] Success!
[2015-10-20 09:35:13 - myapp] Starting activity com.example.myapp.MainActivity on device 7N2SRA153S024947
[2015-10-20 09:35:13 - myapp] ActivityManager: java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String android.os.SystemProperties.native_get(java.lang.String, java.lang.String) (tried Java_android_os_SystemProperties_native_1get and Java_android_os_SystemProperties_native_1get__Ljava_lang_String_2Ljava_lang_String_2)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.SystemProperties.native_get(Native Method)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.SystemProperties.get(SystemProperties.java:64)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.Environment$UserEnvironment.<init>(Environment.java:144)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.Environment.initForCurrentUser(Environment.java:82)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.Environment.<clinit>(Environment.java:76)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.Environment.getLegacyExternalStorageDirectory(Environment.java:421)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.os.Debug.<clinit>(Debug.java:96)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleHello.handleHELO(DdmHandleHello.java:164)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleHello.handleChunk(DdmHandleHello.java:91)
[2015-10-20 09:35:13 - myapp] ActivityManager: at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java:171)
[2015-10-20 09:35:13 - myapp] ActivityManager: java.lang.UnsatisfiedLinkError: android.os.Debug
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleHello.handleFEAT(DdmHandleHello.java:176)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleHello.handleChunk(DdmHandleHello.java:93)
[2015-10-20 09:35:13 - myapp] ActivityManager: at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java:171)
[2015-10-20 09:35:13 - myapp] ActivityManager: java.lang.UnsatisfiedLinkError: android.os.Debug
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleProfiling.handleMPRQ(DdmHandleProfiling.java:187)
[2015-10-20 09:35:13 - myapp] ActivityManager: at android.ddm.DdmHandleProfiling.handleChunk(DdmHandleProfiling.java:88)
[2015-10-20 09:35:13 - myapp] ActivityManager: at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java:171)

2) (Eclipse only)

[2015-10-20 09:38:15 - myapp] Android Launch!
[2015-10-20 09:38:15 - myapp] adb is running normally.
[2015-10-20 09:38:15 - myapp] Performing com.example.myapp.MainActivity activity launch
[2015-10-20 09:38:15 - myapp] Automatic Target Mode: using device '7N2SRA153S024947'
[2015-10-20 09:38:16 - myapp] Uploading myapp.apk onto device '7N2SRA153S024947'
[2015-10-20 09:38:18 - myapp] Installing myapp.apk...
[2015-10-20 09:38:19 - myapp] Installation error: Unknown failure
[2015-10-20 09:38:19 - myapp] Please check logcat output for more details.
[2015-10-20 09:38:19 - myapp] Launch canceled!

I can't find anything in logcat.

I can't find any solid solution only workaround: restart eclipse/android studio, kill-start adb server, reconnect device. If it'll manage to work it only works for a short period of time. Problem persists on 2 different machines with different usb cables. It's definitely some bug in lollipop (everything worked on kitkat), because I've found some topics about that happening on lolipop on asus or htc devices too. I can't find any universal workaround for Huawei however.

I use Mac OS X so solutions for windows won't work for me.

I ofc have programmer mode on, usb debugging on, disabled confirmation on installation from adb. But the option "verify apps via usb" it grayed out and some people said that disabling it can make it working. Adb 1.0.32.

Upvotes: 6

Views: 4032

Answers (2)

Makalele
Makalele

Reputation: 7541

Latest Huawei released firmware (B839) fixed the problem.

Upvotes: 1

Luca S.
Luca S.

Reputation: 1162

This is a bug from your smartphone manufacturer, an update from Huawei (when available) should be the final solution to your problem.

Meanwhile I found this other discussion that present different workarounds that could be further attempts if you didn't try yet.

Using terminal, just reinstall with adb to avoid the Android Studio recompile time:

$terminal: /sdk/platform-tools/adb install -r

And usually it works. If it fails again, just run this command again

If you really want to try it, the process would be:

Close Studio (or try disabling Tools | Android | Enable ADB Integration) Do the following on a shell:

$ adb push /path/to/your/project/app/build/outputs/apk/app-debug.apk /data

$ adb shell pm install /data/app-debug.apk

$ (am start command from comment #4/#5) Restart IDE (or Re-enable ADB Integration).

Upvotes: 4

Related Questions