项目初始化
This commit is contained in:
107
sheep/util/adVideoUtils.js
Normal file
107
sheep/util/adVideoUtils.js
Normal file
@@ -0,0 +1,107 @@
|
||||
let videoAd = null;
|
||||
let adVideoUtils = {
|
||||
/**
|
||||
* @param {String} adUnitId 小程序广告视频id
|
||||
* videoAdInit 初始化激励广告
|
||||
*/
|
||||
videoAdInit(adUnitId) {
|
||||
if (videoAd) {
|
||||
videoAd = null;
|
||||
}
|
||||
if (uni.createRewardedVideoAd) {
|
||||
videoAd = uni.createRewardedVideoAd({
|
||||
adUnitId: adUnitId,
|
||||
});
|
||||
if (videoAd) {
|
||||
videoAd.onLoad(() => {
|
||||
console.log('激励视频 广告加载成功');
|
||||
});
|
||||
videoAd.onError((err) => {
|
||||
console.log('onError event emit');
|
||||
});
|
||||
}
|
||||
// return videoAd;
|
||||
}
|
||||
},
|
||||
/**
|
||||
* @param {String} adUnitId 小程序广告视频id
|
||||
* videoAdInit 初始化插屏广告
|
||||
*/
|
||||
insertVideoAdInit(adUnitId) {
|
||||
if (videoAd) {
|
||||
videoAd = null;
|
||||
}
|
||||
if (uni.createInterstitialAd) {
|
||||
videoAd = uni.createInterstitialAd({
|
||||
adUnitId: adUnitId,
|
||||
});
|
||||
if (videoAd) {
|
||||
videoAd.onLoad(() => {
|
||||
console.log('插屏视频 广告加载成功');
|
||||
});
|
||||
videoAd.onError((err) => {
|
||||
console.log('onError event emit');
|
||||
});
|
||||
}
|
||||
// return videoAd;
|
||||
}
|
||||
},
|
||||
/* 显示广告 ture为播放完成 */
|
||||
videoAdShow() {
|
||||
return new Promise((resolve, reject) => {
|
||||
adVideoUtils._showAd().then((val) => {
|
||||
if (val) {
|
||||
videoAd.onClose((res) => {
|
||||
videoAd.offClose();
|
||||
if (res.isEnded) {
|
||||
//成功 给予奖励
|
||||
resolve(true);
|
||||
} else {
|
||||
resolve(false);
|
||||
}
|
||||
});
|
||||
videoAd.onError((err) => {
|
||||
if (err.errCode == "1004") {
|
||||
reject("1004");
|
||||
} else {
|
||||
reject(err);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
resolve(true);
|
||||
//reject(err);
|
||||
}
|
||||
});
|
||||
});
|
||||
},
|
||||
_showAd() {
|
||||
return new Promise((resolve) => {
|
||||
videoAd
|
||||
.show()
|
||||
.then(() => {
|
||||
console.log("广告显示成功");
|
||||
uni.setStorageSync("adClick", false);
|
||||
resolve(true);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log("广告组件出现问题", err);
|
||||
// 可以手动加载一次
|
||||
videoAd
|
||||
.load()
|
||||
.then(() => {
|
||||
console.log("手动加载成功");
|
||||
uni.setStorageSync("adClick", false);
|
||||
resolve(true);
|
||||
// 加载成功后需要再显示广告
|
||||
return videoAd.show();
|
||||
})
|
||||
.catch((err) => {
|
||||
resolve(false);
|
||||
console.log("广告组件出现问题2次加载", err);
|
||||
// this.showUToast("加载失败啦,请稍后在试", "error");
|
||||
});
|
||||
});
|
||||
});
|
||||
},
|
||||
};
|
||||
export default adVideoUtils;
|
Reference in New Issue
Block a user