android手机上传不了照片,已解决~ wx.saveImageToPhotosAlbum 方法在部分安卓手机上出现图片保存失败的bug。...
如题,运营曾给出一个问题,小程序分享到朋友圈的功能部分用户出现保存图片失败的情况。
查了下原因出问题的都是android用户。
打日志后发现:
原因是:部分安卓手机调用 wx.downloadFile方法下载网络资源图片后 会出现下载的图片临时路径的扩展名是unknown。所以后续在调用wx.saveImageToPhotosAlbum 方法时候会报错:saveimagetophotosalbum:fail invalid file type
-----------------------------分------------------------割------------------------线---------------------------------------------
下面是解决方案:(自定义临时资源路径)关键部分已经红色大字体加粗了
savePic(imgpic) { // 保存function
wx.showLoading({
title: '下载中...'
mask: true
})
let fileName = newDate().valueOf();
wx.downloadFile({
url: imgpic,
/* filePath指定文件下载后存储的路径,wx.env.USER_DATA_PATH */
filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.jpg'
success: res => {
console.log('downloadFileres', res)
let filePath = res.filePath;
wx.saveImageToPhotosAlbum({
filePath,
success: file => {
console.log('file', file)
wx.hideLoading();
wx.showModal({
content: '保存成功,您可以将保存的图片分享到朋友圈奥~'
showCancel: false
})
/* 删除缓存 */
let fileMgr = wx.getFileSystemManager();
fileMgr.unlink({
filePath: wx.env.USER_DATA_PATH + '/' + fileName + '.jpg'
success: function (r) {
},
})
},
fail: err => {
wx.hideLoading();
},
})
},
complete: () => {
wx.hideLoading();
}
})
}
tips:剩余点击保存按钮方法也一起贴一下:
gosave() { // 点击保存到本地
var that = this
var imgpic = this.data.imgpic
wx.getSetting({
success(res) {
console.log('res', res)
if (!res.authSetting['scope.writePhotosAlbum']) {
wx.authorize({
scope: 'scope.writePhotosAlbum'
success() {
console.log('授权成功'
},
fail() {
wx.showModal({
content: '您未授权奥,现在去授权?'
success(res) {
if (res.confirm) {
wx.openSetting({
})
}
}
})
}
})
} else {
that.savePic(imgpic)
}
}
})
},
android手机上传不了照片,已解决~ wx.saveImageToPhotosAlbum 方法在部分安卓手机上出现图片保存失败的bug。...相关推荐
- 苹果x有android文件夹,iPhone没有文件管理器这点,却让安卓手机羡慕!
iPhone手机虽然现在在中国销量越来越差,但不可否认的是,iPhone手机和安卓手机比起来依然有很多忠实的用户,他们已经到了必须使用iPhone的地步,换成安卓就会各种的不习惯. 在前段时间,就有一 ...
- 内存完整性已关闭,你的设备可能易受攻击已解决之处理方法
最近有用户在打开安全中心内存完整性的时候提示内存完整性已关闭,你的设备可能易受攻击,这是有些驱动的兼容问题确实会导致内存完整性不能开启,那么该怎么解决呢?下面来看看解决方法吧!内存完整性是 Windo ...
- android 电话录音保存到什么位置,手机的录音文件在哪个文件夹?不同的安卓手机存放的路径你都知道吗?...
想必大家都有过在手机上进行录音的需求,记录一些比较重要的通话内容或信息,在完成录音后,你知道手机的录音文件存放在哪个文件夹了吗?下面小编将给大家介绍不同的安卓手机存放通话录音文件的路径,帮你轻松找到所 ...
- 安卓手机怎么设置蓝牙耳机弹窗动画_AirPods耳机也能在安卓手机与windows系统里,有超赞的体验,只需这两款软件...
AirPods刚发布,就被吐槽是绿豌豆,网友调侃它是植物大战僵尸里豌豆也不是空穴来风.看这造型.不过很多网友在实际上手体验里,却发出真香警告,看来万物都无法离开真香定律啊.AirPods 的这种真香定 ...
- android上传图片被旋转,input上传照片旋转解决办法
需求很简单:h5拍照上传照片,然后显示出来 问题在:上传之后的图片在PC,IOS端均能正常显示,Android端显示的则是被旋转90度的. 直接上代码 下面这个方法传入file对象,然后会去除掉照片中 ...
- oppo手机删了android怎么办,oppo手机删除的照片如何恢复【恢复方法】
手机是我们生活中最为常见的电子设备,并且在我们平时生活中也非常重要的,而对于很多白领朋友来说手机已经成为了他们身体的一部分了,而很多朋友在使用手机的时候,经常会出现误删些文件或者照片.而如果我们把手机 ...
- 如何恢复手机删除的照片?这两个方法帮你解决误删照片的烦恼
相信大家在使用手机的过程中可以都遇到过误删手机照片的情况,如果被误删的手机照片对我们来说非常珍贵那么我们该怎么恢复呢?其实会手机照片的方法很简单,下面就教大家两个小方法,希望能够帮助到大家. 方法一: ...
- 复制后的图形将文字覆盖上了【已解决】
[问题] 可以看出,我所遇到的问题主要是,截完图之后,将图片[Ctrl+V]到word中时,却发现这个图形只能覆盖上文字,不会自动调整位置,这种情况的弊端就是当图形居中后,左侧会出现回车符号. [尝试 ...
- linux开机自动加载igb模块,linux – 使用intel igb(已解决)在3/5 raid6 iSCSI NAS设备上的第一个RX队列上丢弃100%数据包...
编辑:问题已解决.有问题的队列已用于流控制数据包.为什么igb驱动程序传播FC数据包以使其丢弃(并计数)是另一个问题.但解决方案是,数据丢失的方式没有任何损失. 非常感谢syneticon-dj,你指 ...
最新文章
- 正在通过iTunes Store 进行鉴定
- MyBatis-15MyBatis动态SQL之【bind】
- access中如何画斜线_大神支招:如何设计access行政区划菜单
- RandomAccessFile类解析
- Mac 下隐藏显示隐藏文件
- dncnn图像去噪_一种基于DnCNNs改进的图像降噪方法与流程
- HIT Software Construction Lab6引发出来对锁的问题的探究
- IIS设置的解决方案
- 计算机硬件的基本组成(计算机组成原理)
- 论文查重率这么高,是由什么原因造成的?
- 细胞自动机 通用计算机,科学网—《走近混沌》-27-初级细胞自动机 - 张天蓉的博文...
- SAP B1 VS女士的Navision ERP的比较 - 知道如何选择软件
- thinkpad指纹识别linux,在Ubuntu下启用ThinkPad X250的指纹识别
- win10+ubuntu16.04双系统双硬盘(SSD+机械硬盘)安装
- 亚马逊秒杀活动怎么报名?站斧浏览器亚马逊站内促销
- stm32 c语言运行速度,stm32F7,cache,tcm及运行速度问题
- JS 服务器推送技术 WebSocket 入门指北
- 上海证券交易所-债券品种介绍
- 百格活动独家推出执行者晋升管理层的必备指南——《活动执行手册-思维篇》
- in-place运算总结