2014-10-30 119 views
7

我使用Plupload讓用戶上傳圖片到我的WordPress網站。Plupload:如何直接從相機上(在移動設備上)

當用戶點擊「選擇文件」並從他們的手機圖庫中選擇圖像時,圖像的文件名會出現在屏幕上。然後用戶可以自由點擊「上傳文件」開始上傳。

我的問題

當用戶點擊「選擇文件」,把他們的拍照手機中的照片,圖片的文件名沒有出現在屏幕上。在這種情況下,當用戶現在嘗試點擊「上傳文件」時,沒有任何反應。我該如何解決這個問題?

注意

,當我用我的平板電腦或臺式機的問題不會發生在所有。

更新

我的測試是使用兩個移動設備完成的:

  1. 的Chrome上三星Galaxy S4迷你於三星Galaxy II王牌運行Android運行Android 4.2.2
  2. 鉻4.1.2

下面是我正在使用的代碼演示:http://jsfiddle.net/djydce90/

我的腳本

var uploader = new plupload.Uploader({ 
    runtimes : 'html5,flash,silverlight,html4', 
    browse_button : 'pickfiles', 
    container: document.getElementById('container'), 
    url : "/examples/upload", 
    filters : { 
    max_file_size : '10mb', 
    mime_types: [ 
     {title : "Image files", extensions : "jpg,gif,png"}, 
     {title : "Zip files", extensions : "zip"} 
    ] 
    }, 
    flash_swf_url : '/plupload/js/Moxie.swf', 
    silverlight_xap_url : '/plupload/js/Moxie.xap', 
    init: { 
    PostInit: function() { 
     document.getElementById('filelist').innerHTML = ''; 

     document.getElementById('uploadfiles').onclick = function() { 
     uploader.start(); 
     return false; 
     }; 
    }, 
    FilesAdded: function(up, files) { 
     plupload.each(files, function(file) { 
     document.getElementById('filelist').innerHTML += '<div id="' + file.id + '">' + file.name + ' (' + plupload.formatSize(file.size) + ') <b></b></div>'; 
     }); 
    }, 
    UploadProgress: function(up, file) { 
     document.getElementById(file.id).getElementsByTagName('b')[0].innerHTML = '<span>' + file.percent + "%</span>"; 
    }, 
    Error: function(up, err) { 
     document.getElementById('console').innerHTML += "\nError #" + err.code + ": " + err.message; 
    } 
    } 
}); 

uploader.init(); 

我的HTML

<script src="https://rawgit.com/moxiecode/plupload/master/js/plupload.full.min.js"></script> 
<div id="filelist">Your browser doesn't have Flash, Silverlight or HTML5 support.</div> 
<br /> 
<div id="container"> 
    <a id="pickfiles" href="javascript:;">[Select files]</a> 
    <a id="uploadfiles" href="javascript:;">[Upload files]</a> 
</div> 

編號:http://www.plupload.com/examples/core

+0

我也有關於我的android的plupload例子類似的問題(HTC之一:自定義ROM)......這可能與做plupload它的自我:或特定實現。 (如果你想我可以建議一個不同的解決方案,如果你能夠改變依賴關係) – Burdock 2014-11-08 20:48:54

+0

@Burdock我可以問你的HTC正在運行的Android版本嗎?並請建議一個不同的解決方案,如果你有一個:) – henrywright 2014-11-08 22:57:11

+0

@henrtywright Android 4.2.2:HTC感覺5.0:HTC SDK API級別5.34:Trickdroid 7.5.something .....和Chrome – Burdock 2014-11-09 00:10:43

回答

1

的問題來自於捕捉images.And的方法roid爲您提供了一個位圖對象,因此您需要上傳該位圖而不是文件。當您從內存中選擇一個文件時,它將向您發送該路徑,但在捕獲時會詳細給出該照片數據。所以你需要上傳照片數據,而不是上傳文件。我不知道pluplaoad是否可以處理這個或沒有,但你可以通過這個鏈接來看到它。