1***@qq.com
1***@qq.com
  • 发布:2023-01-06 09:46
  • 更新:2023-05-19 15:49
  • 阅读:1063

【报Bug】iOS设备无法使用plus.io.requestFileSystem获取本地文件,不知 iOS是否支持plus.io方法

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11 家庭中文版 21H2

HBuilderX类型: 正式

HBuilderX版本号: 3.6.15

手机系统: iOS

手机系统版本号: iOS 12.4

手机厂商: 苹果

手机机型: iPhone6 PLUS iOS 12.5.6版本,系统版本里面没有这个选项,12.4是乱选的

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

plus.io.requestFileSystem(plus.io.PRIVATE_DOC, function (fs) {
fs.root.getFile(
"/static/OCE_HMET_1.2.1_CODE.bin",
{
create: true,
},
function (fileEntry) {
fileEntry.file(function (blob) {
console.log("blob", blob);
});
}
);
});

操作步骤:

代码已贴出

预期结果:

希望iOS设备能够正常读取文件参数

实际结果:

未能实现

bug描述:

我在项目目录static文件夹中防止了一个OCE_HMET_1.2.1_CODE.bin文件
使用plus.io.requestFileSystem方法获取文件本身参数
安卓和鸿蒙读取参数正常
iOS设备内不正常,且本地文件读取出来的参数size=0,
具体参数的贴出代码,附带HbuilderX控制台打印记录和bin文件的附件

{  
    "size": 0,  
    "type": "application/macbinary",  
    "name": "OCE_HMET_1.2.1_CODE.bin",  
    "lastModifiedDate": "2023-01-05T09:19:57.061Z",  
    "fullPath": "(在本机的路径)"  
}
2023-01-06 09:46 负责人:无 分享
已邀请:
f***@qq.com

f***@qq.com

我的也是

  • 1***@qq.com (作者)

    切换 plus.io.PRIVATE_WWW 应用私有资源目录常量试试

    2023-01-06 09:56

1***@qq.com

1***@qq.com (作者) - 00后的五年经验前端开发工程师,3年软件开发经验,若有急需求需要我帮忙解决可联系1814011067@qq.com,邮件看到便会秒回

已解决,切换了 plus.io.PRIVATE_WWW 应用私有资源目录常量才可以正常访问
H5规范可见 https://www.html5plus.org/doc/zh_cn/io.html

  • 一只蒸兔子

    切换到PRIVATE_WWW getFile的时候返回{"code":6,"message":"不允许修改"}

    2023-03-20 12:33

  • 1***@qq.com (作者)

    回复 一只蒸兔子: 你要看看文件是不是被设置了只读状态

    2023-03-24 09:33

owenruning24

owenruning24

请问怎么读出数据来? 我打印的数据大小是10272,但是用readAsDataURL方法读出来后就变成10592大小的数据了~~! 也是读取的bin文件

  • 1***@qq.com (作者)

    转换为base64之后,字符串前面会有占位符,这个是你不需要的,你要删除掉它

    而且苹果设备使用readAsDataURL读出来,前缀为34个字符,安卓为37个,都是要提前删除的

    2023-03-24 09:32

  • 1***@qq.com (作者)

    你要是还没处理好这个问题,可以上我主页找我邮箱,我帮助你解决这个问题

    2023-03-24 09:38

6***@qq.com

6***@qq.com

你好,我想请问一下现在是不是不能访问公共目录的文件么?比如sd卡里的Documents文件夹下面的bin文件

要回复问题请先登录注册