0

我能够成功地从照片库和相机中获取图像,并能够使用FileTransfer 插件将它们发送到服务器,以保存它们。但是唯一不起作用的代码是显示图像:(当我提醒ImageURI时,它给了我以下路径:

file://storage/sdcard0/Android/data/com.apgyver.freshandroid/cache/.Pic.jpg

我不确定我是否缺少任何插件或某些代码?

function getImage() {
    // Retrieve image file location from specified source
    navigator.camera.getPicture(uploadPhoto, function(message) {
    alert('get picture failed');
},{
    quality: 50, 
    destinationType: navigator.camera.DestinationType.FILE_URI,
    sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY
}
    );

}

function uploadPhoto(imageURI) {

    //alert(imageURI); return false;
    var image = document.getElementById('myImage');
    image.src = imageURI;

    var options = new FileUploadOptions();
    options.fileKey="file";
    options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
    options.mimeType="image/jpeg";

    var params = new Object();
    params.value1 = "test";
    params.value2 = "param";

    options.params = params;
    options.chunkedMode = false;

    var ft = new FileTransfer();
    ft.upload(imageURI, url, win, fail, options);
}

它确实分配了路径,src但无法显示图像。

谢谢您的帮助。

4

1 回答 1

0

您必须缺少id 为myImage的img元素,该元素的宽度高度设置为某个值,以便它可见,并且被给定。您的代码严格遵循相机插件使用示例中的代码,并且由于它正确地进入服务器,您应该拥有所需的所有插件和权限。display: block

于 2015-01-24T22:00:37.467 回答