从ashx调用将文件下载到Android

时间:2014-01-18 18:36:14

标签: android jquery jquery-mobile

我有一个Android网络应用。

该aspx页面上有一个按钮。

它调用Jquery ajax调用我的Web代码后面的代码。

此方法查找视频文件的位置。

然后,此文件位置将作为ashx调用的URL的一部分返回。

例如,web方法找到视频文件并以这种格式将字符串返回给ajax调用:

www.myserver.com?GetThisFile=MyLocationOfNewlyCreatedVideoFile.ashx.

然后在Ajax调用的成功事件中,我这样做:

event.preventDefault();
window.location = 'http://www.myserver.com?GetThisFile=Mylocationof newlycreatedvideofile.ashx';

如果我通过桌面上的浏览器调用它,它可以工作。 如果我在Android中通过网络浏览器这样做是行不通的。

Android设备中有一张SD卡。

是否可以使用此方法在Android中下载文件?

如果不是可以使用按钮下载文件?例如,我只有一个像这样的按钮:

    jQuery(function ($) {
        $("#btnDownloadReady").click(function () {
            event.preventDefault();
            window.location = 'http://MyUrl/File.mp4';
        });
    });

但它试图播放该文件。我只想将它保存到SD卡中。 (我知道mp4不会在Android上播放)。

1 个答案:

答案 0 :(得分:1)

如果没有服务器端脚本(Java),这可能是不可能的,因为根据jQuery中显示的命令序列,您似乎想在Android应用程序中打开该文件。桌面浏览器会自动知道保存文件的位置,因为浏览器已配置为执行此操作。但是,对于Android,因为您有自己的Web视图,所以您需要创建一个java程序来保存一个完整的文件,以便使用Download Manager for Android正确保存在目录或音乐目录中。