У меня возникла странная проблема с DownloadManager
, загрузка прошла успешно, но файл не был сохранен.DownloadManager download завершен, но файл не сохранен
Так что это мой код:
try {
DownloadManager manager = (DownloadManager) context.getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
request.setAllowedOverRoaming(false);
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_HIDDEN);
request.setDestinationInExternalFilesDir(context, /temp/, "test.mp4");
final long downloadId = manager.enqueue(request);
boolean downloading = true;
while (downloading) {
DownloadManager.Query query = new DownloadManager.Query();
query.setFilterById(downloadId);
Cursor cursor = manager.query(query);
cursor.moveToFirst();
int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS));
int bytesDownloaded = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR));
int bytesTotal = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_TOTAL_SIZE_BYTES));
if(status==DownloadManager.STATUS_SUCCESSFUL){
Log.i("Progress", "success");
downloading = false;
}
final int progress = (int) ((bytesDownloaded * 100l)/bytesTotal);
cursor.close();
subscriber.onNext(progress);
}
subscriber.onCompleted();
}catch (Exception e){
subscriber.onError(e);
}
Я включил WRITE_EXTERNAL_STORAGE
на мой манифест тоже. Я попытался сменить каталог на Environment.DIRECTORY_DOWNLOADS
, но файл по-прежнему не сохраняется в каталоге загрузки. Я попытался найти его на /Android/data/<my package>/
, и загруженный файл там тоже не был. Итак, что случилось с моим кодом?
Дополнительно: в логе показывает, что загрузка выполнена.
Вы указали путь к папке '/ temp /' во внешнем хранилище. Вы проверили там? – Rohit5k2
@ Rohit5k2 я сделал, не там тоже ... –
Проверьте это http://www.gadgetsaint.com/android/download-manager/#.WSK0Yut96Hs – ASP