收藏
回答

在ios版本下,FileSystemManager.saveFile 无法保存临时文件

框架类型 问题类型 终端类型 AppID 环境ID 基础库版本
小程序 Bug 微信iOS客户端 wxc1255dca82906f4e fafig 2.10.2

https://developers.weixin.qq.com/miniprogram/dev/api/file/FileSystemManager.saveFile.html

复现片段(取消es6转es5)https://developers.weixin.qq.com/s/vZjPxBmB7Tfk

ipad 4 系统版本13.3.1 微信版本7.0.5

let {
  statusCode,
  tempFilePath
  } = await wx.cloud.downloadFile({ fileID })
  let tmp = tempFilePath.indexOf('?')
  if (tmp != -1) tempFilePath = tempFilePath.slice(0, tmp) 
   //在ios下,下载的临时文件带有skip参数无法保存,会抛出无效参数,因此要做剪裁去掉参数,但是剪裁掉后还是无法保存。再看下面。
  if (statusCode == 200)
  	wx.getFileSystemManager().saveFile({
  	tempFilePath,
  	success: res => console.log('success',res),
    	fail: res => console.log('fail', res)
  //在这里会抛出一个saveFile:fail move to savedFilePath fail。直接调用wx.saveFile接口也一样。
//按照设计是移动临时文件保存,但在这里会移动失败。这错误码在文档里面也没有特别说明。
})


以上两个问题都只存在于ios版本,具体是ipad,android下,两个问题都不存在。

代码可以直接运行复现。只需给一个fileID。

最后一次编辑于  03-04
回答关注问题邀请回答
收藏

4 个回答

登录 后发表内容
问题标签