我有一个在本地部署时工作正常的应用程序。我已经在eclipse中签了它,这是我第一次这样做了。我做了另一个版本,并且在本地工作,但在我签名后,尝试在手机上打开它会立即爆炸:
java.lang.RuntimeException:无法实例化活动ComponentInfo {com.myapp / com.myapp.MyAoo}:java.lang.ClassNotFoundException:com.myapp.MyAoo in loader dalvik.system.PathClassLoader [/ data / app / com.myapp-1.apk
我尝试过卸载并重新安装。一样。本地部署,未签名的应用程序。签署app炸弹。有什么想法吗?
答案 0 :(得分:4)
您使用的是proguard混淆吗?它只会用于签名的罐子,并将删除它认为“未使用”的类。
尝试将其关闭并重新签名,然后重试。
要禁用,请确保文件:/default.properties不包含proguard.config属性。
请参阅http://developer.android.com/guide/developing/tools/proguard.html了解更多
答案 1 :(得分:1)
事实证明这是一些奇怪的设置。我还没有真正“弄明白”。我使用eclipse导出已签名的包,但我实际上是用intellij开发的。我从想法出口,一切都很好。
答案 2 :(得分:1)
我遇到了完全相同的问题而且让我感到困惑,因为我以前曾多次签名并导出apk而没有任何问题。在禁用ProGuard以确保它不是原因之后,我在Eclipse中清理了项目:
从顶部菜单 - 单击“项目”,在出现的下拉菜单中单击“清除”,选择要清理的项目,然后单击“确定”。
执行此操作后,我能够运行已签名和导出的apk,而不会在启动时崩溃。
答案 3 :(得分:0)
我有同样的问题,我解决了如下:
对我而言,它的工作正常我希望能解决你的问题。