微信小程序保存图片到相册

code_url = "https://baidu.com/images/demo.png"
saveImg(){
	let that = this
	//获取授权列表,查看是否授权写入相册权限
	uni.getSetting({
		success(res) {
			if (!res.authSetting['scope.writePhotosAlbum']) {
				uni.authorize({
					scope:'scope.writePhotosAlbum',
					success() {
						that.saveimgtoAlbum(that.code_url)
					}
				})
			}else{
				that.saveimgtoAlbum(that.code_url)
			}
		}
	})
},
saveimgtoAlbum(code_url){
	//图片保存到本地
	let that = this
	uni.showLoading()
	let fileName = new Date().valueOf();
	let filePath = wx.env.USER_DATA_PATH + '/' + fileName + '.jpg'
	uni.downloadFile({
		url: code_url, //仅为示例,并非真实的资源
		filePath: filePath,
		success: (res) => {
			if (res.statusCode === 200) {
				uni.saveImageToPhotosAlbum({
					filePath: filePath,
					success: function (data) {
						uni.hideLoading()
						uni.showToast({
							title: '保存成功',
							icon: 'success',
							duration: 2000
						})
					},
					fail: function (err) {
						uni.hideLoading()
						if (err.errMsg === "saveImageToPhotosAlbum:fail auth deny") {
							uni.openSetting({
							success(settingdata) {
									if (settingdata.authSetting['scope.writePhotosAlbum']) {
										uni.showToast({
											title: '您已授权成功,请重新保存海报',
											icon: 'success',
											duration: 2000
										})
									} else {
										uni.showToast({
											title: '尚未授权,无法保存海报',
											icon: 'none',
											duration: 2000
										})
									}
								}
							})
						}
					},
					complete(res){
						console.log(res);
					}
				})
			}
		}
	})
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值