2014-10-03 66 views
0

我是Cordova的新手。我做了我的第一個小應用程序併成功部署到Windows 8和Android。現在我開始測試文件System Plugin。Cordova限制File.System.Plugin - 使用Visual Studio混合設備應用程序擴展開發

我做了一個小測試應用程序,它創建一個給定大小的文本文件。結果:

  • Android上的應用程式stopps不顯示錯誤信息10和15 MB作品尺寸
  • 之間某處響應在Windows 8應用程序崩潰不顯示錯誤信息而createing文件大於40 KB(未MB !它是KB)
  • 紋波模擬器文件系統插件是不是真的支持

(編輯:對於Windows 8有保存斑點時,北京時間在科爾多瓦代碼中的錯誤,現在所以,如果代碼更改爲只保存純文本字符串,我可以設法保存文件1 GB - 這種變化沒有EFFEKT爲Android如此,那裏仍是10 MB限制:EditEnd)

我基本上只是從HTML5複製的代碼岩石實況,並建立一個更大的刺痛存儲...

那麼限制是什麼或者我在這裏做錯了什麼?任何幫助將是偉大的!

問候,馬庫斯

這裏是我的代碼:

function writeFile() { 
    window.requestFileSystem(window.PERSISTENT, 5 * 1024 * 1024 /*5MB*/, onInitFsWrite, errorHandler); 
} 

function onInitFsWrite(fs) { 
    console.log('Opened file system: ' + fs.name); 

    fs.root.getFile(_fileName, {}, function (fileEntry) { 

     // Create a FileWriter object for our FileEntry (log.txt). 
     fileEntry.createWriter(function (fileWriter) { 

      fileWriter.onwriteend = function (e) { 
       msgOut('Write completed.'); 
      }; 

      fileWriter.onerror = function (e) { 
       msgOut('Write failed: ' + e.toString()); 
      }; 

      //create some data 
      var text = "1234567890".repeat(parseInt($("#length").val())); 

      // Create a new Blob and write it to log.txt. 
      var blob = new Blob([text], { type: 'text/plain' }); 

      fileWriter.write(blob); 

     }, errorHandler); 

    }, errorHandler); 
} 

String.prototype.repeat = function (num) { 
    return new Array(num + 1).join(this); 
} 

回答

0

嘗試window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onInitFsWrite, errorHandler);

科爾多瓦的實施requestFileSystem API的使用LocalFileSystem對象,而不是一個窗口對象

+0

感謝這個回答,但這不會改變任何事情。我不確定,但我認爲我找到了限制的原因。 Android應用程序具有最大內存使用量,它看起來像內存使用率是問題,而不是寫入文件的限制。在我的示例代碼中,我建立了一個大字符串,並將它傳遞給本地層,它可能被複制過來,並且字符串是UNICODE,所以每個字符都有兩個字節,因此操作正在達到Android的RAM限制應用。在本地代碼中,我有類似的問題,但如果我使用流媒體技術,一切正常...... – Markus 2014-10-15 20:34:35

+0

@Markus我也這麼認爲,但最近我設法將一部分rikaikun移植到android上的phonegap。該字典需要百日咳70MB,我可以實際加載它,但:a)我必須使用良好的舊ajax請求來執行此操作。b)僅適用於應用程序本身包含的文件(我無法使用XHR訪問任何外部文件)。 – jahu 2015-03-24 18:49:07

相關問題