使用uniapp查看广告

激励视频广告组件。激励视频广告组件是一个原生组件,并且是一个全局单例。层级比上屏 Canvas 高,会覆盖在上屏 Canvas 上。激励视频 广告组件默认是隐藏的,需要调用 RewardedVideoAd.show() 将其显示。

方法

1、加载激励视频广告数据:Promise RewardedVideoAd.load()

返回值  Promise

激励视频广告加载数据的结果

2、显示激励视频广告:Promise RewardedVideoAd.show()

激励视频广告将从屏幕下方推入。

返回值  Promise

激励视频广告显示操作的结果

3、监听激励视频广告加载事件:RewardedVideoAd.onLoad(function callback)

参数  function callback

激励视频广告加载事件的回调函数

4、取消监听激励视频广告加载事件:RewardedVideoAd.offLoad(function callback)

参数 function callback

激励视频广告加载事件的回调函数

5、监听激励视频错误事件:RewardedVideoAd.onError(function callback)

参数  function callback

激励视频错误事件的回调函数

回调参数  Object res
属性 类型 说明 最低版本
errMsg string 错误信息  
errCode number 错误码  

6、取消监听激励视频错误事件:RewardedVideoAd.offError(function callback)

参数  function callback

激励视频错误事件的回调函数

7、监听用户点击 关闭广告 按钮的事件:RewardedVideoAd.onClose(function callback)

参数  function callback

用户点击 关闭广告 按钮的事件的回调函数

回调参数  Object res
属性 类型 说明 最低版本
isEnded boolean 视频是否是在用户完整观看的情况下被关闭的  

8、取消监听用户点击 关闭广告 按钮的事件:RewardedVideoAd.offClose(function callback)

参数  function callback

用户点击 关闭广告 按钮的事件的回调函数

API代码:

getAdsItem(item) { //看广告
// console.log(item.adTitle, item)
if (app.getIsVisitor()) {
return;
}
if(this.isShowAd){
return;
}
if (item) {
this.adItem = item;
this.isShowAd = true;
// #ifdef H5
this.isDownload = true;
// #endif
// #ifdef MP-WEIXIN
this.videoAdLoad(true);
// #endif
}
},
videoAdLoad(flag) { //实例化广告信息
let that = this;
if (uni.createRewardedVideoAd) {
videoAd = uni.createRewardedVideoAd({
adUnitId: this.adItem.adUuid
})
videoAd.onLoad(() => {
console.log('激励视频 广告加载成功');
})
videoAd.onError((err) => {
console.log('onError event emit');
this.onCloseAdVisit();
})
videoAd.onClose((res) => {
// 用户点击了【关闭广告】按钮
videoAd.offClose();
if (res && res.isEnded) {
// 正常播放结束,可以下发游戏奖励
this.adVisitEnd();
} else {
// 播放中途退出,不下发游戏奖励
}
this.onCloseAdVisit();
})
if(flag){
this.videoAdShow(); //显示广告
}
}
},
videoAdShow() { //显示激励广告
if (videoAd) {
videoAd.show().catch(() => {
// 失败重试
videoAd.load()
.then(() => videoAd.show())
.catch(err => {
// console.log('激励视频 广告显示失败');
common.toast('广告显示失败,请重试!')
this.onCloseAdVisit();
})
})
this.adVisitStart();
}
},
async adVisitStart() { //调开始看广告接口 },
async adVisitEnd() { //调结束看广告接口 },
onCloseAdVisit() { //清除广告数据
this.adItem = {};
this.visitId = null;
this.isShowAd = false,
videoAd = null;
},

注意:看广告需要在微信小程序公众平台中申请广告组件,否则不能正常使用

错误码信息与解决方案表

错误码说明

代码 异常情况 理由 解决方案
1000 后端错误调用失败 该项错误不是开发者的异常情况 一般情况下忽略一段时间即可恢复。
1001 参数错误 使用方法错误 可以前往 q.qq.com 确认具体教程(小程序和小游戏分别有各自的教程,可以在顶部选项中,“设计”一栏的右侧进行切换。
1002 广告单元无效 可能是拼写错误、或者误用了其他 APP 的广告 ID 请重新前往 q.qq.com 确认广告位 ID。
1003 内部错误 该项错误不是开发者的异常情况 一般情况下忽略一段时间即可恢复。
1004 无适合的广告 广告不是每一次都会出现,这次没有出现可能是由于该用户不适合浏览广告 属于正常情况,且开发者需要针对这种情况做形态上的兼容。
1005 广告组件审核中 你的广告正在被审核,无法展现广告 请前往 q.qq.com 确认审核状态,且开发者需要针对这种情况做形态上的兼容。
1006 广告组件被驳回 你的广告审核失败,无法展现广告 请前往 q.qq.com 确认审核状态,且开发者需要针对这种情况做形态上的兼容。
1007 广告组件被驳回 你的广告能力已经被封禁,封禁期间无法展现广告 请前往 q.qq.com 确认小程序广告封禁状态。
1008 广告单元已关闭 该广告位的广告能力已经被关闭 请前往 q.qq.com 重新打开对应广告位的展现。

处理uniapp激励广告的更多相关文章

  1. 【Unity与Android】02-在Unity导出的Android工程中接入Google Admob广告

    我在上一篇文章 [Unity与Android]01-Unity与Android交互通信的简易实现) 中介绍了Unity与Android通讯的基本方法. 这一篇开始进入应用阶段,这次要介绍的是如何在An ...

  2. 适用于 Flutter 的 Google 移动广告 SDK 正式版现已发布

    作者 / Zoey Fan,Flutter 产品经理 应用变现有多种方法: 通过实体企业的店面接受付款.提供订阅或应用内购买,或者直接在应用中投放广告.经过六个月的 beta 测试期,我们很高兴能够推 ...

  3. AMS 新闻视频广告的云原生容器化之路

    作者 卓晓光,腾讯广告高级开发工程师,负责新闻视频广告整体后台架构设计,有十余年高性能高可用海量后台服务开发和实践经验.目前正带领团队完成云原生技术栈的全面转型. 吴文祺,腾讯广告开发工程师,负责新闻 ...

  4. Android应用盈利广告平台的嵌入方法详解

    一.如何学习Android  android开发(这里不提platform和底层驱动)你需要对Java有个良好的基础,一般我们用Eclipse作为开发工具.对于过多的具体知识详细介绍我这里不展开,我只 ...

  5. 【小程序开放激励视频】--wepy小程序添加激励视频

    小程序开放激励视频是对小程序开发者一个福音,小程序开发者可以完成一些变现,以增加收入! 本文章针对已经有开发经验或者正在进行小程序开发的同学~ 官方文档:激励视频广告 定义页面变量,用于创建视频实例 ...

  6. Appirater激励用户为你的app评分

    如果你此前开发过app,那么你会知道获得用户积极的评分并不是一件简单的事情.不幸的是,用户往往给他们不喜欢的东西负面评价,而不怎么倾向于给喜欢的内容留下积极评价.   所以,你作为一个开发者如何激励用 ...

  7. 如何激励用户为你的app评分?

    如何激励用户为你的app评分? 2014-04-10 16:21 编辑: suiling 分类:营销推广 来源:CocoaChina  0 7247 应用设计应用评分 招聘信息: IOS兼职 深圳创业 ...

  8. Unity3d开发集成Google Admob广告增加收入

    在Unity游戏中植入广告是Unity 游戏产品增加收入的一种重要方式,常用的广告有谷歌Admob,百度ssp,腾讯广点通,unity公司的unityads等等,而使用的最多的应该属于谷歌Admob, ...

  9. 基于vue+uniapp直播项目|uni-app仿抖音/陌陌直播室

    一.项目简介 uni-liveShow是一个基于vue+uni-app技术开发的集小视频/IM聊天/直播等功能于一体的微直播项目.界面仿制抖音|火山小视频/陌陌直播,支持编译到多端(H5.小程序.Ap ...

  10. 不要让事实妨碍好故事:Facebook精准广告产品与硅谷创业揭秘,4星奇书《混乱的猴子》

        “ 现在,和往常一样,一些有先见之明的学者看到了这一天会再次到来,他们把这次全新的媒体中世纪化过程命名为“第二次口口相传”(Secondary Orality)和“古登堡右括号”(the Gu ...

随机推荐

  1. 学习ASP.NET Core Blazor编程系列二十六——登录(5)

    学习ASP.NET Core Blazor编程系列文章之目录 学习ASP.NET Core Blazor编程系列一--综述 学习ASP.NET Core Blazor编程系列二--第一个Blazor应 ...

  2. JZOJ 5460. 士兵训练

    题目 \(1\le n,q \le 2\cdot {10}^5,0\le b_i,l_i \le {10}^9,b_i \ge 1,1 \le S_i \le n\) \(Solution\) 这题很 ...

  3. 病程极短(≤16周)的495例未分化关节炎患者随访2年的结局[EULAR2015_SAT0055]

    病程极短(≤16周)的495例未分化关节炎患者随访2年的结局   SAT0055 TWO-YEAR OUTCOME IN 495 PATIENTS WITH UNDIFFERENTIATED ARTH ...

  4. css3自动滚动

    <!DOCTYPE html> <html lang="en"><div class="wrap"> <ul clas ...

  5. 原子类Atomic

    前言 非阻塞算法:如果在某种算法中,一个线程的失败或挂起不会导致其他线程也失败或挂起,那么这种算法就被称为非阻塞算法.如果在算法的每个步骤中都存在某个线程执行下去,那么这种算法也被称为无锁(Lock_ ...

  6. vue-element-admin 怎么改后端 可以调跳过登录并且发送接口请求

    1.找到根目录的 vue.config.js 添加 proxy 内容 注释掉mock 2.清空 .env.development 里的 VUE_APP_BASE_API  路径 3.user.js 方 ...

  7. Linux安装PHP8 新版笔记

    PHP部分 官网下载地址:https://www.php.net/downloads.php 我下载的是此时的最新稳定版8.2.3 cd /usr/localwget https://www.php. ...

  8. 制造业常用KPI

    1.  质量KPI CA (Capability of Accuracy): 平均值距离期望中心值的距离,值越大,说明平均值越接近期望中心值. Ca=(X-U)/(T/2) CP (Capabilit ...

  9. MyBatis-Plus通用Iservice 方法详解

    public interface IService<T> { /** * 默认批次提交数量 */ int DEFAULT_BATCH_SIZE = 1000; /** * 插入一条记录(选 ...

  10. axios 进行同步请求(async+await+promise)

    axios 进行同步请求(async+await+promise) 遇到的问题介绍 将axios的异步请求改为同步请求想到了async 和await.Promise axios介绍 Axios 是一个 ...