在Lollipop中由于 'void dalvik.system.CloseGuard.close()' 导致了NullPointerException

9

我的应用在Android 5.0 Lollipop上运行时,在后台抛出以下异常。我无法确定它的确切位置或代码中是否有任何引用。

02-23 17:58:14.145: E/System(16417): Uncaught exception thrown by finalizer
02-23 17:58:14.146: E/System(16417): java.lang.NullPointerException: Attempt to invoke virtual method 'void dalvik.system.CloseGuard.close()' on a null object reference
02-23 17:58:14.146: E/System(16417):    at java.io.FileInputStream.close(FileInputStream.java:113)
02-23 17:58:14.146: E/System(16417):    at java.io.FileInputStream.finalize(FileInputStream.java:140)
02-23 17:58:14.146: E/System(16417):    at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:190)
02-23 17:58:14.146: E/System(16417):    at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:173)
02-23 17:58:14.146: E/System(16417):    at java.lang.Thread.run(Thread.java:818)

有什么具体的原因导致Android操作系统库崩溃吗?

1
这可能是系统设计错误,而不是您的程序错误。但需要更多的堆栈跟踪和进程包标识符(pid在括号中)的信息。 - Chris Stratton
我因为使用了RxJava,在我运行应用程序时没有网络,导致出现了这个错误。 - Ali Khaki
1个回答

1
我遇到了类似的问题。
我的代码中使用了片段,调用了AsyncTask。 当我调用我的活动的recreate()方法时,片段会被执行两次。
这就是我的问题所在。 我通过这个解决方案解决了我的问题:Fragment onCreateView和onActivityCreated被调用两次

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接