1

電話ギャップを使用して Android フォンに PDF ファイルをダウンロードしたいのですが、ダウンロードを手伝ってくれる人はいますか? https://github.com/phonegap/phonegap-plugins/tree/master/Android/Downloaderプラグインを使用しましたが、機能していません。他のダウンロード方法がある場合は、お知らせください..よろしくお願いします..

4

2 に答える 2

4

phonegap ファイル API を使用して、必要なファイルをサーバーからダウンロードできます。詳細については、ドキュメントを確認してください - FileTransfer API

以下は、PDF ファイルをダウンロードして SD カードに保存するコードの例です。

window.appRootDirName = "download_test";
document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
    console.log("device is ready");
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}

function fail() {
    console.log("failed to get filesystem");
}

function gotFS(fileSystem) {
    console.log("filesystem got");
    window.fileSystem = fileSystem;
    fileSystem.root.getDirectory(window.appRootDirName, {
        create : true,
        exclusive : false
    }, dirReady, fail);
}

function dirReady(entry) {
    window.appRootDir = entry;
    console.log("application dir is ready");
}


downloadFile = function(){
    var fileTransfer = new FileTransfer();

    var url = "http://www.irs.gov/pub/irs-pdf/fw4.pdf";
    var filePath = window.appRootDir.fullPath + "/test.pdf";

    fileTransfer.download(
        url,
        filePath,
        function(entry) {
            alert("download complete: " + entry.fullPath);
        },
        function(error) {
            alert("download error" + error.source);
        }
    );
}

完全なソース - https://gist.github.com/3055240

于 2012-07-05T18:00:08.413 に答える
0

** phonegap でプラグイン ファイル API、ファイル転送を追加する必要があります (3.0+)

function downloadPDF(url, fileName, folder) {
    var fileTransfer = new FileTransfer();
    var uri = encodeURI(url);
    var fileURL = folder + fileName;

    fileTransfer.download(
        uri,
        fileURL,
        function(entry) {
            alert("complete");
            console.log("download complete: " + entry.toURL());
        },
        function(error) {
            alert("upload error code" + error.code);
            console.log("download error source " + error.source);
            console.log("download error target " + error.target);
            console.log("upload error code" + error.code);
        },
        false,
        {
            headers: {
                "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
            }
        }
    );
}

リンク内

<a href="#" 
    onclick="
    downloadPDF(
        'http://cran.r-project.org/doc/manuals/R-intro.pdf',
        'R-intro.pdf',
        '/sdcard/nuuoeiz/'
    );">
    Download PDF</a>
于 2014-10-23T02:27:37.483 に答える