DanmakuFlameMaster icon indicating copy to clipboard operation
DanmakuFlameMaster copied to clipboard

为什么有时会回调到prepared(),有时回调不到

Open LINYIQIANG opened this issue 7 years ago • 3 comments

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);

LINYIQIANG avatar Sep 07 '17 06:09 LINYIQIANG

prepared 我也发现这个问题了

microcodor avatar Nov 07 '17 03:11 microcodor

我也遇到了同样的问题,请问你解决了吗?

fanyang365 avatar Jul 22 '19 08:07 fanyang365

我用了个偏方可以解决这个问题。 写一个定时器定时检查弹幕服务的在线情况(mDanmakuView.isPrepared),如果发现不在线的话,调用mDanmakuView.release()方法,然后再延时2秒调用初始化函数启动就可以了。希望对大家有帮助

fanyang365 avatar Jul 22 '19 08:07 fanyang365