2012-03-03 18 views
7

我們正在嘗試將視頻文件從phonegap移動應用程序上傳到Web服務器。在iPhone中,一切都很好,但在Android上,數據以塊的形式發送,我們的服務器應用程序(php)無法處理它。如何在Android中讀取手機間隙文件中的分塊數據

//phonegap 
var options = FileUploadOptions(); 
options.chunkedMode = true; //default 

我們嘗試將chunkedMode轉爲false。這對於較小的文件適用於Android手機崩潰1mb以上的任何視頻。 (這是他們默認開啓chunkMode的原因)。

我們的問題是如何使用PHP讀取上傳的塊數據?在Apache中是否有需要打開以讀取此數據的設置?

回答

1

它結束了作爲一個網絡服務器的問題。 Apache需要配置爲支持分塊模式。還要注意的是NGNIX不具備分塊模式支持默認情況下,你需要安裝一個模塊http://wiki.nginx.org/HttpChunkinModule

+0

你是怎麼做到這一點的Apache,請提供解決方案。謝謝! – DevD 2016-02-27 09:13:29

3

有閱讀之間沒有差別分塊在服務器端與非分塊數據。這只是電話發送數據的方式(大小爲8192字節,或者是一個數據流)。

有一個LOT圍繞此功能在網絡上,個人我發現整個文件上傳解決方案有點片,特別是在較大的文件(例如,視頻文件)。

有人舉報發生在超過4.8MB的文件大,我的Android手機上它發生在周圍8MB標誌。

當我的應用程序上傳文件,並沒有附加文件(這是一個連接錯誤3的情況會發生什麼),我登錄了,所以我可以看到那些有問題的手機。它也發生在iPhone手機上(某些型號)。

如果你看一下Android的日誌,當它發生時,你可能會看到一個內存不足的異常了。

這對您有何幫助?它並不真的 - 但希望它有助於解釋問題所在。不幸的是,除了貢獻phonegap源代碼並重新編寫文件傳輸方法之外,我們無能爲力!

出於興趣,您遇到的問題在手機上,你可以使用,比如說,Facebook的,沒有問題,上載大量文件?然而,該應用程序是上傳文件肯定是電話應該要做的方式..

0

另一個奇怪的觀察。我上傳了一個50MB的視頻文件到錯誤的網址。它沒有去,但Android旋轉幾分鐘的車輪,並觸發成功回調。沒有錯誤3,沒有崩潰。一旦我固定的錯字,並提交正確的URL,我得到了錯誤3.

相關問題