uni-app微信小程序使用api创建激励视频广告一直报no ad unit id
uni-app微信小程序使用api创建激励视频广告一直报no ad unit id
onError event {errMsg: “no ad unit id”}
代码块
onReady() {
// 创建广告
const rewardedVideoAd = this.rewardedVideoAd = uni.createRewardedVideoAd({
adpid: '1849137715',
})
rewardedVideoAd.onLoad(() => {
console.log('onLoad event')
})
rewardedVideoAd.onError((err) => {
console.log('onError event', err)
})
rewardedVideoAd.onClose((res) => {
console.log('onClose event', res)
})
},
methods: {
ggplay() {
const rewardedVideoAd = this.rewardedVideoAd;
rewardedVideoAd.show()
.catch(() => {
rewardedVideoAd.load()
.then(() => rewardedVideoAd.show())
.catch(err => {
console.log('激励广告播放失败')
})
})
}
}
4 回复
目前也碰到这个问题,请问解决了吗?
我也遇到了,请问怎么解决呢?
搜了下,这个API需要穿入 adUnitId, 就是广告单元ID,是从广告平台上申请获取到的ID。如果是微信小程序就在微信管理后台 > 流量主 > 广告位ID 获取即可
在处理uni-app中微信小程序使用API创建激励视频广告时遇到“no ad unit id”错误,通常意味着广告单元ID(ad unit ID)未正确配置或未提供。这个问题通常出现在广告组件的初始化阶段。为了确保广告能够正确显示,你需要确保在代码中正确设置了广告单元ID,并且这个ID是在微信广告平台有效且已审核通过的。
以下是一个简单的示例,展示如何在uni-app中配置和使用微信小程序的激励视频广告。请确保你已经在微信公众平台获取了有效的激励视频广告单元ID。
步骤 1: 在manifest.json
中配置微信小程序的AppID
首先,确保你的manifest.json
文件中已经正确配置了微信小程序的AppID。
{
"mp-weixin": {
"appid": "你的微信小程序AppID"
}
}
步骤 2: 在页面或组件中初始化激励视频广告
接下来,在你的页面或组件中,使用微信小程序的广告组件API来初始化激励视频广告。
// 引入微信小程序的广告组件
const wx = require('wx');
Page({
onLoad: function() {
// 假设你已经从微信公众平台获取了有效的激励视频广告单元ID
const adUnitId = '你的激励视频广告单元ID';
// 创建激励视频广告实例
this.rewardVideoAd = wx.createRewardedVideoAd({
adUnitId: adUnitId,
})
// 监听广告加载事件
this.rewardVideoAd.onLoad(() => {
console.log('激励视频广告加载成功');
})
// 监听广告错误事件
this.rewardVideoAd.onError((err) => {
console.error('激励视频广告加载失败', err);
})
// 尝试加载广告
this.rewardVideoAd.load();
},
// 显示广告的方法
showRewardVideoAd: function() {
if (this.rewardVideoAd) {
this.rewardVideoAd.show().catch((err) => {
console.error('显示激励视频广告失败', err);
});
}
}
});
注意事项
- 确保
adUnitId
是有效的,且已在微信公众平台配置并审核通过。 - 调用
wx.createRewardedVideoAd
之前,确保微信小程序的运行环境是微信小程序本身,因为此API不适用于其他平台。 - 广告加载和显示是异步操作,需要在适当的时机调用,如用户触发某个动作后。
通过上述步骤,你应该能够解决“no ad unit id”的错误,并在uni-app中成功集成微信小程序的激励视频广告。