什麼下載管理器下載的文件大小限制在Android中,因爲我想下載的文件大小(700MB)它不是下載的,但是當我嘗試同樣的事情1MB或2MB它的下載完美。安卓:什麼是下載管理文件大小限制
因此,任何幫助,請
什麼下載管理器下載的文件大小限制在Android中,因爲我想下載的文件大小(700MB)它不是下載的,但是當我嘗試同樣的事情1MB或2MB它的下載完美。安卓:什麼是下載管理文件大小限制
因此,任何幫助,請
有對文件大小沒有限制的記錄,但可用磁盤空間將是一個可能的限制。
對於您的失敗下載,請使用DownloadManager.Query
檢查下載的COLUMN_STATUS
和COLUMN_REASON
值,以嘗試確定發生了什麼。
在this sample app中,我下載了一個帶有DownloadManager
的文件,並且我有一個允許您查看狀態信息的按鈕。
當您請求的下載,你會得到一個int
回來這是一個下載請求ID:
lastDownload=mgr.enqueue(req);
當用戶點擊相應的按鈕,我查詢下載狀態,日誌中的部分信息,以LogCat,並顯示Toast
:
private void queryStatus(View v) {
Cursor c=
mgr.query(new DownloadManager.Query().setFilterById(lastDownload));
if (c == null) {
Toast.makeText(getActivity(), R.string.download_not_found,
Toast.LENGTH_LONG).show();
}
else {
c.moveToFirst();
Log.d(getClass().getName(),
"COLUMN_ID: "
+ c.getLong(c.getColumnIndex(DownloadManager.COLUMN_ID)));
Log.d(getClass().getName(),
"COLUMN_BYTES_DOWNLOADED_SO_FAR: "
+ c.getLong(c.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)));
Log.d(getClass().getName(),
"COLUMN_LAST_MODIFIED_TIMESTAMP: "
+ c.getLong(c.getColumnIndex(DownloadManager.COLUMN_LAST_MODIFIED_TIMESTAMP)));
Log.d(getClass().getName(),
"COLUMN_LOCAL_URI: "
+ c.getString(c.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI)));
Log.d(getClass().getName(),
"COLUMN_STATUS: "
+ c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS)));
Log.d(getClass().getName(),
"COLUMN_REASON: "
+ c.getInt(c.getColumnIndex(DownloadManager.COLUMN_REASON)));
Toast.makeText(getActivity(), statusMessage(c), Toast.LENGTH_LONG)
.show();
c.close();
}
}
private String statusMessage(Cursor c) {
String msg="???";
switch (c.getInt(c.getColumnIndex(DownloadManager.COLUMN_STATUS))) {
case DownloadManager.STATUS_FAILED:
msg=getActivity().getString(R.string.download_failed);
break;
case DownloadManager.STATUS_PAUSED:
msg=getActivity().getString(R.string.download_paused);
break;
case DownloadManager.STATUS_PENDING:
msg=getActivity().getString(R.string.download_pending);
break;
case DownloadManager.STATUS_RUNNING:
msg=getActivity().getString(R.string.download_in_progress);
break;
case DownloadManager.STATUS_SUCCESSFUL:
msg=getActivity().getString(R.string.download_complete);
break;
default:
msg=
getActivity().getString(R.string.download_is_nowhere_in_sight);
break;
}
return(msg);
}
所以請你能給我一個例子!? –
所以我應該把這2種方法? –
@ M.Honi:你問過一個例子。我給你一個。學習這個例子並將其應用於自己的情況是你的工作。 – CommonsWare
我認爲這取決於設備,操作系統等。您是否嘗試檢查下載的錯誤代碼? –
我怎麼知道錯誤代碼? –
http://developer.android.com/reference/android/app/DownloadManager.html –