Я загружаю большие zip файлы с помощью Android DownloadManager. У меня есть listview, который показывает список всех zip файлов, и пользователь может нажать элемент, чтобы начать загрузку. За один раз можно загрузить только один элемент. Когда новый элемент списка начинает загружаться во время другой загрузки, я удаляю предыдущий идентификатор загрузки из очереди. Все работает нормально. Но иногда я получаю ERROR_FILE_ERROR на устройстве LG g2 OS 5.0.2. Вот код:
Uri uri = Uri.parse(path);
DownloadManager.Request request = new DownloadManager.Request(uri);
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_WIFI | DownloadManager.Request.NETWORK_MOBILE);
request.setAllowedOverRoaming(false);
request.setVisibleInDownloadsUi(false);
String localStorageBasePath = FileUtils.zipDirectory(context).getAbsolutePath() + File.separator + fileName;
Uri localStorageBasePathUri = Uri.fromFile(new File(localStorageBasePath));
request.setDestinationUri(localStorageBasePathUri);
Long downloadId = downloadManager.enqueue(request);
Он отлично работает на других устройствах, включая nexus 5, samsung s3, note2, huawei и т.д. Когда я запускаю загрузку файла, он мгновенно останавливается/не работает с причиной DownloadManager.ERROR_FILE_ERROR. Я попытался удалить/очистить каталог внешнего хранилища, убедившись, что его ошибка ERROR_INSUFFICIENT_SPACE и т.д., Но это не сработало. Любая помощь?