繁体   English   中英

Activity上的java.lang.NoClassDefFoundError

[英]java.lang.NoClassDefFoundError on an Activity

我从生产应用程序收到崩溃报告,该报告告诉我我的一项活动存在NoClassDefFound异常。

这行抛出异常:

final Intent i = new Intent(MainActivity.this, SomeActivity.class);

它声称未找到“ SomeActivity”类。

在数千个用户中,只有一个实例被报告。 (在Samsung Note Mini上)这意味着它不应该是编译错误或包含lib的错误。

有什么线索可以继续进行调查吗?

p / s:活动肯定在清单中定义。 否则,它甚至无法在其他用户的手机上运行。

堆:

java.lang.NoClassDefFoundError: com.sensored.SomeActivity
at com.sensored.MainActivity$2.onItemClicked(MainActivity.java:920)
at com.sensored.adapter.SomeListAdapter$2.onClick(SomeListAdapter.java:115)
at android.view.View.performClick(View.java:2485)
at android.view.View$PerformClick.run(View.java:9080)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3697)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:853)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:611)
at dalvik.system.NativeStart.main(Native Method)

1)将所有活动都放在同一个程序包下[例如com.compname.proj.views]。

2)确保清单中的package属性设置为上述包[即com.compname.proj.views]。

3)在清单中的所有活动标签下,确保android:name属性的值与以下模式匹配:

        android:name=".<your activity class name>"

例如:android:name =“。SomeActivity”

我的意思是不要将包名称+活动类名称用于清单活动声明。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM