使用plus.io.resolveLocalFileSystemURL对手机拍照的图片进行base64的时候,发现根本没反应。这个是怎么回事?
function p2B64(path) {
console.log('path:',path)
return new Promise(function(resolve, reject) {
//#ifdef APP-PLUS
console.log('这里是app:')
plus.io.resolveLocalFileSystemURL("file:" +path, function(entry){
console.log('这里是plus.io')
entry.file(function(file){
var reader = new plus.io.FileReader();
reader.onloadend = function (e) {
var base64=e.target.result
console.log(base64);
resolve(base64.split(',')[1]);
};
reader.readAsDataURL(file);
},function(e){
console.log("读写出现异常: " + e.message );
reject(e);
})
})
//#endif
//#ifdef H5
//Html5 Web API 专用接口
console.log('这里是h5:')
var xhr = new XMLHttpRequest()
xhr.responseType = 'blob'
xhr.onload = () => {
let reader = new FileReader()
reader.onload = (e) => {
//这里就是转好的Base64了
resolve(e.target.result.split(',')[1]);
}
let rs = reader.readAsDataURL(xhr.response)
}
xhr.open('get', path)
xhr.send()
//#endif
return
})
}
h5正常,app真机测试的时候出现问题,只打印了函数外的“这里是app:”这一句,里面的'这里是plus.io'没有打印出来。path打印正常:"_doc/uniapp_temp_1587524690921/compressed/1587524705865.jpg"
不知道什么情况?请高手指教
5 个回复
秃顶佩奇 - 秃顶佩奇
请问问题解决了么
1***@qq.com
你好, 现在解决了吗
9***@qq.com
安卓11以上机型不行,只有安卓10以下和鸿蒙系统可以
土豆鸡丁_o0
关键还不报错,根本看不出来是代码写错了,还是接口有问题,plus api现在都有这个问题烦得很
酷酷_
你好 问题解决了吗?