升级到Lollipop后无法测试应用程序

时间:2015-02-07 19:43:39

标签: android android-studio android-5.0-lollipop

我正在使用Android Studio开发我的应用。

自从我将HTC One M8升级为Lollipop后,我无法使用它来测试我的应用程序"运行app"在Android Studio中。 我收到此错误,手机上没有任何反应:

Launching application: com.project.GalleryActivity.
DEVICE SHELL COMMAND: am start -n "com.project.GalleryActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
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)
at com.htc.customization.HtcCustomizationManager.<init>(HtcCustomizationManager.java)
at com.htc.customization.HtcCustomizationManager.<clinit>(HtcCustomizationManager.java)
at android.os.Environment$UserEnvironment.getCustomizationReader(Environment.java)
at android.os.Environment$UserEnvironment.isDynamicSwitchSupported(Environment.java)
at android.os.Environment$UserEnvironment.<init>(Environment.java)
at android.os.Environment.initForCurrentUser(Environment.java)
at android.os.Environment.<clinit>(Environment.java)
at android.os.Environment.getLegacyExternalStorageDirectory(Environment.java)
at android.os.Debug.<clinit>(Debug.java)
at android.ddm.DdmHandleHello.handleHELO(DdmHandleHello.java)
at android.ddm.DdmHandleHello.handleChunk(DdmHandleHello.java)
at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java)
java.lang.UnsatisfiedLinkError: android.os.Debug
at android.ddm.DdmHandleHello.handleFEAT(DdmHandleHello.java)
at android.ddm.DdmHandleHello.handleChunk(DdmHandleHello.java)
at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java)
java.lang.UnsatisfiedLinkError: android.os.Debug
at android.ddm.DdmHandleProfiling.handleMPRQ(DdmHandleProfiling.java)
at android.ddm.DdmHandleProfiling.handleChunk(DdmHandleProfiling.java)
at org.apache.harmony.dalvik.ddmc.DdmServer.dispatch(DdmServer.java)
Aborted

我的项目设置如下:

Project's settings

此技术过去在升级之前完美运行,从那时起我就没有改变任何东西。

11 个答案:

答案 0 :(得分:41)

我在使用Android 5.0的Asus Zenfone 5(ASUS_T00J)上遇到了同样的错误。对我来说,解决方案是关闭&#34;通过USB验证应用程序&#34;在&#34;开发者选项&#34;。 启动器可能不是问题,因为我尝试使用Google Now Launcher也没有成功。它在我的带有Android 5.1的Nexus 5上运行良好

答案 1 :(得分:34)

解决方法:在Android Studio中禁用ADB集成。

工具&gt; Android&gt;取消选中启用ADB集成

答案 2 :(得分:9)

我不确定其根本原因是什么,但我发现在尝试在M8上运行我的代码之前,我可以通过关闭手机上所有正在运行的应用程序来成功避免此问题。

答案 3 :(得分:5)

您是否在设备上使用任何第三方启动器?使用Aviate启动器时我遇到同样的问题。我在Personalize-&gt;主屏幕设置中切换回BlinkFeed,我的部署到设备现在稳定。 Classpath com.htc.customization.HtcCustomizationManager比我与启动器相关的问题更让我感兴趣。

答案 4 :(得分:2)

我在ASUS ME176C(Lollipop 5.0)上遇到了同样的问题,
 但我通过将“选择调试应用”设置为“否”解决了这个问题。然后像往常一样推送apk 。之后,您可以重新选择“调试应用”到目标应用。

答案 5 :(得分:1)

我发现了一个&#34;解决方法&#34;解决这个问题

找到HTC Blink Home Launcher并卸载更新

(注意:卸载启动器更新将删除放置在启动器上的所有图标和小部件)

这对我有用,现在可以在不删除多任务中的应用程序的情况下进行调试。 这应该是HTC引起的错误? (我使用的是HTC Butterfly 2&amp; Android 5.0.2)

答案 6 :(得分:1)

我没有代表进行评论,但我的情况与@ user47625相同,但是我的&#34;通过USB验证应用程序&#34;已经关闭了。我试图通过一些推理来扩大这个答案。

起初,我试图改变发射器,但我得到了一些运气,但是被击中和错过,而不是一个正确的解决方案。重新启动手机可以获得几个小时的平静工作。

然后我发现Google上有人说:

  

如果是那个bug:DDMS客户端连接&#34; Hello&#34;当PM进程首次启动并注册自身时,但在它完全初始化所有本机代码之前。这是Android的股票竞赛,也在那里发生

因此,如果这场比赛发生,它不会每次都发生,但我时不时地,我怀疑有关Android上项目互动的事情。我不知道它的CPU,RAM或App是否相关,但在我的Zenfone 2上关闭所有后台应用程序(1)并释放内存(2)可以解决问题,让我能够调试应用程序正常。

我使用Clean Master的原因是使用Zenfone 2,但我怀疑每个内存管理员都能做到这一点。试一试

答案 7 :(得分:1)

在我的HTC M8上,我通过禁用“设置 - &gt;开发人员选项 - &gt;使用NuPlayer(实验性)”解决了该问题

我注意到的是,当我尝试运行我创建的应用程序(几年前)时,我必须禁用NuPlayer。但是,对于新的应用程序,我必须选中该选项。

希望这会有所帮助......

答案 8 :(得分:1)

On an Asus ZenPad, 5.0.2 I was able to solve the issue by going into Asus' Auto-start Manager (Settings -> Power management -> Auto-start Manager) and allowing my app to auto-start.

答案 9 :(得分:0)

我使用下面的解决方法获得了合理的成功。

在与您的应用进行每次调试会话后,请转到Android Studio终端:

> adb shell am force-stop com.your.app.package

我仍然偶尔得到java.lang.UnsatisfiedLinkError,但只是按照上面的命令而不是在构建/推送apk /安装进程和尝试调试会话之间。

对我来说,这样可以节省大量的浪费时间,只是为了得到错误。如果上面的命令不起作用,只需up-arrow并重新运行该命令,直到它正常工作而没有错误。

答案 10 :(得分:-1)

这个解决方案对我有用,你可以尝试一下。

添加系统环境变量的adb路径(我使用的是Windows 8)
例如:我的路径是&#34; C:\ Users \ xxx \ AppData \ Local \ Android \ sdk \ platform-tools&#34;
别忘了重新启动系统才能发挥作用!

关于如何在Windows中设置路径和环境变量&gt;&gt; here