微信小程序保存图片到相册权限设置


Posted in Javascript onApril 09, 2020

微信小程序保存图片到相册可以分成两种:一种是保存网络图片,一种是保存本地图片

保存网络图片:

var url = '网络图片路径'; 
wx.downloadFile({
 url: url,
  success: function (res) {
  var benUrl = res.tempFilePath;
  //图片保存到本地相册
  wx.saveImageToPhotosAlbum({
   filePath: benUrl,
   //授权成功,保存图片
   success: function (data) {
   wx.showToast({
    title: '保存成功',
    icon: 'success',
    duration: 2000
   })
   },
   //授权失败
   fail: function (err) {
   if (err.errMsg) {//重新授权弹框确认
    wx.showModal({
     title: '提示',
     content: '您好,请先授权,在保存此图片。',
     showCancel: false,
     success(res) {
     if (res.confirm) {//重新授权弹框用户点击了确定
      wx.openSetting({//进入小程序授权设置页面
      success(settingdata) {
       console.log(settingdata)
       if (settingdata.authSetting['scope.writePhotosAlbum']) {//用户打开了保存图片授权开关
       wx.saveImageToPhotosAlbum({
        filePath: benUrl,
        success: function (data) {
        wx.showToast({
         title: '保存成功',
         icon: 'success',
         duration: 2000
        })
        },
       })
       } else {//用户未打开保存图片到相册的授权开关
       wx.showModal({
        title: '温馨提示',
        content: '授权失败,请稍后重新获取',
        showCancel: false,
       })
       }
      }
      })
     } 
     }
    })
   }
   }
  })
  }
 })

保存本地图片:

wx.chooseImage({
count: 1,// 默认9
  sizeType: ['original', 'compressed'],// 可以指定是原图还是压缩图,默认二者都有
  sourceType: ['album', 'camera'],// 可以指定来源是相册还是相机,默认二者都有
  success: function (res) {
  // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
  console.log("choose image")
  console.log(res)
  var tempFilePath = res.tempFilePaths[0]
  wx.getImageInfo({
   src: tempFilePath,
   success: function (res) {
   console.log("get image info")
   console.log(res)
   wx.saveImageToPhotosAlbum({
    filePath: res.path,
    success(res) {
    console.log("保存图片成功")
    console.log(res)
    wx.showToast({
     title: '保存成功',
     icon: 'success',
     duration: 2000
    })
    },
    fail(err) {
    console.log('失败')
    console.log(err)
 
    if (err.errMsg == "saveImageToPhotosAlbum:fail cancel") {
     wx.openSetting({
     success(settingdata) {
      console.log(settingdata)
      if (settingdata.authSetting["scope.writePhotosAlbum"]) {
      console.log('获取权限成功,给出再次点击图片保存到相册的提示。')
      } else {
      console.log('获取权限失败,给出不给权限就无法正常使用的提示')
      }
     }
     })
    }
    }
   })
   }
  })
  }
})

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 验证插件 Web前端设计模式(asp.net)
Oct 17 Javascript
基于jquery实现的上传图片及图片大小验证、图片预览效果代码
Apr 12 Javascript
页面js遇到乱码问题的解决方法是和无法转码的情况
Apr 30 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
Sep 01 Javascript
关于session和cookie的简单理解
Jun 08 Javascript
BooStrap对导航条的改造实践小结
Sep 21 Javascript
微信小程序 window_x64环境搭建
Sep 30 Javascript
JavaScript之json_动力节点Java学院整理
Jun 29 Javascript
js 显示日期时间的实例(时间过一秒加1)
Oct 25 Javascript
微信小程序自定义toast组件的方法详解【含动画】
May 11 Javascript
JS校验与最终登陆界面功能完整示例
Jan 13 Javascript
如何使用CocosCreator对象池
Apr 14 Javascript
微信小程序仿通讯录功能
Apr 09 #Javascript
vue cli4下环境变量和模式示例详解
Apr 09 #Javascript
微信小程序实现组件顶端固定或底端固定效果(不随滚动而滚动)
Apr 09 #Javascript
微信小程序吸底区域适配iPhoneX的实现
Apr 09 #Javascript
加速vue组件渲染之性能优化
Apr 09 #Javascript
javascript设计模式 ? 抽象工厂模式原理与应用实例分析
Apr 09 #Javascript
javascript设计模式 ? 工厂模式原理与应用实例分析
Apr 09 #Javascript
You might like
有关 PHP 和 MySQL 时区的一点总结
2008/03/26 PHP
PHP时间戳 strtotime()使用方法和技巧
2013/10/29 PHP
PHP中Array相关函数简介
2016/07/03 PHP
利用laravel+ajax实现文件上传功能方法示例
2017/08/13 PHP
YII2框架中日志的配置与使用方法实例分析
2020/03/18 PHP
jquery学习笔记二 实现可编辑的表格
2010/04/09 Javascript
基于JQuery的Pager分页器实现代码
2010/07/17 Javascript
javascript时间排序算法实现活动秒杀倒计时效果
2021/01/28 Javascript
bootstrap-wysiwyg结合ajax实现图片上传实时刷新功能
2016/05/27 Javascript
分享JavaScript监听全部Ajax请求事件的方法
2016/08/28 Javascript
JavaScript正则获取地址栏中参数的方法
2017/03/02 Javascript
angular.js中解决跨域问题的三种方式
2017/07/12 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
值得收藏的vuejs安装教程
2017/11/21 Javascript
vue和webpack安装命令详解
2018/06/15 Javascript
详解webpack import()动态加载模块踩坑
2018/07/17 Javascript
layui操作列按钮个数和文字颜色的判断实例
2019/09/11 Javascript
vue 使用v-for进行循环的实例代码详解
2020/02/19 Javascript
Python的Tornado框架实现图片上传及图片大小修改功能
2016/06/30 Python
python实现雨滴下落到地面效果
2018/06/21 Python
pygame游戏之旅 添加icon和bgm音效的方法
2018/11/21 Python
Python3.5多进程原理与用法实例分析
2019/04/05 Python
python3应用windows api对后台程序窗口及桌面截图并保存的方法
2019/08/27 Python
Windows10下Tensorflow2.0 安装及环境配置教程(图文)
2019/11/21 Python
python爬虫爬取某网站视频的示例代码
2021/02/20 Python
英国家庭和商业健身器材购物网站:Fitness Options
2018/07/05 全球购物
美国现代家具购物网站:LexMod
2019/01/09 全球购物
添柏岚英国官方网站:Timberland英国
2019/11/28 全球购物
迪斯尼假期(欧洲、中东及非洲):Disney Holidays EMEA
2021/02/15 全球购物
师范毕业生求职自荐信
2013/09/25 职场文书
教育专业个人求职信
2013/12/02 职场文书
会计系毕业生求职信
2014/05/28 职场文书
毕业证委托书范文
2014/09/26 职场文书
网络工程专业大学生求职信
2014/10/01 职场文书
教师节座谈会主持词
2015/07/03 职场文书
Vue Element-ui表单校验规则实现
2021/07/09 Vue.js