[小程序实现保存图片到相册]
保存图片到相册
实现逻辑:
首先查看用户申请过的权限中是否有”保存图片到相册“,如果没有这个权限,则需要先申请权限(弹窗授权),如果用户同意授权则保存图片,如果用户不同意,则跳转到设置页,重新授权,然后再保存图片。
查看用户申请的全县有哪些 通过微信的API
wx.getSetting(Object object)
获取用户的当前设置。返回值中只会出现小程序已经向用户请求过的权限,如果接口调用回调函数返回成功,可以查看返回值中是否有 ”scope.writePhotosAlbum“ ,如果有,说明申请过了 可以直接保存。如果没有则申请权限,则申请授权
wx.authorize(Object object)
提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。
申请权限之后,就保存图片,先下载 图片资源到本地
wx.downloadFile({
url: 'https://example.com/audio/123', //仅为示例,并非真实的资源
success (res) {
// 成功过之后保存图片
}
})
返回值成功之后保存图片
wx.saveImageToPhotosAlbum(Object object)
保存图片到系统相册。
完整代码如下所示
**
* 保存
*/
const save=()=>{
Taro.showToast({
title:'正在保存图片',
icon:'loading'
})
// 判断用户是否授权"保存到相册"
wx.getSetting({
success:(res)=>{
// 没有授权 发起授权
if(!res.authSetting['scope.writePhotosAlbum']){
wx.authorize({
scope:'scope.writePhotosAlbum',
success:()=>{
// 保存图片
savePhoto()
},
fail:()=>{
//用户点击拒绝授权,跳转到设置页,引导用户授权
wx.openSetting({
success:()=>{
wx.authorize({
scope:'scope.writePhotosAlbum',
success:()=>{
// 保存图片
savePhoto()
}
})
}
})
}
})
}else{
//如果用户已授权,直接保存到相册
savePhoto()
}
}
})
}
//保存图片到相册,提示保存成功
const savePhoto=()=>{
wx.downloadFile({
url,
success:(res)=>{
wx.saveImageToPhotosAlbum({
filePath:res.tempFilePath,
success:(res)=>{
Taro.showToast({
title:'保存成功',
icon:'success'
})
}
})
}
})
}
参考:
1.微信小程序实现保存图片到相册功能
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhiakkcc
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22