0

PACKTパブリッシング発行の「PhoneGap Mobile Application Development Cookbook」を使ってphonegapを学ぼうとしています。第 2 章ではファイル システムについて説明していますが、これによりいくつかのエラーが発生しているようです。サンプル コードをコピーしたところ、次のエラーが発生しました。

ここに画像の説明を入力

"NetworkStatusxxxxxxxxxx"] (番号は毎回異なります)。私は数時間解決策を探していましたが、成功しませんでした。誰が助けてくれますか?!

私のコード:

!DOCTYPE html>

ファイルのダウンロード

var downloadDirectory;

document.addEventListener("deviceready", onDeviceReady, true);

function onDeviceReady() {
    window.requestFileSystem(
        LocalFileSystem.PERSISTENT, 
        0, 
        onFileSystemSuccess, 
        null
    );

    x$('#download_btn').on( 'click', function(e) {
        download();
    });
}

function onFileSystemSuccess(fileSystem) {
    fileSystem.root.getDirectory('my_downloads',{create:true},
        function(dir) {
            downloadDirectory = dir;
        },fail);
}

function fail(error) {
    x$('#message').html('We encountered a problem: ' + error.code);
}

function download() {
    var fileURL = document.getElementById('file_url').value;
    var localFileName = getFilename(fileURL);

    x$('#message').html('Downloading ' + localFileName);

    var fileTransfer = new FileTransfer();
    fileTransfer.download(fileURL, downloadDirectory.fullPath + '/' + localFileName, 
        function(entry){
            x$('#message').html('Download complete. File saved to: ' + entry.fullPath);
        }, 
        function(error){
            alert("Download error source " + error.source);
        }
    );
}

// Obtain the filename
function getFilename(url) {
   if (url) {
      var m = url.toString().match(/.*\/(.+?)\./);
      if (m && m.length > 1) {
         return m[1] + '.' + url.split('.').pop();
      }
   }
   return "";
}
</script>

<input type="text"      id="file_url"       value="http://blogs.adobe.com/adobeingovernment/files/2012/07/phonegap.jpg" />
<input type="button"    id="download_btn"   value="Download" />

<div id="message"></div>

4

2 に答える 2

1

これは通常、phonegap JavaScript ファイルの読み込み中にエラーが発生した場合に発生します。何度も私を悩ませたのは、間違ったcordova.jsファイルを使用していることです。Android アプリケーションを構築している場合は、Android で生成されcordova.jsたファイルを使用する必要があり、iOS アプリケーションにも同じことが当てはまります。

于 2013-03-14T23:15:45.790 に答える