Open LINYIQIANG opened 7 years ago
mDanmakuView.setCallback(new master.flame.danmaku.controller.DrawHandler.Callback()
{ @Override public void updateTimer(DanmakuTimer timer) { } @Override public void drawingFinished() { Log.i("danmu", "drawingFinished"); } @Override public void danmakuShown(BaseDanmaku danmaku) { Log.i("danmu", "danmakuShown"); } @Override public void prepared() // 我的问题 有时候会回调得到,有时回调不到,prepare失败 { Log.i("danmu", "加载出来"); // YQ 在这边打开弹幕 mDanmakuView.start(); getDanmukus(); if (mFlag == LIVE_HOST) { mDanmakuView.hide(); } } }); mDanmakuView.prepare(mParser, mContext); // YQ 这个设为true之后,就会显示这个 mDanmakuView.showFPS(false); mDanmakuView.enableDanmakuDrawingCache(true);
prepared 我也发现这个问题了
我也遇到了同样的问题,请问你解决了吗?
我用了个偏方可以解决这个问题。 写一个定时器定时检查弹幕服务的在线情况(mDanmakuView.isPrepared),如果发现不在线的话,调用mDanmakuView.release()方法,然后再延时2秒调用初始化函数启动就可以了。希望对大家有帮助
mDanmakuView.setCallback(new master.flame.danmaku.controller.DrawHandler.Callback()