uniapp插屏广告文档uni-app官网uni-app:一个使用 Vue.js 开发跨平台应用的前端框架https://uniapp.dcloud.io/api/a-d/interstitial微信官网插屏广告文档插屏广告 | 微信开放文档微信开发者平台文档https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/ad/interstitialAd-ad.html

插屏广告位id:需要在小程序公众平台=》推广=》流量主=》广告管理 去创建

插屏广告加载显示方法:

第一种:封装全局插屏广告方法

第二种:直接在当前页面写方法


第一种:封装全局插屏广告方法

封装插屏广告代码,在根目录创建common => Utils.js

Utils.js代码

// 插屏广告
var interstitialAd = null;
let interstitial = {//id就是传入的广告位idload(id) {if (uni.createInterstitialAd) {interstitialAd = uni.createInterstitialAd({adUnitId: id})interstitialAd.onLoad(() => {console.log('插屏 广告加载成功')})interstitialAd.onError((err) => {console.log('插屏 广告加载失败', err)})interstitialAd.onClose((res) => {console.log('插屏 广告关闭', res)})}},show() {if (interstitialAd) {interstitialAd.show().catch((err) => {console.error(err)})}}
}
module.exports = {interstitial
};

在需要调用插屏广告的页面中,调用Utils.js

import Utils from '../../common/Utils.js'

在onLoad()方法中进行加载插屏广告

//加载插屏广告
Utils.interstitial.load('插屏广告位id');

在methods写点击事件showAd(),例如点击某个按钮,触发点击事件,显示插屏广告

showAd(){            //显示插屏广告Utils.interstitial.show();;
}

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

第二种:直接在当前页面写方法

有个问题,如果切换页面需要销毁插屏广告,如果调用公共方法我不知道怎么调销毁的方法,所以还是靠老办法吧;

下面是正常在页面中写加载插屏广告;

在script中最外层定义

// 插屏广告
let interstitialAd = null;

进入小程序就调用插屏广告,插屏广告会提示一定时间内不能显示,这个问题在线上不会存在,在开发者工具和真机调试也是偶尔会出现,可以设置第一次进入就显示插屏广告,那么times设置0,小程序有可能会提示一定时间不显示,不管它,如果报了这个错,就一直显示,直到能显示成功;如果想15s显示可以不用做这个操作;

在onLoad中加载插屏广告,在需要显示的地方写显示插屏广告方法:

onLoad(){this.interstitialLoad();//加载插屏广告
},
onShow(){this.interstitialShow(0);//显示插屏广告
},
methods:{destroyAd() { //卸载插屏广告if (interstitialAd) {interstitialAd.destroy();}},interstitialLoad() { //加载插屏广告var that = this;var id = "插屏广告id";if (uni.createInterstitialAd) {interstitialAd = uni.createInterstitialAd({adUnitId: id})interstitialAd.onLoad(() => { //监听插屏广告加载事件console.log('插屏 广告加载成功')})interstitialAd.onError((err) => { //监听插屏错误事件console.log('插屏 广告加载失败', err)})interstitialAd.onClose((e) => { //监听插屏广告关闭事件console.log('插屏 广告关闭', e)//这里可以做关闭广告后想做的操作})}},interstitialShow(times) { //显示插屏广告var that = this;setTimeout(() => {if (interstitialAd) {console.log('插屏广告正在显示....');interstitialAd.show().catch((err) => {console.error("插屏广告显示失败:", err);switch (err.errCode) {case 2001://打开小程序一定时间内不允许展示that.interstitialShow(1000);break;case 2002://距离小程序插屏广告或者激励视频广告上次播放时间间隔不足,不允许展示插屏广告that.interstitialShow(1000);break;default:break;}})}}, times)},
}

关于一个页面如果设定了每隔多少秒显示插屏,那么离开当前页面后就必须要做销毁实例,不然会提示下图:

在页面隐藏或者卸载页面处销毁实例

interstitialAd.destroy();

onHide() {console.log("onHide监听页面隐藏")if (interstitialAd) {interstitialAd.destroy();}
},
onUnload() {console.log("onUnload监听页面卸载")if (interstitialAd) {interstitialAd.destroy();}
},      

uniapp 小程序 加载显示插屏广告相关推荐

  1. uniapp 小程序 加载显示激励视频广告

    uniapp激励广告文档:uni-app官网https://uniapp.dcloud.io/api/a-d/rewarded-video微信官网激励广告文档:激励视频广告 | 微信开放文档微信开发者 ...

  2. uni-app小程序加载页面出现图片拉长再变正常的原因

    在使用uniapp写微信小程序的页面样式的时候,你会发现一个现象就是加载图片的时候回先变长然后在正常显示,在pc端和app端没有问题. 这个原因是因为图片高度是自适应的,没有给固定高度. 解决方案就是 ...

  3. php点击查看更多,微信小程序加载更多和点击查看更多功能介绍

    这篇文章主要为大家详细介绍了微信小程序加载更多,点击查看更多功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了微信小程序加载更多功能实现的具体代码,供大家参考,具体内容如下 ...

  4. HTML 点击查看更多,微信小程序加载更多和点击查看更多的实现方法

    微信小程序加载更多和点击查看更多的实现方法 发布时间:2020-12-31 11:01:19 来源:亿速云 阅读:126 作者:小新 这篇文章给大家分享的是有关微信小程序加载更多和点击查看更多的实现方 ...

  5. 小程序加载本地图片解决方案

    小程序加载本地图片: https://www.cnblogs.com/greengage/p/7742106.html 推荐使用下面的第三种方法: https://blog.csdn.net/qq_4 ...

  6. 微信小程序加载 FengMap地图

    实现微信小程序加载FengMap地图,主要通过小程序<web-view>组件的src属性的外链方式加载,如<web-view src="https://fengmap.co ...

  7. uni-app(微信小程序)编写小程序加载map地图总结

    因为自己想在手机端开发一个应用要应用Vue框架,所以就想到了uni-app,其中一个模块就要加载地图并获取位置信息.这个uni官网给了api,调用也还方面,现就开发中的思路和几个关键方法进行说明,由于 ...

  8. 微信小程序加载并且编译显示富文本编辑器内容

    微信小程序如何加载并且显示百度编辑器中的内容 一. 下载wxParse文件夹放在根目录下(可以随意更改位置,只要后续能引入成功即可) 二. 在js文件中引入wxParse.js var WxParse ...

  9. uniapp微信小程序加载spine动画

    目录 1.XMLHttpRequest封装 spine-webgl小程序适配修改 加载动画 1.XMLHttpRequest封装 function XMLHttpRequest() {this.con ...

最新文章

  1. C#(WinForm)的Show()和ShowDialog()方法介绍
  2. Vue实现仿音乐播放器8-实现热门榜单效果
  3. 网路神警上网行为管理系统 v3.4.5官方版
  4. jAVA not find main_java编程时出现Could not find the main class 怎么解决???
  5. P5952-[POI2018]水箱【最小生成树】
  6. 《Head First 设计模式》专题上线
  7. OpenStack精华问答 | OpenStack是操作系统?
  8. 链路两段不同网段怎么通信_为什么不同网段不能通信(转)
  9. 蓝牙鼠标windows linux,Ubuntu下使用蓝牙无线鼠标[图]
  10. 2021年前端还好找工作吗?
  11. 利用java多线程技术和图像显示技术来完成动画设计。
  12. jsp之建立一个九九乘法表
  13. mysql创建gbk库_MYSQL创建utf-8和GBK格式数据库_MySQL
  14. 9个Console命令
  15. 苹果ios8_苹果IOS平台年度五佳免费单机手游!免费也有高质量游戏!
  16. html运行flash脚本语言,flash课件制作常用的脚本语句
  17. QT QLabel中字体行间距怎么设置?
  18. 经典vim插件功能说明、安装方法和使用方法介绍
  19. javascript 基本用法
  20. notepad背景护眼模式设置

热门文章

  1. c# 改键-之魔兽改键(Hook)
  2. C/C++字符串操作之head头指针和end尾指针相向而行demo
  3. linux 中.a和.so的区别
  4. HTTP协议的 “无连接,无状态”
  5. 上车是看电影的第一动力,你们的点赞评论转发是我写博客的动力!
  6. 腾讯做互联网之水:从马化腾多元化遇挫说起
  7. flink的广播、累加、缓存
  8. Iconfont-阿里巴巴矢量图标库的SVG玩法
  9. SK海力士拟2022年后投资千亿美元新建4座半导体工厂
  10. MATLAB轨迹规划 发给ROS中机器人实现仿真运动