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


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 相关文章推荐
让mayfish支持mysqli数据库驱动的实现方法
May 22 Javascript
js数组转json并在后台对其解析具体实现
Nov 20 Javascript
JQuery中阻止事件冒泡几种方式及其区别介绍
Jan 15 Javascript
Js获取下拉框选定项的值和文本的实现代码
Feb 26 Javascript
JavaScript中Function()函数的使用教程
Jun 04 Javascript
JavaScript中输出信息的方法(信息确认框-提示输入框-文档流输出)
Jun 12 Javascript
webix+springmvc session超时跳转登录页面
Oct 30 Javascript
Vue实现双向绑定的方法
Dec 22 Javascript
基于input动态模糊查询的实现方法
Dec 12 Javascript
微信小程序实现图片预览功能
Jan 31 Javascript
详解如何在Vue里建立长按指令
Aug 20 Javascript
layui按条件隐藏表格列的实例
Sep 19 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 全局变量范围分析
2009/08/07 PHP
javascript,php获取函数参数对象的代码
2011/02/03 PHP
PHP常用技巧汇总
2016/03/04 PHP
php图片上传类 附调用方法
2016/05/15 PHP
yii 2.0中表单小部件的使用方法示例
2017/05/23 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
2019/09/16 PHP
Ext grid 添加右击菜单
2009/11/26 Javascript
获得所有表单值的JQuery实现代码[IE暂不支持]
2012/05/24 Javascript
网站基于flash实现的Banner图切换效果代码
2014/10/14 Javascript
jQuery之简单的表单验证实例
2016/07/07 Javascript
jQuery中的insertBefore(),insertAfter(),after(),before()区别介绍
2016/09/01 Javascript
理解javascript中的闭包
2017/01/11 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
利用node.js实现反向代理的方法详解
2017/07/24 Javascript
AngularJs ng-change事件/指令的用法小结
2017/11/01 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
React Native开发封装Toast与加载Loading组件示例
2018/09/08 Javascript
React 源码中的依赖注入方法
2018/11/07 Javascript
详解Vue.js和layui日期控件冲突问题解决办法
2019/07/25 Javascript
JavaScript This指向问题详解
2019/11/25 Javascript
[56:21]LGD vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
简单谈谈Python中的反转字符串问题
2016/10/24 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
2018/04/23 Python
python实现的分析并统计nginx日志数据功能示例
2019/12/21 Python
Python return语句如何实现结果返回调用
2020/10/15 Python
python3 通过 pybind11 使用Eigen加速代码的步骤详解
2020/12/07 Python
python绘制高斯曲线
2021/02/19 Python
Otticanet澳大利亚:最顶尖的世界名牌眼镜, 能得到打折季的价格
2018/08/23 全球购物
普天C++笔试题
2016/03/20 面试题
职业生涯规划设计步骤
2014/01/12 职场文书
俄罗斯商务邀请函
2014/01/26 职场文书
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
乡村文明行动实施方案
2014/03/29 职场文书
金秋助学感谢信
2015/01/21 职场文书
SQL Server 数据库实验课第五周——常用查询条件
2021/04/05 SQL Server
PostgreSQL数据库创建并使用视图以及子查询
2022/04/11 PostgreSQL