我希望我有更多关于这个错误的信息,但我只是不这样做.我有一个名为BugSense的工具(现在是Splunk MINT),将崩溃发送到远程服务器,这就是我所得到的:
- java.lang.NullPointerException
- at android.view.HardwareRenderer$GlRenderer.checkCurrent(HardwareRenderer.java:960)
- at android.view.HardwareRenderer$Gl20Renderer.destroyLayers(HardwareRenderer.java:1148)
- at android.view.ViewRootImpl.destroyHardwareResources(ViewRootImpl.java:576)
- at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:973)
- at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2448)
- at android.os.Handler.dispatchMessage(Handler.java:99)
- at android.os.Looper.loop(Looper.java:137)
- at android.app.ActivityThread.main(ActivityThread.java:4482)
- at java.lang.reflect.Method.invokeNative(Native Method)
- at java.lang.reflect.Method.invoke(Method.java:511)
- at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:787)
- at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:554)
- at dalvik.system.NativeStart.main(Native Method)
有趣的是,所有错误实例来自:
> BLU DASH 4.0
他们都是根植的
他们都把移动网关掉了
>他们都有至少12个正在运行的应用程序
所以你怎么看?
>有没有人在HardwareRenderer类中有NPE?
>它可能是一个“根”的东西(即设备有根的问题)?
>这可能是一个“硬件”的事情(即BLUE DASH 4.0的问题)
解决方法
问题是代码正在使用一个null的对象.例如:
- MyClass class;
- class.doStuff(); // Will throw NullPointerException as class is null
- MyClass newClass = new MyClass();
- newClass.doStuff(); // Will work as newClass is pointing to an object.
道歉,如果这是贬低.
因为我没有违规的代码,所以我不禁要进一步.我建议您将代码(HardwareRenderer.java:960)和来自堆栈的调用路由,因为这是导致异常的原因.
关键是,如果没有违规的代码来检查,我不能做更多的事情.
希望这可以帮助.