0

我构建了在 Android 上运行良好的纯 html PhoneGap 应用程序。它具有下载大型视频文件的链接。简单的直接链接。但是它不能在 iPhone 或 iOS 上下载。他们的浏览器不支持文件下载。它尝试播放和口吃,然后停止。

我需要非常简单的函数或代码来在 iOS 上下载文件。

我没有 phonegap js 或任何 js,但如果需要我可以包括。仅使用了 html 和 config.xml。我使用 PhoneGap Build 从 html/css 创建应用程序。谢谢!

4

1 回答 1

1

要下载文件(来自phonegap doc的片段):

var fileTransfer = new FileTransfer();
var uri = encodeURI("http://some.server.com/download.php");

fileTransfer.download(
    uri,
    filePath,
    function(entry) {
        console.log("download complete: " + entry.fullPath);
    },
    function(error) {
        console.log("download error source " + error.source);
        console.log("download error target " + error.target);
        console.log("upload error code" + error.code);
    }
);

第一个参数是你要下载的url,最后两个是成功和错误回调。第二个是您要存储文件的完整路径,包括文件名和扩展名。要获取对您的应用程序根目录的引用:

function gotFS(fileSystem) {
    console.log("got filesystem");
    // save the file system for later access
    console.log(fileSystem.root.fullPath);
    window.rootFS = fileSystem.root;
}

document.addEventListener('deviceready', function() {
    window.requestFileSystem  = window.requestFileSystem || window.webkitRequestFileSystem;
    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
}, false);

因此,如果您正在下载一个名为“video.avi”的视频并希望将其存储在应用程序根文件夹中,那么您将传递给下载方法的 filePath 变量将是这样的:

var filePath = rootFS.fullPath+'/video.avi';

希望这可以帮助

于 2012-07-31T09:14:44.393 回答