0

当我通过 eclipse 运行它时,我的应用程序运行良好,但是当我导出它然后通过 adb install 安装它并运行时,它会因以下堆栈跟踪而崩溃。

基本上,它表示未找到主启动器活动,尽管它已声明,并设置为具有启动器类别的主活动:

堆栈跟踪:

01-24 11:50:59.029: E/AndroidRuntime(7768): Uncaught handler: thread main exiting due to uncaught exception
01-24 11:50:59.299: E/AndroidRuntime(7768): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.nitinbansal85.android.carplexindia/com.nitinbansal85.android.carplexindia.ActivityDashboard}: java.lang.ClassNotFoundException: com.nitinbansal85.android.carplexindia.ActivityDashboard in loader dalvik.system.PathClassLoader@32518de0
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2474)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2569)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread.access$2200(ActivityThread.java:125)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1914)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.os.Handler.dispatchMessage(Handler.java:99)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.os.Looper.loop(Looper.java:123)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread.main(ActivityThread.java:4420)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at java.lang.reflect.Method.invokeNative(Native Method)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at java.lang.reflect.Method.invoke(Method.java:521)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:924)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:682)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at dalvik.system.NativeStart.main(Native Method)
01-24 11:50:59.299: E/AndroidRuntime(7768): Caused by: java.lang.ClassNotFoundException: com.nitinbansal85.android.carplexindia.ActivityDashboard in loader dalvik.system.PathClassLoader@32518de0
01-24 11:50:59.299: E/AndroidRuntime(7768):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.Instrumentation.newActivity(Instrumentation.java:1021)
01-24 11:50:59.299: E/AndroidRuntime(7768):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2466)
01-24 11:50:59.299: E/AndroidRuntime(7768):     ... 11 more
01-24 11:51:01.369: E/msm7k.gralloc(1281): [unregister] handle 0x43bf20 still locked (state=40000001)

我也在使用facebook sdk, 和airpush,startApp sdk's并已将它们包含在导入/导出的顺序中

有什么建议吗?

提前 谢谢编辑

忘记提及我已经重命名了我的项目和包含它的文件夹。

4

2 回答 2

0

对于 android 应用程序,我对外部 jar 文件有同样的问题。在我的情况下,解决方案是将 jar 从“lib”文件夹移动到 android 默认的“libs”文件夹。

当 jar 在 lib 文件夹中(也被添加到构建路径中)时,虽然 Eclipse 中没有构建问题,但应用程序在运行时给出了 ClassNotFoundException。将 jar 移动到“libs”文件夹后,该 jar 开始出现在“Android Dependencies”下,并且应用程序开始正常工作。

这些是关于同一主题的其他一些讨论。

1)http://stackoverflow.com/questions/3642928/adding-a-library-jar-to-an-eclipse-    android-project

2)http://stackoverflow.com/questions/7185488/android-what-is-the-folder-name-of-the-jar-files-lib-or-libs

3)http://stackoverflow.com/questions/2611105/how-to-specify-lib-folder-for-jars-when-using-android-generated-ant-build-file

这可能会有所帮助...!!!!!!

于 2013-01-24T06:37:36.547 回答
0

正如 Stacktrace 告诉 android 首先启动 NewActivity -> LoadClass -> FindClass -> ClassNotFoundException,可能是:

  • 清单中的错误包声明(com.nitinbansal85.android.carplexindia.ActivityDashboard)

  • Android Debug Bridge(ADB) apk 创建问题。

  • 无法从库中加载其他 jar

    您也可以尝试从 eclipse 编译项目并直接从项目的 bin 目录中使用 .apk 并检查差异。

于 2013-01-24T06:50:38.300 回答