目录
微信小程序创建项目配置底部导航栏
微信小程序滚动播放内容
微信小程序功能中心模块开发
微信小程序个人中心页面开发
微信小程序获取电话号码
微信小程序显示列表数据
微信小程序显示分页列表
微信小程序添加插屏广告
微信小程序添加激励式广告
最终效果可扫码查看
遇到问题可通过公众号留言反馈
概述
如果小程序用户数大于一千,可以申请流量主,则能够添加广告内容。
激励式广告的微信说明为
// 在页面中定义激励视频广告
let videoAd = null// 在页面onLoad回调事件中创建激励视频广告实例
if (wx.createRewardedVideoAd) {videoAd = wx.createRewardedVideoAd({adUnitId: 'adunit-e7cb039788774b1b'})videoAd.onLoad(() => {})videoAd.onError((err) => {})videoAd.onClose((res) => {})
}// 用户触发广告后,显示激励视频广告
if (videoAd) {videoAd.show().catch(() => {// 失败重试videoAd.load().then(() => videoAd.show()).catch(err => {console.log('激励视频 广告显示失败')})})
}
开发
开发步骤和微信说明的一致,不同的是如何判断用户已经看完视频了可以领取奖励。文档https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/ad/rewarded-video-ad.html有介绍,直接在onClose里面判断即可。
第一部分,直接写到js文件的第一行。
第二部分,写到js文件的onLoad方法中。
第三部分,点击需要播放视频的按钮或者逻辑处调用。
代码使用已经开发好的更多功能页面,在此基础上进行修改。之前的介绍为https://blog.csdn.net/m0_58095675/article/details/121073047?spm=1001.2014.3001.5501
只修改了js文件,其他文件无变化
// 在页面中定义激励视频广告
let videoAd = null;
Page({data: {list:[],list2:[],background: ['demo-text-1', 'demo-text-2', 'demo-text-3'],indicatorDots: false,vertical: true,autoplay: true,circular: true,interval: 2000,duration: 500,previousMargin: 0,nextMargin: 0},onLoad() {// 在页面onLoad回调事件中创建激励视频广告实例if (wx.createRewardedVideoAd) {videoAd = wx.createRewardedVideoAd({adUnitId: 'adunit-e7cb039788774b1b'})videoAd.onLoad(() => {})videoAd.onError((err) => {})videoAd.onClose((res) => {if (res && res.isEnded) {// 正常播放结束,可以下发游戏奖励var url = 'http://yr.lootaa.com/location/remind/add?openid=' + wx.getStorageSync("openid") + '&unionid=' + wx.getStorageSync("unionid");wx.request({url: url,success(res) {console.log(res.data.data)if (res.data.code != 200) {wx.showToast({title: res.data.message,})} else {wx.showToast({title: '订阅提醒成功',})}}})} else {// 播放中途退出,不下发游戏奖励wx.showToast({icon: 'loading',title: '订阅提醒失败',})}})}var that = this;wx.request({url: 'http://yr.lootaa.com/ship/time/todayEnd',success (res) {that.setData({list: res.data.data.data})console.log(res.data.data.data)}})wx.request({url: 'http://yr.lootaa.com/time/channel/lately',success (res) {that.setData({list2: res.data.data})console.log(res.data.data)}})},dingyue: function (e) {var mobile = wx.getStorageSync('mobile');var openid = wx.getStorageSync('openid');var unionid = wx.getStorageSync('unionid');if(!mobile && !openid && !unionid) {wx.showModal({title: '提示',content: '您尚未登录,是否进入登录页面?',success: function (res) {if (res.confirm) {wx.switchTab({url: '../mine/mine'})} else {console.log('用户点击取消')}}})} else {wx.showModal({title: '提示',content: '请确保您已关注了公众号“洛塔志达”,我们将以公众号消息的形式向您推送截关提醒。此次提醒将续期7天。',success: function (res) {if (res.confirm) {// 用户触发广告后,显示激励视频广告if (videoAd) {videoAd.show().catch(() => {// 失败重试videoAd.load().then(() => videoAd.show()).catch(err => {console.log('激励视频 广告显示失败')})})}} else {console.log('用户点击取消')}}})}}
})