我有一個鏈接到所有的移動設備上,他們可以閱讀他們的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
請在下面輸入答案,並確認它是最好的以幫助未來的用戶 –