存在的bug:
在华为系列手机中,安装“扫描全能王”软件,通过扫描软件拍得的扫描图片,选择保存到手机相册中,同一张图片多次选择保存到相册,在相册中就会保存得到多张相同图片,图片的文件名在文件后缀中添加(1)、(2)、(3)等标识进行区分,这种图片使用 wx.chooseImage 接口选择“原图”获得的临时文件路径后缀同样存在(1)、(2)、(3),并且在后续的上传接口调用中都会报错 “fail:file doesn't exist”,但是这种图片在手机中正常展示,可以通过微信或其它软件正常上传,wx.chooseImage 的非原图选择得到的文件路径后缀也正常,上传等操作都没问题,此bug可以在小程序官方组件展示中稳定复现。
复现过程:
手机型号:荣耀 V30 Pro,手机系统: HarmonyOS 2.0.0,微信版本:8.0.19,基础库:2.22.0
微信号:mxk1021120,在小程序官方组件展示中的复现开始时间:2022-02-22 19:00:00 ,当天日志已经上传
视频录制:
调用的接口:
// 默认原图从相册选择最多9张图片
wx.chooseImage({
sizeType: ['original'], // 设置选择原图、压缩图 ['original', 'compressed']
sourceType: ['album'], // 从相册选择还是相机拍照
count: 9, // 最多可以选择的图片张数
success: res => {
recordLog('wx_chooseImage_res', res, 'info');
...
},
fail: error => {
recordLog('wx_chooseImage_fail', error, 'error');
...
}
});
success回调事件返回值:
{
"errMsg": "chooseImage:ok",
"tempFilePaths": [
"wxfile://tmp_e08597164ef3be1379a84f1cbb8e1fe9611e47226c09ea87d54c06d4450c82c7.jpg (1)",
"wxfile://tmp_366dea027c3c525bd833e72ea677901015e58e5aa1a01c18846326beb09daf5d.jpg (2)"
],
"tempFiles": [{
"path": "wxfile://tmp_e08597164ef3be1379a84f1cbb8e1fe9611e47226c09ea87d54c06d4450c82c7.jpg (1)",
"size": 60081
}, {
"path": "wxfile://tmp_366dea027c3c525bd833e72ea677901015e58e5aa1a01c18846326beb09daf5d.jpg (2)",
"size": 60081
}]
}
测试未复现。从录屏来看,请自查是否是该APP生成的图片就是此类后缀,不使用该app生成的图片是否正常
自己写逻辑,在上传之前把文件扩展名改成正常的图片后缀 jpg | png | gif。
FileSystemManager.rename(Object object)