LocalFileSystem未在Android中定义PhoneGap(Build)

时间:2012-12-12 17:24:46

标签: android cordova

我有以下代码:

function wait(){
    $(document).ready(function() {
        //alert("Dentro de ready");
        document.addEventListener("deviceready", init(), true);
    });
}

等待"等待"是一个从onload事件调用的Javascript函数。我使用onload事件,以及$(document).ready和" deviceready"事件,以确保我开始编码时加载每一件事。

" init()"方法做了一些事情,然后调用以下方法:

function download_img(imgToDownload){
    var url = remote_url+imgToDownload; // image url
    alert("img url: "+url);     
    try{
    window.requestFileSystem(**LocalFileSystem**.PERSISTENT, 0, 
            function (fs) {
        var imagePath = fs.root.fullPath +"/"+ imgToDownload; // full file path
        var fileTransfer = new FileTransfer();
        fileTransfer.download(url, imagePath, 
            function (entry) {
            alert("OK: " + entry.fullPath); // entry is fileEntry object
            }, 
            function (error) {
                alert("download error source " + error.source);
            alert("download error target " + error.target);
            alert("upload error code" + error.code);
            alert("http_status"+error.http_status);
            }
        );
        }
    );
    }catch(err){
    alert(err.message);
    }
}

我收到错误消息:" LocalFileSystem未定义"。

我的config.xml是:

<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
    xmlns:gap = "http://phonegap.com/ns/1.0"
    id        = "com.lamakun.mancomunidad"
    version   = "3.0.0">

<name>PhoneGap Build Application</name>

<description>
A simple PhoneGap Build application.
</description>

<author href="https://example.com" email="you@example.com">
Your Name
</author>
<preference name="phonegap-version" value="2.2.0" />


<access origin="http://www.mytests.es" subdomains="true"/>

</widget>

如果我可以添加任何权限,即使我现在想,我也拥有它们。 谁能给我一个线索?

2 个答案:

答案 0 :(得分:1)

不是:

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

它应该是:

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

在init之后使用()在触发deviceready事件之前立即调用该函数。

答案 1 :(得分:0)

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

在android清单文件中写下这些行