wx小程序 createRewardedVideoAd

摘要:
onLoad  加载模块this.videoAdCreat()onUnload  销毁模块this.videoAd.destroy()***********************************************注意点:01视频加载失败1004无合适广告02非法退出物理返回a.cantinvokeshow()whileothervideo-adisshowedb.操作:观看完毕-非
onLoad  加载模块
this.videoAdCreat()
onUnload  销毁模块
this.videoAd.destroy()
***********************************************
注意点:
01 视频加载失败 1004 无合适广告
02 非法退出 物理返回
a. cant invoke show() while other video-ad is showed
b.操作:观看完毕-非法退出-再进页面-再次退出-再次近页面
导致:直接走了观看成功方法
解决:进行销毁 RewardedVideoAd.destroy()

***********************************************
videoAdCreat(){
// 在页面onLoad回调事件中创建激励视频广告实例
if (wx.createRewardedVideoAd) {
this.videoAd = wx.createRewardedVideoAd({
adUnitId: 'adunit-fec0f7dc798dd96b'
})
this.videoAd.onError((err) => {
wx.showToast({
title: this.videoAdErrHandle(err),
icon: 'none'
})
})
// 监听关闭
this.videoAd.onClose((status) => {
if (status && status.isEnded || status === undefined) {
const id = this.backEndVideoInfo.item.id
console.log('视频正常关闭 下发奖励')
indexModel.videoAddWatched({
id: id
}).then(res => {
console.log('后台修改01')
res.success && this.circulateTaskList.map(ite => {
if (ite.id === id) {
ite.status = 1;
}
})
})
} else {
// 播放中途退出,进行提示
wx.showToast({title: '未完整观看视频不能获取奖励哦', icon: 'none'})
}
})
}
},
videoAdLoad(){
// 用户触发广告后,显示激励视频广告
if (this.videoAd) {
this.videoAd.show().catch((err) => {
this.videoAd.load()
.then(() => this.videoAd.show())
.catch(err => {
wx.showToast({
title: this.videoAdErrHandle(err),
icon: 'none'
})
})
})
}
},
videoAdErrHandle(err){
console.log('视频加载失败')
console.log(err)
// {errMsg: "no advertisement", errCode: 1004}
const errHandle={
1000:'后端接口调用失败',
1001:'参数错误',
1002:'广告单元无效',
1003:'内部错误',
1004:'无合适的广告',
1005:'广告组件审核中',
1006:'广告组件被驳回',
1007:'广告组件被封禁',
1008:'广告单元已关闭',
}
return errHandle[err.errCode] || '视频加载错误,重新加载页面试试吧'
},

免责声明:文章转载自《wx小程序 createRewardedVideoAd》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇十、oracle 常用函数Idea 添加注释:类注释、方法注释(可获取参数)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Hibernate 数据的批量插入、更新和删除

对于这个批处理场景,Hibernate提供了一个批处理解决方案。接下来,我们将从批插入、批更新和批删除三个方面介绍如何处理此批处理场景。为了避免这种情况,Hibernate为批量更新和批量删除提供了类似于SQL的HQL语法。...

RedisTemplate

在SpringBoot@RequestMapping(“/del/{key}”)publicStringdel(@PathVariable(“key”)Stringkey){try{//当该键不存在时,异常redisTemplate.delete(key);return“Success”;}将不会引发catch(Exceptione){returne.get...

内网esxi磁盘空间不足导致虚拟机宕机

因为一些占用太多空间的虚拟机可能无法启动。我不断拍摄快照以保存测试版本。我跳过了同一网段上的一个虚拟机ssh,并一直看着翻译器学习如何释放虚拟磁盘空间。您只能创建一个新的虚拟机来读取原始磁盘目录,并且只能重新构建一个新Linux机器进行测试。然后上传一个测试文件(最大程度地模拟其他虚拟机环境)。首先,你需要关闭机器。厚配置延迟将整个虚拟机目录文件清零,如下所...

SQLServer2008/2012 安装、添加sa用户和密码、多实例安装、修改端口, 重启生效

因为我们无法使用sa用户登录,所以只能使用系统登录。登录后,我们需要修改相关属性。右键单击数据库,然后单击属性。在这个sa的登录属性对话框中,我们首先需要设置这个用户的密码。由于此用户名是系统的用户,我们可以直接填写密码,然后再次确认密码。然后在对话框中,单击左上角的第二个属性服务器角色。这是您要实现的添加用户的角色。...

流控制、FlowControl

作用就是防止网络拥堵时导致的“丢包”问题,大致的工作原理就是当链路两端的设备有一端忙不过来了,他会给另外一端的设备发一个暂停发包的命令,通过这种方式来缓解压力,解决丢包问题。看上去流控制应该是个非常好的防止丢包的方法,但是为什么我们还要在无盘上关闭他呢?...

Grafana 安装配置启动

多个数据源:Graphite、InfluxDB、OpenTSDB、Prometheus、Elasticsearch、CloudWatch、KairosDB、Zabbix等。通知和提醒,达到目标设置的阈值,并发出警报。grafana具有以下三个用户权限管理员:超级管理员,具有所有权限查看器:只能查看DashBoardEditer:无法创建用户,无法添加数据源,...