微信小程序 广告·插屏广告
微信小程序 广告·插屏广告
如果您的企业正在使用微信小程序,可以尝试使用插屏广告来增加收入并向用户推广产品或服务。
什么是插屏广告?
插屏广告是一种由客户端原生的图片、文本、视频控件组成的广告形式,会在小程序中部分页面展示。它覆盖在普通组件上,因此具有更高的曝光率和点击率。
如何创建插屏广告?
开发者可以使用 wx.createInterstitialAd 方法来创建插屏广告实例,并在页面加载时进行初始化。注意每次调用该方法都会返回一个全新的实例,只在当前页面有效,不允许跨页面使用。
以下是创建插屏广告的示例代码:
let interstitialAd = null
Page({
onLoad() {
if(wx.createInterstitialAd){
interstitialAd = wx.createInterstitialAd({ adUnitId: 'xxxx' })
interstitialAd.onLoad(() => {
console.log('onLoad event emit')
})
interstitialAd.onError((err) => {
console.log('onError event emit', err)
})
interstitialAd.onClose((res) => {
console.log('onClose event emit', res)
})
}
}
})
如何展示和隐藏插屏广告?
之前提到,插屏广告默认是隐藏的。要显示广告,可以使用 InterstitialAd.show() 方法进行调用。如果广告拉取失败或触发频率限制,该方法会返回一个rejected Promise,开发者需要监听并处理错误信息。
interstitialAd.show().catch((err) => {
console.error(err)
})
用户可以主动关闭插屏广告。但请注意,开发者无法控制广告的隐藏。
如何检测广告是否加载成功?
插屏广告组件会自动拉取广告,如果拉取成功,则通过 InterstitialAd.onLoad() 注册的回调函数进行执行。
interstitialAd.onLoad(() => {
console.log('插屏 广告加载成功')
})
如果拉取失败,则通过 InterstitialAd.onError() 注册的回调函数执行,并传递一个包含错误信息的对象。
interstitialAd.onError(err => {
console.log(err)
})
如何检测用户是否关闭了广告?
如果广告被关闭,则通过 InterstitialAd.onClose() 注册的回调函数进行执行。
interstitialAd.onClose(res => {
console.log('插屏 广告关闭')
})
注意事项
建议在创建广告后监听一次事件即可。多次调用 InterstitialAd.onLoad()、InterstitialAd.onError()、InterstitialAd.onClose() 等方法监听广告事件会产生多次事件回调,不易管理。
当插屏广告展示过程中快速切换页面可能导致广告展示在非调用页面上,请在页面切换完成后进行插屏广告展示。