【问题标题】:Unknown failure (UnsatisfiedLinkError) installing apk via Android Studio 2.3.3 after upgrade from 2.3从 2.3 升级后通过 Android Studio 2.3.3 安装 apk 出现未知故障 (UnsatisfiedLinkError)
【发布时间】:2017-07-23 22:16:18
【问题描述】:

两天前我正在运行 Android Studio 2.3,我的项目的一切都运行良好。安装很好,没有任何警告,更不用说错误了。

当我从 2.3 升级到 2.3.3 时,Android Studio 也推荐了 gradle、平台工具和构建工具升级。我做了所有这些,现在尝试在同一设备上部署我的应用程序时,它失败了。

** 观察 ** 我的实验室里有 3 台机器。其中两个正在运行 2.2.2,并且在设备上安装应用程序仍然没有问题。

有问题的机器在 Android Studio 2.3 版本上是可以的。 2.3.3 加上 gradle 和插件更新似乎是问题的/部分。

在2.2.2的机器上,apk是单独安装的(WORKING)

$ adb shell pm install -r "/data/local/tmp/com.domain.sub" pkg: /data/local/tmp/com.domain.sub

在 2.3.3 机器上(不工作)

$ adb install-multiple -r "...dependencies.apk, ...slice_0.apk, ...slice_1.apk, ... slice_9.apk, ...app-debug.apk

尝试安装时抛出的异常(2.3.3):

Error while uploading slice_2.apk : java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String android.os.SystemProperties.native_get(java.lang.String) (tried Java_android_os_SystemProperties_native_1get and Java_android_os_SystemProperties_native_1get__Ljava_lang_String_2)
                at android.os.SystemProperties.native_get(Native Method)
                at android.os.SystemProperties.get(SystemProperties.java:52)
                at android.os.Environment.getCanonicalPathOrNull(Environment.java:834)
                at android.os.Environment.<clinit>(Environment.java:83)
                at android.os.Environment.getLegacyExternalStorageDirectory(Environment.java:421)
                at android.os.Debug.<clinit>(Debug.java:101)
                at android.ddm.DdmHandleHello.handleHELO(DdmHandleHello.java:164)
                at android.ddm.DdmHandleHello.handleChunk(DdmHandleHello.java:91)
                at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java:171)
                java.lang.UnsatisfiedLinkError: android.os.Debug
                at android.ddm.DdmHandleHello.handleFEAT(DdmHandleHello.java:176)
                at android.ddm.... (show balloon)

【问题讨论】:

    标签: java android android-studio exception


    【解决方案1】:

    对于 Android Studio 3.5+,不再有“即时运行”选项,您应该禁用“应用更改”选项:

    【讨论】:

      【解决方案2】:

      在尝试了很多不同的建议后,对我来说可行的解决方案是在 Android Studio 中禁用“即时运行”。

      • 在 Android Studio 中打开设置。
      • 导航至构建、执行、部署 > 即时运行。
      • 取消选中 Restart activity on code changes 旁边的复选框。

      然后我清理并重建了应用程序并成功安装了apk。

      【讨论】:

      • 如此简单...谢谢! ;-)
      • 即时运行在 AS 3.5 中不再存在,但问题仍然存在。
      猜你喜欢
      • 1970-01-01
      • 2019-06-08
      • 2023-04-09
      • 2017-06-20
      • 1970-01-01
      • 1970-01-01
      • 2017-08-15
      • 2018-09-10
      • 1970-01-01
      相关资源
      最近更新 更多