2012-05-29 54 views
0

我有一個鏈接到所有的移動設備上,他們可以閱讀他們的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完成預先獲取因爲一次性令牌而殺死我的下載。 感謝所有

+0

您是否確認E320實際上傳輸了全部字節,或者甚至是全部打開了服務器? (檢查訪問日誌)。 –

+0

@MarcB我只是看訪問日誌,是的,我可以看到我的3個服務器中的一個(我負載平衡)。我也檢查了$ download_range == $ download_size == filesize($ filename)。我終於確認$ filename是絕對路徑... – niconoe

+0

請在下面輸入答案,並確認它是最好的以幫助未來的用戶 –

回答

1

我終於找到了:

有一個預取與Android殺死我的下載完成,因爲一次使用的令牌。

謝謝大家。