这个bug不是必现,暂时也没有找到复现的规律 代码如下 let video = wx.createRewardedVideoAd({ adUnitId: id }); this._video = video; video.onError((err) => { this.onError(err); }); video.onLoad(() => { this._loaded = true; this._reTry = RETRY_TIMES; }); video.onClose((res) => { // 用户点击了【关闭广告】按钮 // 小于 2.1.0 的基础库版本,res 是一个 undefined if ((res && res.isEnded) || res === undefined) { // 正常播放结束,可以下发游戏奖励 g.log("正常关闭广告了"); common.VedioTrackerEvent.send(this._openType, common.VedioTrackerType.SUCCESS); AchievementModule02seeAdMsg.execute(g.db.dinerTB.activeDiner.dinerid); if (this._fun) { this._fun(); } } else { // 播放中途退出,不下发游戏奖励 g.warn("播放中途关闭广告了"); ui.g_tipMgr.showTips('没有看完广告,无法获得奖励'); } this._fun = null; this._loaded = false; });
【偶发】广告观看中途点关闭没有弹没看完无法获取奖励的弹窗,并且isEnd为true广告观看中途关闭在onClose里监听到的isEnd为true
2020-09-07你好,你的问题解决了吗,我这里遇到相同的问题,也是偶现,没什么头绪
看小视频广告时, 如果给的网页广告, 没看完isEnded也为true?看小视频广告时, 如果给的网页广告, 没看完isEnded也为true
2020-09-07问题解决了吗,我这里遇到相同的问题,也是偶现,没什么头绪
【偶现】小游戏看视频广告时, 没看完就关闭,onClose事件里的isEnded也为true打印出来的log,isEnded是true,代码如下: this.videoAd = wx.createRewardedVideoAd({ adUnitId: GI.gCfg.videoAdIDs[newVideoAdIdx]//激励视频id }); this.videoAd.onLoad(() => {GI.log('复活激励视频 广告加载成功');}); this.videoAd.onError(this.onVideoAdError.bind(this)); this.videoAd.onClose((res) => { GI.log("wx video close : ", res); //在没看完广告就关闭的情况下,此处打印出来的isEnded是true this.onVideoAdClose(res && res.isEnded || res === undefined, res);// 版本小于2.1.0的话res是undefined,此时关闭可以认为已经看完广告 });
2020-09-07