QQ小程序激励广告接入与使用。

首先去QQ那里申请一个广告,会有一个广告ID。

代码很直观了,主要就是如何知道视频有木有看完呢,这样再决定要不要给用户奖励。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//初始化广告
let videoAd = qq.createRewardedVideoAd({adUnitId: "f0f86362xxxxxxxxx473"})
//发生错误的回调
videoAd.onError(function (res) {
console.log('videoAd onError', res)
})
//加载的回调
videoAd.onLoad(function (res) {
console.log('videoAd onLoad', res)
})
//视频被关掉的回调,这里注意,回调有个参数res.isEnded是判断用户中途关闭广告的!
videoAd.onClose(function (res) {
console.log('videoAd onClose', res)
if(res.isEnded){
console.log('观看完成')
let params = {content, email, name, number, title, yzm}
_this.props.asyncSub(_this.props.message.cookieData.cookie, params)
}else{
console.log('半途而废')
Taro.showModal({
title:"未观看完成",
content:"请支持开发者维护这个应用,看完后,会自动提交!"
})
}
})
//这里才是打开广告,展示给用户!
videoAd.load().then(() => {
console.log('激励视频加载成功');
videoAd.show().then(() => {
console.log('激励视频 广告显示成功')
}).catch(err => {
console.log('激励视频 广告显示失败')
})
}).catch(err => {
console.log('激励视频加载失败');
})

调用:就是普通的bindtap。

我这里用的是form提交事件:用的React的Taro开发的,所以是react的语法,编译后就是普通的表单提交事件。

1
2
3
4
<Form onSubmit={(e) => {

this.sub(e)
}}>

Taro编译后:

image.png