详细问题描述
H5+的Api中IO那一块有一个函数是convertAbsoluteFileSystem这个函数,是把绝对路径转成本地路径(_doc/...的形式)。但是转换总会出现null,不管给的绝对路径是否正确。我测试的从相册中pick一个图片出来,回调函数有一个参数file(例:file:///var/mobile/Containers/Data/Application/06750EA1-0355-4AAE-A098-1AD0F8E53F80/Documents/Pandora/apps/HBuilder/doc/IMG_0272.JPG)就是这个文件的绝对路径,直接把它放在图片的src属性中就可以显示出来,但是用那个函数转换就是始终转换不了。
重现步骤
[步骤]
通过plus.gallery.pick方法从相册中选图片,选一个图片后进入回调,回调有一个参数file,改参数是所选文件的绝对路径,因为绝对路径太长,个人想转成本地相对路径(_doc/...的形式),使用plus.io.convertAbsoluteFileSystem(file)函数进行转换,可是返回时null,文档中给出路径不合法才会返回null,但是这个路径是合法的,直接放在图片的src属性中是可以的显示的。
[结果]
convertAbsoluteFileSystem函数的调用总是返回null
[期望]
得到绝对路径的相对路径(_doc/...的形式)
运行环境
[win7 64]
[iPhone 8 Plus真机环境]
[8.9.1]
[3.7.2]
附件
[代码片段]
plus.gallery.pick(file => {
console.log(file);
this.list.push({
src: file,
title: plus.io.convertAbsoluteFileSystem(file) // 此处得到null
});
this.$dialog.toast({mes: '获取到了图片'});
}, err => {
this.$dialog.toast({mes: err.message});
});
联系方式
[QQ]
2929923469
[电话]
17393151381
4 个回复
7***@qq.com
uniapp也是获取到null
握瑾怀瑜
一样的问题,最后解决了吗?
握瑾怀瑜
我刚刚检查了,是因为全路径传给sdk的时候后半部分全丢失了
DCloud_App_Array
HBuilderX2.4.0+已修复此问题,请下载更新新版本
胡虎
2.42版本 还是 null
2019-11-27 23:02
胡虎
var url="_doc/uniapp_save/Uploads/images/work/80/xieyi.mp4";
var path=plus.io.convertLocalFileSystemURL(url);
var newurl = plus.io.convertAbsoluteFileSystem(path);
这样不回null
2019-11-27 23:03
胡虎
var path="/var/mobile/Containers/Data/Application/7FB7C90D-1544-40F2-9B53-7A8D0FD78E26/Documents/Pandora/apps/B14F8650C0BEB08F8A26401F6E8A9668/doc/uniapp_save/Uploads/images/work/80/xieyi.mp4";
var newurl = plus.io.convertAbsoluteFileSystem(path);
console.log(newurl)
这样会null
2019-11-27 23:04
DCloud_IOS_XTY
回复 胡虎: 系统绝对路径需要以file://开头
2019-12-13 11:59