@thorikiriのてょりっき

@thorikiriがWebとかAndroidとかの技術ネタや本を読んだブログです

PhoneGapでファイルをダウンロードする

PhoneGapでファイルをダウンロードするには、FileTransferを利用します。
単純な例では、次のような感じになります。

var fileTransfer = new FileTransfer(), // FileTransferオブジェクト
    url = 'http://hogehoge.com/fuga.png', // ダウンロードするファイルのURL
    filePath = rootDir + '/filename.png'; // 保存するパス
fileTransfer.download(url, filePath, function(entry) {
    // すでにfilePathにはファイルがあるはずです。
    // ダウンロード出来た時の処理をします。
    navigator.notification.alert('ダウンロード出来たよ。');
}, function(e) {
    // eはFileErrorオブジェクト
    navigator.notification.alert('エラーですよ。');
});

ここで、rootDirですが、ファイルシステムのルートのフルパスになります。
どうやって取得するのかは、devicereadyの時に取得して保持しておけば良いはずです。

document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
    requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fileSystem) {
        rootDir = fileSystem.root.fullPath;
    }, function(e) {
        navigator.notification.alert('エラーですよ。');
    });
}

これでファイルをダウンロードすることが出来るようになりました。
簡単でしたね。

HTML5/JavaScriptとPhoneGapで作るiPhoneアプリ開発入門

HTML5/JavaScriptとPhoneGapで作るiPhoneアプリ開発入門

洋書だとPhoneGapの本は結構数が出ているようですが、日本語では少ないですね。
これから翻訳されて出てくるのでしょうか?