小程序
小游戏
企业微信
微信支付
扫描小程序码分享
- 当前 Bug 的表现(可附上截图)
通过小程序内上传的图片无法保存,使用wx.downloadFile下载之后,tempFilePath的文件为wxfile://xxxx.bin后缀,导致无法保存。
但是如果我通过开发者工具上传的图片 就能保存
请问这是为什么呢?
4 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
有方案解决吗?
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我遇到了和你一样的问题,fail invalid file type,文件类型无效的报错
如果指定 filePath 呢?
通过downloadFile下载的不是wxfile://xxxx.xxx么,已经存在拓展名了。
wx.saveImageToPhotosAlbum的filePath不是下载后缓存文件的filePath么?我定义一个指定的filePath应该无效把?
如果是downloadFile的filePath,我之前尝试过'/' + new Date().getTime() + 指定后缀的地址是无法保存的。
麻烦具体描述问题并提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
手上的安卓手机都保存失败,苹果都可以正常保存。
测试了魅族Pro7 Plus和魅蓝6s,安卓系统版本7.0,微信7.0.4。
wx.downloadFile({
url: downloadUrl,
success:
function
(res) {
console.log(res)
let saveObj = {
filePath: res.tempFilePath,
wx.showToast({
icon:
'none'
,
title:
'保存成功'
})
},
fail:
'保存失败'
}
if
(message.type ===
'video'
) {
wx.saveVideoToPhotosAlbum(saveObj)
else
'image'
wx.saveImageToPhotosAlbum(saveObj)
测试了这2张图片
通过微信真机上传的图片,保存失败
https://nim-nosdn.netease.im/MTEyMjU1NTU=/bmltYV8xMTI3NjE1OTM1NV8xNTU3Mzk0NzU0OTU3XzcxOWQwZTg0LThmOTMtNGY2Mi05YjZkLWY5MTAzZDU3ZjI5ZQ==?createTime=1557394754892
通过开发者工具上传的图片,保存成功
https://nim-nosdn.netease.im/MTEyMjU1NTU=/bmltYV8xMTI3NjE1OTM1NV8xNTU3Mzk0NTIxMTA4XzFmNjdhYzNiLTlmMDQtNDlhMS1hMGEyLTZjZDFmYWZlNTg5Mg==?createTime=1557394507261
早上又测试了一只 Vivo X9s,也是保存失败
麻烦提供这种格式的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
https://developers.weixin.qq.com/s/p26vDgm37E8y
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
有方案解决吗?
我遇到了和你一样的问题,fail invalid file type,文件类型无效的报错
如果指定 filePath 呢?
通过downloadFile下载的不是wxfile://xxxx.xxx么,已经存在拓展名了。
wx.saveImageToPhotosAlbum的filePath不是下载后缓存文件的filePath么?我定义一个指定的filePath应该无效把?
如果是downloadFile的filePath,我之前尝试过'/' + new Date().getTime() + 指定后缀的地址是无法保存的。
麻烦具体描述问题并提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
手上的安卓手机都保存失败,苹果都可以正常保存。
测试了魅族Pro7 Plus和魅蓝6s,安卓系统版本7.0,微信7.0.4。
wx.downloadFile({
url: downloadUrl,
success:
function
(res) {
console.log(res)
let saveObj = {
filePath: res.tempFilePath,
success:
function
(res) {
console.log(res)
wx.showToast({
icon:
'none'
,
title:
'保存成功'
,
})
},
fail:
function
(res) {
console.log(res)
wx.showToast({
icon:
'none'
,
title:
'保存失败'
,
})
}
}
if
(message.type ===
'video'
) {
wx.saveVideoToPhotosAlbum(saveObj)
}
else
if
(message.type ===
'image'
) {
wx.saveImageToPhotosAlbum(saveObj)
}
}
测试了这2张图片
通过微信真机上传的图片,保存失败
https://nim-nosdn.netease.im/MTEyMjU1NTU=/bmltYV8xMTI3NjE1OTM1NV8xNTU3Mzk0NzU0OTU3XzcxOWQwZTg0LThmOTMtNGY2Mi05YjZkLWY5MTAzZDU3ZjI5ZQ==?createTime=1557394754892
通过开发者工具上传的图片,保存成功
https://nim-nosdn.netease.im/MTEyMjU1NTU=/bmltYV8xMTI3NjE1OTM1NV8xNTU3Mzk0NTIxMTA4XzFmNjdhYzNiLTlmMDQtNDlhMS1hMGEyLTZjZDFmYWZlNTg5Mg==?createTime=1557394507261
早上又测试了一只 Vivo X9s,也是保存失败
麻烦提供这种格式的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)
https://developers.weixin.qq.com/s/p26vDgm37E8y