如何防止ZygoteInit异常?

时间:2014-01-03 22:40:10

标签: android

我在Google Play中的应用中收到了异常报告:

java.lang.NullPointerException
at com.dominionmobile.android.weather.l.handleMessage(Unknown Source)
at android.os.Handler.dispatchMessage(Handler.java:130)
at android.os.Looper.loop(SourceFile:351)
at android.app.ActivityThread.main(ActivityThread.java:3814)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:538)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:901)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:659)
at dalvik.system.NativeStart.main(Native Method)

此论坛条目中报告了几乎相同的异常: What are ZygoteInit calls?

我无法重现这个问题,但是关闭那个论坛条目,看起来就好了 正在启动应用程序,做某事,然后做回来,放置应用程序 在后台,然后再次启动它。

所以我的问题是,我可以添加哪种预防性代码来帮助避免这个问题? 我假设这一切都发生在我的主要活动中。

我确实有一些OnClickListener,我没有在onStop()上设置为null, 我不认为我需要尝试在重新进入时保留应用程序的任何状态, 它从它的数据库和启动时的SharedPreferences获得它所需要的东西。

我认为我之前从异常报告中看到了同样的异常,但它很少发生。

谢谢!

1 个答案:

答案 0 :(得分:1)

调用句柄消息时有NPE。查看日志的第一行。如果保留了mapping.txt文件,则可以进行符号化以从报告中获取可读信息。