Phonegap 2.4.0 - NetworkStatus警报

时间:2013-02-21 16:16:54

标签: cordova

我正在尝试使用PACKT出版社出版的“PhoneGap移动应用程序开发手册”来学习phonegap。第2章讨论文件系统,这似乎给出了一些错误。我复制了示例代码,我收到以下错误:

enter image description here

“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>

2 个答案:

答案 0 :(得分:1)

如果加载phonegap javascript文件时出错,通常会发生这种情况。有一件事让我多次使用错误的cordova.js文件 - 如果您正在构建Android应用程序,则必须使用Android生成的cordova.js文件,这同样适用于iOS应用程序

答案 1 :(得分:1)

当您在cordova ios项目中使用android版本的cordova.js时会发生这种情况。创建一个全新的ios cordova项目,从创建的项目中复制cordova-x.x.x.js并放入现有项目中,替换现有的cordova-x.x.x.js文件。然后,从Xcode清除项目并再次构建。瞧!从现在开始没有警报。