我看过几篇与此相关的帖子,如Ref,但不适合我。我尝试过如下
第一种方法:
从联系人图像值
直接设置图像源var myImg = document.getElementById("cimg");
myImg.src = contacts[i].photos[0].value;
这个没有在img标签中显示图像。
第二种方法:
将联系人图像值传递给fileDownload选项
window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, function(fs){
fs.root.getFile("temp.jpg", {create: true, exclusive: false},
function(entry){
//alert(entry.toURL());
var fileTransfer = new FileTransfer();
fileTransfer.download(
contacts[i].photos[0].value, // the filesystem uri you mentioned
entry.fullPath,
function(entry) {
// do what you want with the entry here
console.log("download complete: " + entry.fullPath);
var src = entry.fullPath;
//$("").append('<img src="'+src+'" >');
},
function(error) {
alert("error source " + error.source);
console.log("error target " + error.target);
console.log("error code " + error.code);
console.log(error);
},
false,
null
);
}, function(e){
console.log("file create error",e);
});
}, null);
这个显示的错误如07-28 07:37:56.468: E/FileTransfer(20986): {"target":"file:\/\/\/mnt\/sdcard\/Android\/data\/io.cordova.hellocordova\/cache\/temp.jpg","http_status":0,"code":3,"source":"content:\/\/com.android.contacts\/contacts\/2\/photo","exception":"read failed: EINVAL (Invalid argument)"}
07-28 07:37:56.468: E/FileTransfer(20986): java.io.IOException: read failed: EINVAL (Invalid argument)
编辑:
我的手机短片联系[i] .photo [0] .value 返回&#34; content://com.android.contacts/contacts/1/photo"
如何解决这个问题。请帮帮我。
答案 0 :(得分:0)
请检查您正在测试的Android版本。因为Android 2.0有很多变化结构 - &gt; 2.2 ..你可以尝试4.0以上的Android吗?