我有一个链接到所有的移动设备上,他们可以阅读他们的MP3下载。 我也有一个Android 2.3.4的宏碁E320,我想通过点击我的链接下载我的mp3(网络服务器Apache;这是该链接背后的一些PHP源代码)。从网络下载MP3与Android失败
我试着用黑莓手机,我拿到了这个文件。 我用我的火狐浏览器与Android三星Galaxy S的用户代理一起试用过,我收到了这个文件。 我用我的宏基E320与Android 2.3.4相同,并且...我没有得到该文件。
我很明显肯定来自操作系统,明天我会尝试使用Windows Phone,但我很肯定这会起作用。
这里是我的片源下载:
<?php
// assume that all variables are correctly set
header("Pragma: public");
header("Expires: 0");
header("Cache-Control:");
header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Type: audio/mpeg");
header('Content-Disposition: attachment; filename="'.$filename.'";');
header("Content-Transfer-Encoding: binary");
header('Content-Range: ' . $download_range);
header('Content-Length: ' . $download_size);
readfile($filename);
?>
谢谢你,如果你有任何想法,为什么这个代码不会在Android手机上运行。
编辑:我试着与Windows手机操作系统的HTC。下载没有开始,但我可以看到我的命中的apache日志...它似乎是Android并不孤单...
第二次编辑:我finnaly找到它:有一个与Android完成预先获取因为一次性令牌而杀死我的下载。 感谢所有
您是否确认E320实际上传输了全部字节,或者甚至是全部打开了服务器? (检查访问日志)。 –
@MarcB我只是看访问日志,是的,我可以看到我的3个服务器中的一个(我负载平衡)。我也检查了$ download_range == $ download_size == filesize($ filename)。我终于确认$ filename是绝对路径... – niconoe
请在下面输入答案,并确认它是最好的以帮助未来的用户 –