bilibili / DanmakuFlameMaster

Android开源弹幕引擎·烈焰弹幕使 ~
http://app.bilibili.com/
Apache License 2.0
9.54k stars 2.1k forks source link

AndroidDisplayer.draw NullPointerException #102

Open 10045125 opened 9 years ago

10045125 commented 9 years ago

java.lang.NullPointerException at master.flame.danmaku.danmaku.model.android.AndroidDisplayer.draw(AndroidDisplayer.java:258) at master.flame.danmaku.danmaku.model.BaseDanmaku.draw(BaseDanmaku.java:178) at master.flame.danmaku.danmaku.renderer.android.DanmakuRenderer.draw(DanmakuRenderer.java:87) at master.flame.danmaku.controller.DrawTask.drawDanmakus(DrawTask.java:244) at master.flame.danmaku.controller.DrawTask.draw(DrawTask.java:160) at master.flame.danmaku.controller.CacheManagingDrawTask.draw(CacheManagingDrawTask.java:83) at master.flame.danmaku.controller.DrawHandler.draw(DrawHandler.java:560) at master.flame.danmaku.ui.widget.DanmakuSurfaceView.drawDanmakus(DanmakuSurfaceView.java:245) at master.flame.danmaku.controller.DrawHandler$2.run(DrawHandler.java:383)

zourb commented 8 years ago

I faced the same exception, the log is as below:

java.lang.NullPointerException
    at master.flame.danmaku.danmaku.model.android.AndroidDisplayer.draw(AndroidDisplayer.java:276)
    at master.flame.danmaku.danmaku.model.BaseDanmaku.draw(BaseDanmaku.java:199)
    at master.flame.danmaku.danmaku.renderer.android.DanmakuRenderer.draw(DanmakuRenderer.java:128)
    at master.flame.danmaku.controller.DrawTask.drawDanmakus(DrawTask.java:319)
    at master.flame.danmaku.controller.DrawTask.draw(DrawTask.java:217)
    at master.flame.danmaku.controller.CacheManagingDrawTask.draw(CacheManagingDrawTask.java:113)
    at master.flame.danmaku.controller.DrawHandler.draw(DrawHandler.java:610)
    at master.flame.danmaku.ui.widget.DanmakuView.onDraw(DanmakuView.java:311)
    at android.view.View.draw(View.java:14476)
    at android.view.View.getDisplayList(View.java:13373)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3077)
    at android.view.View.getDisplayList(View.java:13311)
    at android.view.View.getDisplayList(View.java:13415)
    at android.view.HardwareRenderer$GlRenderer.buildDisplayList(HardwareRenderer.java:1621)
    at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1500)
    at android.view.ViewRootImpl.draw(ViewRootImpl.java:2518)
    at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2390)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2020)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1121)
ctiao commented 8 years ago

应该被修复了,使用最新的0.4.2试试

s7655120 commented 8 years ago

@ctiao 在0.4.6版本上 也遇到了相同的问题

07-09 11:57:03.760 E/AndroidRuntime(20429): java.lang.NullPointerException 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.b.b.a.a.a(AndroidDisplayer.java:276) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.b.b.c.a(BaseDanmaku.java:204) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.b.d.a.a.a(DanmakuRenderer.java:125) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.a.i.a(DrawTask.java:341) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.a.i.a(DrawTask.java:232) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.a.a.a(CacheManagingDrawTask.java:113) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.a.d.a(DrawHandler.java:614) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.ui.widget.DanmakuSurfaceView.p(DanmakuSurfaceView.java:273) 07-09 11:57:03.760 E/AndroidRuntime(20429): at master.flame.danmaku.a.f.run(DrawHandler.java:402)

问一下这个问题应该如何处理,是什么原因造成的? 能否回答一下, 谢谢