小程序
小游戏
企业微信
微信支付
扫描小程序码分享
查了下错误码对应的,2003是当前正在播放激励视频广告或者插屏广告,不允许再次展示插屏广告。
但是插屏广告根本没有显示,而且永远会显示正在播放。。。。
操作的逻辑很简单,就是进了页面,点切换tab的时候调用代码。
我试过以下的方法
(一)直接把官方在插屏广告那的代码,全部复制粘贴,就是load和show是在一起的
(二)在onload中先load插屏广告,在需要的地方在show()
(三)销毁页面的时候destroy广告
均不行,有人遇到过这个问题吗?怎么处理呢?
9 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
我也遇到这个问题了,onshow里边重新创建广告实例并且调用显示,第一次展示正常,切换tab后第二次永远显示2003,正在播放激励视频。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我这边找到场景必现了,我们是页面onLoad进行初始化,监听到是某个页面后退的才展示插屏。插屏出现点击关闭后立马切页面,之后调播放的api,就会一直返回这个 2003。 不仅是关闭插屏立马切页面,还有不等它播放立马切页面(插屏播放等待时间其实不短),都会出现该问题……
问题是不能在此期间(比如加loading)阻止用户切页面,那用户体验太差了
我也遇到了这个问题,第一次日志显示成功了但是界面上看不到,第二次就说不能重复展示2003了。
这个问题解决了吗,是官方问题还是代码问题?
你好,我也出现这种问题,你最后怎么处理的呀?
你好!请问解决了吗
这个界面,是只有一个按钮的单页面,点按钮调用showAd方法,很简单,然而也出现了这个问题。
点第一次,只出现已加载广告,和已准备展示(不会报错)
第二次点击的时候,就又会打印一次,已准备展示,以及报错,且是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
贴代码
tab页面不会销毁,重复创建了
切换tab的时候不允许重复加载广告
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
我也遇到这个问题了,onshow里边重新创建广告实例并且调用显示,第一次展示正常,切换tab后第二次永远显示2003,正在播放激励视频。
我这边找到场景必现了,我们是页面onLoad进行初始化,监听到是某个页面后退的才展示插屏。插屏出现点击关闭后立马切页面,之后调播放的api,就会一直返回这个 2003。 不仅是关闭插屏立马切页面,还有不等它播放立马切页面(插屏播放等待时间其实不短),都会出现该问题……
问题是不能在此期间(比如加loading)阻止用户切页面,那用户体验太差了
我也遇到了这个问题,第一次日志显示成功了但是界面上看不到,第二次就说不能重复展示2003了。
这个问题解决了吗,是官方问题还是代码问题?
你好,我也出现这种问题,你最后怎么处理的呀?
你好!请问解决了吗
这个界面,是只有一个按钮的单页面,点按钮调用showAd方法,很简单,然而也出现了这个问题。
点第一次,只出现已加载广告,和已准备展示(不会报错)
第二次点击的时候,就又会打印一次,已准备展示,以及报错,且是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
贴代码
interstitialAd.load().then(()=>{interstitialAd.show()}).catch((err)=>{})
})
tab页面不会销毁,重复创建了
切换tab的时候不允许重复加载广告