android crop返回结果中获取绝对路径,【已解决】H5+API 中绝对路径转换本地相对路径得到null / resolveLocalFileSystemURL返回不允许读...

详细问题描述

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]

重现步骤

[步骤] 执行sdk文件上传,得到绝对路径返回到vue文件中,如路径名:

var file = /Users/yoyo/Library/Developer/CoreSimulator/Devices/69323557-3357-47AC-922E-CBEE0B0DF60B/data/Containers/Data/Application/9115484E-F662-493B-B0A3-08F90A420DC3/Documents/Yoyo06_385080913/avatar/Yoyo06_db9734552d4f17200805ae50/thumb/23CD4B22C7D78E370ED2A8B8CFC4084F.jpg

c8414e08a9227e5a413857cd21c47f30.png

在访达中看了一下,文件是真实存在的,路径表示没有问题。

第一种:读取文件方式,采用5+中的 参考文档:

// convertAbsoluteFileSystem: 将平台绝对路径转换成本地URL路径

var fz = plus.io.convertAbsoluteFileSystem(file); // 结果:null

第二种:采用pathToBase64的方式:

if(plus.os.name == 'iOS'){

file = "file://" + file; // 绝对路径,前面加file://

};

plus.io.resolveLocalFileSystemURL(file, function(entry) {

entry.file(function(file) {

var fileReader = new plus.io.FileReader()

fileReader.onload = function(data) {

console.log("读取成功:" + JSON.stringify(data));

}

fileReader.onerror = function(error) {

console.log("错误2:" + JSON.stringify(error));

}

fileReader.readAsDataURL(file)

}, function(error) {

console.log("错误3:" + JSON.stringify(error));

})

}, function(error) {

console.log("错误4:" + JSON.stringify(error)); // 一直在这一步打印结果:{"code":4,"message":"不允许读"}

})

[结果]

第一种方式,返回 null

第二种方式,返回 不允许读

[期望]

不管是第一种,还是第二种,支持读取文件

IDE运行环境说明

HBuilderX

[IDE版本号] 2.3.7.20191024

[mac版本号] 10.14.4

uni-app运行环境说明

app

项目是HBuilderX创建的

自定义组件模式

App运行环境说明

[iOS版本号] 12.4 / 13.1.3

[手机型号] iphone8

[模拟器型号] iphone6s plus

联系方式

[QQ] 398927951

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值