Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
良好的行为成为习惯
uni-app
提交
858f3d43
U
uni-app
项目概览
良好的行为成为习惯
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
858f3d43
编写于
2月 20, 2020
作者:
d-u-a
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 移动激励视频广告到 API
上级
5d5987c1
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
157 addition
and
150 deletion
+157
-150
docs/api/_sidebar.md
docs/api/_sidebar.md
+2
-0
docs/api/ad/rewarded-video-ad.md
docs/api/ad/rewarded-video-ad.md
+151
-0
docs/component/_sidebar.md
docs/component/_sidebar.md
+0
-1
docs/component/ad-rewarded-video.md
docs/component/ad-rewarded-video.md
+1
-149
docs/component/ad.md
docs/component/ad.md
+3
-0
未找到文件。
docs/api/_sidebar.md
浏览文件 @
858f3d43
...
...
@@ -128,6 +128,8 @@
*
[
调试
](
api/other/set-enable-debug.md
)
*
[
获取第三方平台数据
](
api/other/get-extconfig.md
)
*
[
广告
](
api/other/advertisement.md
)
*
广告
*
[
激励视频广告
](
api/ad/rewarded-video-ad.md
)
<li></li>
<div
class=
"contact-box"
>
<a
href=
"//ask.dcloud.net.cn/explore/"
target=
"_blank"
class=
"contact-item"
>
...
...
docs/api/ad/rewarded-video-ad.md
0 → 100644
浏览文件 @
858f3d43
### 激励视频广告
-
app端的广告源由腾讯广点通、头条穿山甲广告联盟提供,DCloud负责聚合
-
小程序端的广告由小程序平台提供
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|头条小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.11+)|x|√|x|x|x|x|
**开通配置广告**
开通广告步骤:
1.
开通广告
需在广告平台后台操作:
*
App平台:
[
https://uniad.dcloud.net.cn/
](
https://uniad.dcloud.net.cn/
)
*
小程序平台:在各自的小程序管理后台操作。
2.
申请广告位id
在各位后台申请广告位id
3.
App端打包后生效,打包时必须选择要集成的广告SDK(穿山甲、广点通)。
激励视频广告组件是由客户端原生的图片、文本、视频控件组成的,层级最高,会覆盖在普通组件上。
### 广告创建
开发者可以调用 uni.createRewardedVideoAd 创建激励视频广告组件。该方法返回的是一个单例,该实例仅对当前页面有效,不允许跨页面使用。
激励视频广告组件默认是隐藏的,因此可以提前创建,以提前初始化组件。开发者可以在页面的
`onReady`
事件回调中创建广告实例,并在该页面的生命周期内重复调用该广告实例。
```
<script>
let rewardedVideoAd = null;
export default {
data() {
return {
title: 'createRewardedVideoAd'
}
},
onReady() {
if(uni.createRewardedVideoAd) {
rewardedVideoAd = uni.createRewardedVideoAd({ adpid: 'xxxx' })
rewardedVideoAd.onLoad(() => {
console.log('onLoad event')
})
rewardedVideoAd.onError((err) => {
console.log('onError event', err)
})
rewardedVideoAd.onClose((res) => {
console.log('onClose event', res)
})
}
},
methods: {
}
}
</script>
```
为避免滥用广告资源,目前每个用户每天可观看激励式视频广告的次数有限,建议展示广告按钮前先判断广告是否拉取成功。
### 显示/隐藏
激励视频广告组件默认是隐藏的,在用户主动触发广告后,开发者需要调用 RewardedVideoAd.show() 进行显示。
```
rewardedVideoAd.show()
```
只有在用户点击激励视频广告组件上的 关闭广告 按钮时,广告才会关闭。开发者不可控制激励视频广告组件的隐藏。
### 广告拉取成功与失败
激励视频广告组件是自动拉取广告并进行更新的。在组件创建后会拉取一次广告,用户点击 关闭广告 后会去拉取下一条广告。
如果拉取成功,通过
`RewardedVideoAd.onLoad()`
注册的回调函数会执行,
`RewardedVideoAd.show()`
返回的 Promise 也会是一个 resolved Promise。两者的回调函数中都没有参数传递。
```
rewardedVideoAd.onLoad(() => {
console.log('激励视频 广告加载成功')
})
rewardedVideoAd.show()
.then(() => console.log('激励视频 广告显示'))
```
如果拉取失败,通过
`RewardedVideoAd.onError()`
注册的回调函数会执行,回调函数的参数是一个包含错误信息的对象。常见异常错误参考文档
```
rewardedVideoAd.onError(err => {
console.log(err)
})
```
`RewardedVideoAd.show()`
返回的 Promise 也会是一个 rejected Promise。
```
rewardedVideoAd.show()
.catch(err => console.log(err))
```
### 拉取失败,重新拉取
如果组件的某次自动拉取失败,那么之后调用的 show() 将会被 reject。此时可以调用
`RewardedVideoAd.load()`
手动重新拉取广告。
```
rewardedVideoAd.show()
.catch(() => {
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
.catch(err => {
console.log('激励视频 广告显示失败')
})
})
```
如果组件的自动拉取是成功的,那么调用
`load()`
方法会直接返回一个 resolved Promise,而不会去拉取广告。
```
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
```
### 监听用户关闭广告
只有在用户点击激励视频广告组件上的 关闭广告 按钮时,广告才会关闭。这个事件可以通过
`RewardedVideoAd.onClose()`
监听。
`RewardedVideoAd.onClose()`
的回调函数会传入一个参数 res,res.isEnded 描述广告被关闭时的状态。
|属性|类型|说明|
|:-:|:-:|:-:|
|isEnded|boolean|视频是否是在用户完整观看的情况下被关闭的,true 表示用户是在视频播放完以后关闭的视频,false 表示用户在视频播放过程中关闭了视频
开发者需要根据 res.isEnded 判断是否视频是否播放结束、可以向用户下发奖励。
```
rewardedVideoAd.onClose(res => {
// 用户点击了【关闭广告】按钮
if (res && res.isEnded) {
// 正常播放结束
} else {
// 播放中途退出
}
})
```
**注意事项**
多次调用
`RewardedVideoAd.onLoad()`
、
`RewardedVideoAd.onError()`
、
`RewardedVideoAd.onClose()`
等方法监听广告事件会产生多次事件回调,建议在创建广告后监听一次即可,或者先取消原有的监听事件再重新监听。
docs/component/_sidebar.md
浏览文件 @
858f3d43
...
...
@@ -41,7 +41,6 @@
*
[
web-view
](
component/web-view.md
)
*
广告
*
[
ad
](
component/ad.md
)
*
[
激励视频广告
](
component/ad-rewarded-video.md
)
*
小程序开放能力组件
*
[
official-account
](
component/official-account.md
)
*
[
open-data
](
component/open-data.md
)
...
...
docs/component/ad-rewarded-video.md
浏览文件 @
858f3d43
### 激励视频广告
-
app端的广告源由腾讯广点通、头条穿山甲广告联盟提供,DCloud负责聚合
-
小程序端的广告由小程序平台提供
**平台差异说明**
|App|H5|微信小程序|支付宝小程序|百度小程序|头条小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.11+)|x|√|x|x|x|x|
**开通配置广告**
开通广告步骤:
1.
开通广告
需在广告平台后台操作:
*
App平台:
[
https://uniad.dcloud.net.cn/
](
https://uniad.dcloud.net.cn/
)
*
小程序平台:在各自的小程序管理后台操作。
2.
申请广告位id
在各位后台申请广告位id
3.
App端打包后生效,打包时必须选择要集成的广告SDK(穿山甲、广点通)。
激励视频广告组件是由客户端原生的图片、文本、视频控件组成的,层级最高,会覆盖在普通组件上。
### 广告创建
开发者可以调用 uni.createRewardedVideoAd 创建激励视频广告组件。该方法返回的是一个单例,该实例仅对当前页面有效,不允许跨页面使用。
激励视频广告组件默认是隐藏的,因此可以提前创建,以提前初始化组件。开发者可以在页面的 onLoad 事件回调中创建广告实例,并在该页面的生命周期内重复调用该广告实例。
```
<script>
let rewardedVideoAd = null;
export default {
data() {
return {
title: 'createRewardedVideoAd'
}
},
onReady() {
if(uni.createRewardedVideoAd) {
rewardedVideoAd = uni.createRewardedVideoAd({ adpid: 'xxxx' })
rewardedVideoAd.onLoad(() => {
console.log('onLoad event')
})
rewardedVideoAd.onError((err) => {
console.log('onError event', err)
})
rewardedVideoAd.onClose((res) => {
console.log('onClose event', res)
})
}
},
methods: {
}
}
</script>
```
为避免滥用广告资源,目前每个用户每天可观看激励式视频广告的次数有限,建议展示广告按钮前先判断广告是否拉取成功。
### 显示/隐藏
激励视频广告组件默认是隐藏的,在用户主动触发广告后,开发者需要调用 RewardedVideoAd.show() 进行显示。
```
rewardedVideoAd.show()
```
只有在用户点击激励视频广告组件上的 关闭广告 按钮时,广告才会关闭。开发者不可控制激励视频广告组件的隐藏。
### 广告拉取成功与失败
激励视频广告组件是自动拉取广告并进行更新的。在组件创建后会拉取一次广告,用户点击 关闭广告 后会去拉取下一条广告。
如果拉取成功,通过
`RewardedVideoAd.onLoad()`
注册的回调函数会执行,
`RewardedVideoAd.show()`
返回的 Promise 也会是一个 resolved Promise。两者的回调函数中都没有参数传递。
```
rewardedVideoAd.onLoad(() => {
console.log('激励视频 广告加载成功')
})
rewardedVideoAd.show()
.then(() => console.log('激励视频 广告显示'))
```
如果拉取失败,通过
`RewardedVideoAd.onError()`
注册的回调函数会执行,回调函数的参数是一个包含错误信息的对象。常见异常错误参考文档
```
rewardedVideoAd.onError(err => {
console.log(err)
})
```
`RewardedVideoAd.show()`
返回的 Promise 也会是一个 rejected Promise。
```
rewardedVideoAd.show()
.catch(err => console.log(err))
```
### 拉取失败,重新拉取
如果组件的某次自动拉取失败,那么之后调用的 show() 将会被 reject。此时可以调用
`RewardedVideoAd.load()`
手动重新拉取广告。
```
rewardedVideoAd.show()
.catch(() => {
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
.catch(err => {
console.log('激励视频 广告显示失败')
})
})
```
如果组件的自动拉取是成功的,那么调用
`load()`
方法会直接返回一个 resolved Promise,而不会去拉取广告。
```
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
```
### 监听用户关闭广告
只有在用户点击激励视频广告组件上的 关闭广告 按钮时,广告才会关闭。这个事件可以通过
`RewardedVideoAd.onClose()`
监听。
`RewardedVideoAd.onClose()`
的回调函数会传入一个参数 res,res.isEnded 描述广告被关闭时的状态。
|属性|类型|说明|
|:-:|:-:|:-:|
|isEnded|boolean|视频是否是在用户完整观看的情况下被关闭的,true 表示用户是在视频播放完以后关闭的视频,false 表示用户在视频播放过程中关闭了视频
开发者需要根据 res.isEnded 判断是否视频是否播放结束、可以向用户下发奖励。
```
rewardedVideoAd.onClose(res => {
// 用户点击了【关闭广告】按钮
if (res && res.isEnded) {
// 正常播放结束
} else {
// 播放中途退出
}
})
```
**注意事项**
多次调用
`RewardedVideoAd.onLoad()`
、
`RewardedVideoAd.onError()`
、
`RewardedVideoAd.onClose()`
等方法监听广告事件会产生多次事件回调,建议在创建广告后监听一次即可,或者先取消原有的监听事件再重新监听。
文档地址已迁移至:
[
https://uniapp.dcloud.io/api/ad/rewarded-video-ad/
](
https://uniapp.dcloud.io/api/ad/rewarded-video-ad
)
\ No newline at end of file
docs/component/ad.md
浏览文件 @
858f3d43
...
...
@@ -201,6 +201,9 @@ export default {
</
style
>
```
**激励视频广告**
文档地址:
[
https://uniapp.dcloud.io/api/ad/rewarded-video-ad
](
https://uniapp.dcloud.io/api/ad/rewarded-video-ad
)
**注意**
-
App端广告开通指南和收益相关问题:
[
https://ask.dcloud.net.cn/article/36769
](
https://ask.dcloud.net.cn/article/36769
)
-
App端除了ad组件,还支持开屏。详见
[
uni-AD官网
](
https://uniad.dcloud.net.cn/
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录