Android Studio 2.3:自动生成的调试APK不再在物理设备上运行

时间:2017-05-02 11:21:27

标签: android apk android-studio-2.3

我曾经在API 21 AVD中测试我的Android应用程序(min API 21,目标25)。点击Android Studio中的“运行应用”按钮后,在{project} / app / build / outputs / apk /中构建了调试APK。然后我将该APK复制到我的物理API 25设备进行进一步测试。

自从在Gentoo Linux上将Android Studio从2.2.3.0.145.3537739升级到2.3.0.8.162.3764568后,这些自动生成的APK不再在物理设备上运行。应用程序在启动时立即崩溃,日志显示由“java.lang.ClassNotFoundException:未找到类{my main activity class}”引起的“java.lang.RuntimeException:无法实例化活动”。

当我通过点击“Build> Build APK”手动构建调试APK时,生成的APK与自动生成的APK的文件大小不同,而且它在物理设备上运行时没有任何投诉。

所以,实际上有两个问题:
1.为什么手动生成的调试APK与自动生成的调试APK不同? 2.自Android Studio 2.3以来,导致自动生成的设备在我的物理设备上出现故障的原因是什么?它之前适用于所有Studio版本。

希望获得一些见解,即使存在USB调试并且将调试APK复制到设备的过程实际上也毫无意义。 : - )

1 个答案:

答案 0 :(得分:3)

作为对问题的评论的回顾,如果启用了“即时运行”,则生成的调试apk将包含特定于设备API的代码,从而使其无法在未构建的其他API上使用。关闭即时运行可以解决这个问题。