【抖音小程序】抖音小程序避免onClose重复回调 解决广告重复回调
程序员文章站
2024-01-05 23:48:28
废话不多说,上代码以下为全局脚本中:// 全局脚本中onLaunch: function() {//初始化方法if (this.globalData.videoAd) {// onClose只监听一次this.globalData.videoAd.onClose(res => {if (res.isEnded) {// 实现子子页面的closeAdFunction与cancelAdFunction方法this.globalData.curr....
废话不多说,上代码
以下为全局脚本中:
onLaunch: function() {
if (this.globalData.videoAd) {
// onClose只监听一次
this.globalData.videoAd.onClose(res => {
if (res.isEnded) {
// 实现子子页面的closeAdFunction与cancelAdFunction方法
this.globalData.currentPage.closeAdFunction()
} else {
this.globalData.currentPage.cancelAdFunction()
}
})
}
},
playAd: function() {
let videoAd = this.globalData.videoAd
// 照抄的官方例子
videoAd
.show()
.then(() => {
console.log("广告显示成功");
})
.catch((err) => {
console.log("广告组件出现问题", err);
// 可以手动加载一次
videoAd.load().then(() => {
console.log("手动加载成功");
// 加载成功后需要再显示广告
return videoAd.show();
});
});
},
globalData: {
videoAd: tt.createRewardedVideoAd({
adUnitId: '广告ID'
}),
currentPage: Object,
}
以下为页面脚本:
onLoad(){//定义页面
app.globalData.currentPage = this
}
//显示广告
app.playAd()
//广告监听
closeAdFunction() {
console.log('播放结束')
},
cancelAdFunction() {
console.log('用户取消')
},
本文地址:https://blog.csdn.net/FransicZhang/article/details/107518617