bilibili / DanmakuFlameMaster

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

发送弹幕时而会出现java.lang.NullPointerException, #215

Open s7655120 opened 8 years ago

s7655120 commented 8 years ago

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:204) at master.flame.danmaku.danmaku.renderer.android.DanmakuRenderer.draw(DanmakuRenderer.java:125) at master.flame.danmaku.controller.DrawTask.drawDanmakus(DrawTask.java:341) at master.flame.danmaku.controller.DrawTask.draw(DrawTask.java:232) at master.flame.danmaku.controller.CacheManagingDrawTask.draw(CacheManagingDrawTask.java:113) at master.flame.danmaku.controller.DrawHandler.draw(DrawHandler.java:614) at master.flame.danmaku.ui.widget.DanmakuSurfaceView.drawDanmakus(DanmakuSurfaceView.java:273) at master.flame.danmaku.controller.DrawHandler$2.run(DrawHandler.java:402)

发送弹幕偶尔会出现这样因绘制而出现的空指针,使用的弹幕库版本为0.4.6 求讲解如何解决此问题

ctiao commented 8 years ago

使用最新版本测试下

s7655120 commented 8 years ago

最新版本也会有这个问题,有的时候问题还比较奇怪,同一台设备出现了这个问题后,卸载重新安装问题就不出现了 ,暂时也没什么规律可言,请问有办法解决吗 @ctiao 好像这个问题也贯穿了好多个版本了

ctiao commented 8 years ago

嗯,这个是多线程导致的问题,并且在使用surfaceview情况下比较容易出现 建议先使用DanmakuView

zourb commented 7 years ago

@ctiao 这个崩溃在Android TV上崩溃率挺高的,能尽快解决吗,或者有什么方法可以规避呢

zourb commented 7 years ago

@ctiao 而且Android TV的版本现在用的就是DanmakuView,不是SurfaceView,仍然出现不少的NPE崩溃

wwzlp commented 7 years ago

我这变也经常无规律空指针 使用的是最新版本 surfaceview