小程序保存网络图片到相册
首先我们分析一下需求
1、我们需要拿到一个临时的图片路径
使用小程序api: wx.getImageInfo() 就能拿到图片的临时路径,需要注意的是传入的图片必须是网络图片
2、使用wx.saveImageToPhotosAlbum()保存图片到相册,需注意的是此方法需要授权,
所以实现此功能的流程是先获取到图片的临时路径再存储到相册
下面是我的实现代码
function showToast(title) {wx.showToast({title,icon: "none",mask: true,})
}
// 需要授权
function openSetting() {wx.showModal({title: '提示',content: '请先授权同意保存图片到相册',confirmText: '确定授权',success(res){if (res.confirm) {wx.openSetting({fail(err) {showToast('打开授权设置页面失败');}});}}})
};
// 验证用户是否拥有保存到相册的权限
function authUserJuris(url) {wx.getSetting({success(res) {console.log(res);if (res.authSetting['scope.writePhotosAlbum']) {// 用户已授权saveImage(url);} else if (res.authSetting['scope.writePhotosAlbum'] !== undefined){// 用户首次进入还未调起权限相关接口openSetting();} else {// 用户首次进入saveImage(url);}},fail(err) {showToast('获取授权信息失败')console.log(err);}})
}// 保存图片function saveImage(url, successFn = null, failFn = null) {if (!url) {showToast('缺少图片路径');return;} else if (url.indexOf('http://') === -1) {showToast('请传入网络图片地址');return;}// 获取图片路径wx.getImageInfo({src: url,success(res) {const { path } = res;if (path) {wx.saveImageToPhotosAlbum({filePath: path,success(res) {showToast('保存成功');successFn && successFn();},fail() {showToast('保存失败');failFn && failFn();}})}},fail(err) {showToast('获取图片地址失败');}});
}module.exports = {authUserJuris,
}
小程序保存网络图片到相册相关推荐
- 微信小程序保存图片到相册;uni-app小程序保存网络图片到相册;小程序保存图片到相册拒绝授权后重新拉起授权;保存图片到系统相册;小程序保存图片测试可以,真机保存图片失败
文末代码可以直接复制使用,图片修改成你的图片路径即可 一.场景: 小程序点击按钮,保存项目内的静态图片或者微信头像或者后端返回的图片: 二.注意点及思路拆分: –2.1:小程序保存图片功能,必须要有s ...
- 微信小程序保存网络图片至本地
小程序保存网络图片时发现保存的是以.bin为后缀的文件,无法正常识别,参考网上的例子重新弄了一下,在此记录 // 保存图片(主要针对授权的几种不同情况判断)saveCard() {let that = ...
- 微信小程序保存视频到相册wx.saveVideoToPhotosAlbum()
一.微信小程序保存视频到相册wx.saveVideoToPhotosAlbum() 功能描述 保存视频到系统相册.支持mp4视频格式. 参数 Object object 属性 类型 默认值 必填 说明 ...
- 简单的小程序保存网络图片到本地 适用于苹果手机
首先你需要有一个按钮触发保存的事件 再需要有一个图片路径 接下来就可以点击的时候保存到本地就可以啦 以下内容写到你的方法里就可以 wx.downloadFile({url: 'http://XXX.j ...
- 小程序保存海报,canvas绘制然后保存到相册,canvas文字换行计算
一.小程序保存海报,canvas绘制然后保存到相册 1.wxml <view class="box-canvas"><canvas canvas-id='myCa ...
- 【微信小程序】微信小程序保存二维码海报到相册,以及解决二维码不够清晰的问题
小程序保存二维码海报 添加 canvas 元素poster <canvas class="poster" canvas-id="poster" style ...
- 微信小程序下载网络图片保存到本地
微信小程序下载网络图片保存到本地 问题背景 前一篇文章介绍了,微信小程序网络请求数据并在页面列表显示(参考 https://blog.51cto.com/baorant24/6189453 ),本文将 ...
- 微信小程序下载视频到相册(带进度条)
微信小程序下载视频到相册,并带进度条 <button class="desc-note my-button u-font-32" @click="toUpload( ...
- 微信小程序选择图片(相册中选择/相机拍摄)
微信小程序中关于选择函数有专门的函数: wx.chooseImage(Object object) 从本地相册选择图片或使用相机拍照. 参数 Object object 属性 类型 默认值 必填 说明 ...
最新文章
- UVa 679 - Dropping Balls
- 微型计算机地未来发展,微型计算机的发展历史、现状和未来(最新) PDF.doc
- boost::make_biconnected_planar用法的测试程序
- 模拟alert和confirm
- java 栈 大小_java – JVM堆栈大小规范
- jquery如何获取第一个或最后一个子元素?
- wpf开发仿真3d软件_3D体验平台品牌应用——SOLIDWORKS?
- RabbitMQ学习之基于spring-rabbitmq的消息异步发送
- python字典实现原理-哈希函数-解决哈希冲突方法
- gvim的常用编辑快捷键
- ElementUI:nav收起后点击后出现黑色边框
- 卷积神经网络问题总结
- MySQL数据库主键与外键
- 动态苹果屏保壁纸软件Brooklyn Mac免费版
- html点击按钮跳转到另一个界面_网页制作:一个简易美观的登录界面
- 为什么计算机中整数的范围是-32768~32767而不是-32767~32767
- 忠实通物流信息管理系统
- php四舍六入五成双算法
- 什么是串扰crosstalk
- 电脑卡,电脑卡到不行?原因和解决方法都在这里了!
热门文章
- 收藏!一文掌握智能体协同创新实验室解决方案架构以及搭建流程
- 45.古代某工地需要搬运砖块,已知男人每人每次搬3块,女人每人每次搬2块,小孩两人每次抬一块,现有45人一次正好搬完全部砖块,请问男人、女人、小孩各几人?
- 《最强蜗牛》体验总结:放置的魅力、沙雕文化的胜利
- linux能用airport吗_为什么都用Linux作为云主机的操作系统?
- java绘制蝴蝶效应曲线代码_利用MATLAB的常微分方程数值解绘制蝴蝶效应(混沌系统)三维曲线图、平面上的投影图...
- 诺基亚5800恢复出厂设置
- 获微博战略投资后,有信CEO刘子正内部邮件说了啥?
- ISP、IAP、ICP、JTAG、SWD的编程特点!种编程方式区别总结
- wow服务器维护公告四号,魔兽世界5月7日更新内容 wow5.7大服务器实装维护公告
- 奇点大学:鼓吹未来的非正式大学