readFile api 在手机上无法使用
发布于 6 年前 作者 zougang 1620 次浏览 来自 问答

代码:

在电脑上调用正常,真机调试无法使用,调试台显示:

没有读取权限?

我在网上找了找原因,说是临时文件已经过了生存周期被清理,找不到文件就报这个错,于是我 先用saveFile把文件移到已知目录下,再用readFile,就读取文件成功了,代码如下:

还没完,这样读取小文件是可以了,我起先也就以为就是生存周期的问题了。当我需要需要读取一个大文件时,savaFile报错 文件太大不能保存,那么问题就来了。怎么读取大文件?于是我就试着去找了手机上文件保存的位置,还真让我找到了,也发现了真正不能读取的原因。我找到chooseVideo产生的临时文件夹,里面的文件根本没有被清除,如下图

但是这个文件没有文件类型后缀,也就是MP4,我再找到savaFile的文件夹,

有后缀。我在再电脑上找到电脑的chooseVideo文件夹和savaFile文件夹,都有后缀。所以我推测这就是电脑上成功的原因,手机上报错显示的文件所在位置是:

wxfile://tmp_0731fc20c50273d1edce40df7247f7e5ca59a70f863ca8ab.mp4

但是在目录文件夹里只有tmp_0731fc20c50273d1edce40df7247f7e5ca59a70f863ca8ab ,没有后缀,所以读取不到,而用了savaFile之后的文件是有后缀的。如果我的推测正确,那么就是chooseVideo有bug,我的手机是小米6。如果不是,还请快点给出解决的方法。

1 回复

麻烦在手机微信那里上传下日志: 我->设置->帮助与反馈右上角有个上报日志的入口,麻烦提供一下微信号,时间点

回到顶部