bytedance/Bytedance-UnionAD

激励视频缓存问题

Closed this issue · 3 comments

比如我第一个视频缓存完毕,然后播放。接着我开发者模式 调整到100%lose 或者 verybadnetwork
当第一个视频播放完毕之后,我关闭广告界面。立刻播放第二个视频,结果。正常立刻走完广告数据获取成功,视频缓存成功,开始播放视频
广点通就没有这个问题
我每次播放之前我都会清空上一个,然后创建新的对象然后再去loadAdData
if (self.rewardedVideoAd) {
self.rewardedVideoAd.delegate = nil;
self.rewardedVideoAd = nil;
}

这个是因为SDK内部已经做了缓存机制嘛?

是的,有一个缓存数据.所以不会影响展示.

但是会出现,缓存的视频播放完毕后,不会走rewardedVideoAdServerRewardDidSucceed激励视频成功的回调。会影响用户体验(用户会觉得我花了20秒钟看了一个广告,结果不给游戏道具奖励,比较坑。----所以我们目前是采用的是,只要视频播放结束rewardedVideoAdDidPlayFinish就给激励视频奖励,完全不管rewardedVideoAdServerRewardDidSucceed和rewardedVideoAdServerRewardDidFail,没感觉这两个回调的意义在哪里了)。而且测试中rewardedVideoAdServerRewardDidFail这个回调不太清楚什么情况下会触发。 游戏中,我们实际上都是保证用户看完广告就给奖励,用户看完广告不给道具,太容易流失了。