我在Eclipse中编写了一个Android应用程序,并在我的手机上使用run命令。
它在我的手机上运行成功。
但我使用[Android工具 - >导出已签名的应用程序包...]以导出我的应用程序。
然后使用[adb install]在我的手机上安装apk并运行。
我收到了错误消息:
07-22 11:20:43.537: E/AndroidRuntime(20216): Caused by: java.lang.ClassNotFoundException: com.mytest.MyActivity in loader dalvik.system.PathClassLoader[/data/app/com.mytest-1.apk]
在[Java Build Path - >中订单和出口],我已被选中。
在AndroidManifest.xml中,application属性没有android:name。
我不知道如何解决这个问题。
我成功使用Eclipse在我的手机上运行,为什么在导出应用程序时出错?
请帮助我,谢谢!!
答案 0 :(得分:5)
我有同样的问题,经过2个小时的研究,我设法通过删除“bin”和“gen”文件夹并重建项目来解决这个问题。
答案 1 :(得分:4)
我所研究的事情似乎有多种原因。你有一个lib文件夹吗?如果是这样,将其改为“libs”。
你有启用proguard吗?如果是这样可能会导致问题。 另外,请尝试在构建路径,订单和导出中取消选中“Android#。#。#”和“Android依赖项”。
查看此线程,其中包含许多其他可能的解决方案,其中很多都涉及在清单文件中设置正确的ActivityName。 java.lang.ClassNotFoundException on working app
如果这些解决方案仍然无法解决问题,请尝试使用这些线程。
Android: Unable to instantiate activity / ClassNotFoundException
答案 2 :(得分:0)
我必须做的只是重新进行构建/导出过程而不修改任何代码。它对我有用,我做的是将它输出两次。 在我第一次导出时,构建APK的文件大小较小,第二次导出(没有对代码/配置进行任何修改)会产生稍大的文件大小(大约200KB差异)。
构建中的这个错误非常昂贵,会让你在经理面前杀死,并且应该由Android / Eclipse团队确定。有点糟透了