Android应用程序随机崩溃(java.lang.NoClassDefFoundError).< / h1 &g



我的应用程序一直在与网络通信,当我第一次启动它时它运行得很好。但过了一段时间,当我最小化应用程序或在不同的应用程序之间切换,然后当我打开我的应用程序它崩溃了。日志如下:

10-19 16:53:12.872: E/AndroidRuntime(15318): Process: com.aleph。view, PID: 15318

10-19 16:53:12.872: E/AndroidRuntime(15318): java.lang.NoClassDefFoundError: com.aleph model. messagetypes

10-19 16:53:12.872: E/AndroidRuntime(15318): at com.al+nuListActivity.prepareURL(MainMenuListActivity.java:435)

10-19 16:53:12.872: E/AndroidRuntime(15318): at com.aleph.view.abstractActivity.TemplateListActivity.processThread(TemplateListActivity.java:148)

10-19 16:53:12.872: E/AndroidRuntime(15318): atcom.aleph.controller.MainMenuAction.ListItemClick (MainMenuAction.java: 168)

10-19 16:53:12.872: E/AndroidRuntime(15318): at com.aleph.view. mytrip . mainmenulistactivity . onlisttitemclick (MainMenuListActivity.java:109)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.app.ListActivity$2.onItemClick(ListActivity.java:319)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android. widgets . adapterview . performitemclick (AdapterView.java:300)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.widget.AbsListView.performItemClick(AbsListView.java:1186)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.widget.AbsListView$PerformClick.run(AbsListView.java:3099)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.widget.AbsListView$3.run(AbsListView.java:4046)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.os.Handler.handleCallback(Handler.java:739)

10-19 16:53:12.872: E/AndroidRuntime(15318): at android.os.Handler.dispatchMessage(Handler.java:95)

10-19 16:53:12.872: E/AndroidRuntime(15318): atandroid.os.Looper.loop (Looper.java: 135)

10-19 16:53:12.872: E/AndroidRuntime(15318): atandroid.app.ActivityThread.main (ActivityThread.java: 5376)

10-19 16:53:12.872: E/AndroidRuntime(15318): at java.lang.reflect.Method。调用(本地方法)10-19 16:53:12.872: E/AndroidRuntime(15318): at java.lang.reflect.Method.invoke(Method.java:372)

10-19 16:53:12.872:E/AndroidRuntime(15318): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)

10-19 16:53:12.872: E/AndroidRuntime(15318): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)

紧随其后:

10-19 16:54:08.802: E/AndroidRuntime(16425): Process: com.aleph.view,PID: 16425

10-19 16:54:08.802: E/AndroidRuntime(16425): java.lang.RuntimeException: cannot to start activityComponentInfo {com.aleph.view/com.aleph.view.myTrip.LoginActivity}:nullpointerexception:尝试调用虚方法'java.lang.String java.lang.String.trim()'上的空对象引用

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread.performLaunchActivity (ActivityThread.java: 2345)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread.handleLaunchActivity (ActivityThread.java: 2405)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread.access 800美元(ActivityThread.java: 155)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread H.handleMessage美元(ActivityThread.java: 1323)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.os.Handler.dispatchMessage (Handler.java: 102)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.os.Looper.loop (Looper.java: 135)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread.main (ActivityThread.java: 5376)

10-19 16:54:08.802: E/AndroidRuntime(16425): atjava.lang.reflect.Method。调用(本机方法)

10-19 16:54:08.802: E/AndroidRuntime(16425): atjava.lang.reflect.Method.invoke (Method.java: 372)

10-19 16:54:08.802: E/AndroidRuntime(16425): atcom.android.internal.os.ZygoteInit MethodAndArgsCaller.run美元(ZygoteInit.java: 908)

10-19 16:54:08.802: E/AndroidRuntime(16425): atcom.android.internal.os.ZygoteInit.main (ZygoteInit.java: 703)

10-19 16:54:08.802: E/AndroidRuntime(16425): Caused by:nullpointerexception:尝试调用虚方法'java.lang.String java.lang.String.trim()'上的空对象引用

10-19 16:54:08.802: E/AndroidRuntime(16425): at com.aleph.model.phoneHome.PhoneHomeValidator.checkMobileData(PhoneHomeValidator.java:124)

10-19 16:54:08.802: E/AndroidRuntime(16425): at com.aleph.model.phoneHome.PhoneHomeValidator.primeMobileForValidation(PhoneHomeValidator.java:54)

10-19 16:54:08.802: E/AndroidRuntime(16425): atcom.aleph.view.myTrip.LoginActivity.onCreate (LoginActivity.java: 70)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.Activity.performCreate (Activity.java: 6021)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.Instrumentation.callActivityOnCreate (Instrumentation.java: 1105)

10-19 16:54:08.802: E/AndroidRuntime(16425): atandroid.app.ActivityThread.performLaunchActivity (ActivityThread.java: 2298)

10-19 16:54:08.802: E/AndroidRuntime(16425):…10

一直在尝试解决这个问题。请帮助

这是三星的设备吗?我认为三星在原生代码编译器优化方面过于激进了。我使用Splunk MINT来接收远程堆栈跟踪,我在三星设备上看到三种崩溃类型,大约每几千次运行一次:

  • 进程试图以用户-2的身份做某事
  • 应用程序没有权限,它显然有
  • 随机无法解释的NoClassDefFoundError

要做的事情:

•在proguard配置文件(通常称为proguard-android.txt或proguard-rules.pro)中添加以下行:
-keep class MessageTypes
-keep class com.aleph.model.MessageTypes

•刷新你的构建

•重新构建应用程序

让我知道这是否有效,如果不行,我将进一步研究。

相关内容

最新更新