wx.openDocument(Object object),模拟器运行正确,但是手机端运行错误?
发布于 5 年前 作者 xdong 7086 次浏览 来自 问答
 wx.getFileSystemManager().rename({
          oldPath:tempPath,
          newPath:newPath
        })
        wx.openDocument({
          filePath:newPath,
          showMenu:true,
          type:type,
          success(){
            wx.showToast({
              title'读取成功',
            })
          },
          fail(res){
            wx.showToast({
              title"打开失败",
            })
          }
        })
我先从云服务器下载了文件,如果直接用打开的api是没任何问题的。但是如果先进行了重命名,如上代码所示,则在模拟器端(PC端)一切运行正常,可以
打开下载的文档,会弹出“去读成功”的提示,但是安卓端进行打开的时候,则吐司了“打开失败”。请官方核实
1 回复

已自行解决。这个问题困扰了很久。真机调试后发现,其实是权限的问题,也就是下载后的文件首先需要通过copyFile到用户文件权限里,然后再进行打开就一切没问题了。如下

 wx.getFileSystemManager().copyFile({
          srcPath: tempPath,
          destPath:newPath,
          success(res){
            wx.openDocument({
              filePath:newPath,
              showMenu:true,
            })
          }
        })
回到顶部