Android默认浏览器不能从本地PC下载txt文件


Android default browser doesn't download a .txt file from PC localhost

我用运行在Wamp Server上的PHP编写了一个脚本,该脚本强制下载一个.txt文件。脚本如下所示:

header("Content-Type: application/octet-stream");
$newfile = "data.txt";
header("Content-Disposition: attachment; filename=" . urlencode($newfile));   
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Description: File Transfer");            
header("Content-Length: " . filesize($newfile));
flush(); // this doesn't really matter.
$fp = fopen($newfile, "r");
while (!feof($fp))
{
    echo fread($fp, 65536);
    flush(); // this is essential for large downloads
} 
fclose($fp);

代码运行正常

但问题是,我已经将我的Android设备连接到PC上,并且可以使用任何其他浏览器下载这个文件,但不是Android默认Web浏览器。

有人知道为什么在默认浏览器上下载失败吗?但是Android上可以从其他地方下载吗?

由于某些原因,Android浏览器对HTTP标头非常挑剔。

本页将给你一些关于这件事的见解:http://www.digiblog.de/2011/04/android-and-the-download-file-headers/

要引用页面的一部分,如果使用这行代码,它可能无法工作。

Content-Type: application/force-download