1.wxml代码
<button bindtap="downloadImg">下载</button>
2.js代码
downloadImg(){
wx.showLoading({
title:"加载中"
});
// wx.downloadFile方法:下载文件到本地
wx.downloadFile({
url: this.data.imgSrc.img,
success:function(res) {
// wx.saveImageToPhotosAlbum保存图片到系统相册
wx.saveImageToPhotosAlbum({
filePath: res.tempFilePath, // 图片文件路径
success:function(data) {
wx.hideLoading() // 隐藏loading 提示框
wx.showModal({
title: '提示',
content: '保存成功',
modalType:false
})
},
// 接口调用失败案例
fail:function(err) {
if(err.errMsg === "saveImageToPhotosAlbum:fail:auth denied" || err.errMsg === "saveImageToPhotosAlbum:fail auth deny" || err.errMsg === "saveImageToPhotosAlbum:fail authorize no response"){
wx.showModal({
title: '提示',
content: '需要您授权保存相册',
modalType: false,
success:modalSuccess => {
wx.openSetting({
success(settingdata) {
console.log("settingdata",settingdata)
if(settingdata.authSetting['scope.writePhotosAlbum']){
wx.showModal({
title: '提示',
content: '获取权限成功,再次点击图片即可保存',
modalType: false,
})
}
},
})
}
})
}
},
complete(res) {
wx.hideLoading() // 隐藏loading提示框
}
})
}
})
}
3.结合点击按钮观看广告 onshow()预加载视频广告
onShow() {
// 在页面onLoad回调事件中创建激励视频广告实例
if (wx.createRewardedVideoAd) {
videoAd = wx.createRewardedVideoAd({
adUnitId: 'adunit-b9c530d7f07f8bfe'
})
videoAd.onLoad(() => {})
videoAd.onError((err) => {})
videoAd.onClose((res) => {
// 用户点击了【关闭广告】按钮
if (res && res.isEnded) {
// 正常播放结束,可以下发游戏奖励
} else {
// 播放中途退出,不下发游戏奖励
}
})
}
},
4.添加按钮展示广告
btnvedio() {
// 用户触发广告后,显示激励视频广告
if (videoAd) {
videoAd.show().catch(() => {
// 失败重试
videoAd.load()
.then(() => videoAd.show())
.catch(err => {
// console.log('激励视频 广告显示失败')
wx.showToast({
title: '视频加载失败',
content: "center"
})
})
})
}
}
5.可根据自己想法来进行广告限制,如:观看完毕获得,获得下载图片的权限等。
哪里不清楚请留言,或者直接联系我V:18937842167