这是我早晨发的帖子,这可能是个插屏广告的bug。
这个界面,是只有一个按钮的单页面,点按钮调用showAd方法,很简单,然而也出现了这个问题。
点第一次,只出现已加载广告,和已准备展示(不会报错)
第二次点击的时候,就又会打印一次,已准备展示,以及报错,且是2003
有时候可以展示,有时候不能,大多数情况是不能的,且如果出现一次2003,就会一直2003,除非关了小程序再进来
let interstitialAd = null
// 以上在page外面
// 以下为onload的
if (wx.createInterstitialAd) {
// @ts-ignore
interstitialAd = wx.createInterstitialAd({
adUnitId: 'a'
})
// @ts-ignore
interstitialAd.onLoad(() => {
console.log('onload')
})
// @ts-ignore
interstitialAd.onError((err) => { console.log(err) })
// @ts-ignore
interstitialAd.onClose(() => { console.log('close') })
}
// 以下为点击按钮或者点击tab切换的
if (interstitialAd) {
// @ts-ignore
interstitialAd.show().catch((err) => {
console.error(err)
})
}
-------------------------------分割线--------------------------------
我刚才试了下,代码可以走到这里
if (interstitialAd) {
console.log('广告正要展示1');
// @ts-ignore
interstitialAd.show().catch((err) => {
console.error(err)
})
}else{
console.log('没有interstitialAd实例')
}
这个'广告正要展示1',可以打印出来,但是,就是不会展示,也不会报错。。。
r然后再点击的时候,就会告诉你,2003
不要在刚进页面时尝试打开插屏广告,这个是被限制的,建议等二十秒以上再尝试打开,或通过按钮人为控制打开(show)。
另外,可以提供下能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
我现在是通过人为的按钮show打开的,现在是,如果第一次打不开(出现我上文说的,走到了'广告正要展示'阶段,而一直卡在这里)
那我等到了20秒,或者做其他操作,都不能打开,错误码依然是2003
这个代码就可以复现——https://developers.weixin.qq.com/s/kpXkNsmc7Jr1
辛苦暂时先使用真机来测试插屏广告部分,我们把问题反馈到开发者工具,期待日后修复。