Скачать менеджер загрузки дважды

У меня есть следующая проблема: всякий раз, когда я загружаю файл с DownloadManager, он загружается дважды (сохраняется в моде «filename.extension» и «filename-1.extension»). Вот мой код:

public void download() { Request request = new Request(Uri.parse(_wrapper.getURL())); request.setTitle(getFileName(_wrapper.getURL())); request.setVisibleInDownloadsUi(false); request.setDestinationInExternalFilesDir(_context, null, "/" + getFileName(_wrapper.getURL())); _downloadID = _downloadManager.enqueue(request); } public BroadcastReceiver getDownloadFinishedBroadcastReceiver() { BroadcastReceiver receiver = new BroadcastReceiver() { @Override public void onReceive(Context pContext, Intent pIntent) { String action = pIntent.getAction(); if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) { Query query = new Query(); query.setFilterById(_downloadID); Cursor cursor = _downloadManager.query(query); if (cursor.moveToFirst()) { File file = new File(ScruloidConstants.APPLICATION_DIRECTORY); int status = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_STATUS)); if (status == DownloadManager.STATUS_SUCCESSFUL) { String path = cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME)); _wrapper.setFilePath(path); _wrapper.setLastDownloaded(new Date()); if (_listener != null) { _listener.onDownloadProjectTaskFinished(new TaskResult<ProjectWrapper>(_wrapper)); } } else if (status == DownloadManager.STATUS_FAILED) { int reason = cursor.getInt(cursor.getColumnIndex(DownloadManager.COLUMN_REASON)); DownloadFailedException ex = new DownloadFailedException(reason); if (_listener != null) { _listener.onDownloadProjectTaskFinished(new TaskResult<ProjectWrapper>(ex)); } } } } } }; return receiver; } 

ProjectWrapper _wrapper – это просто класс, который содержит данные, и в этом нет никакой логики. _listener просто отображает на методе обратного вызова небольшое сообщение Toast. Я отлаживал свое приложение, чтобы заставить shure метод download() вызывается только один раз. Надеюсь, вы можете помочь мне найти ошибку.

К сожалению, DownloadManager неисправен и не работает правильно на всех устройствах. О вашей проблеме сообщается здесь: https://code.google.com/p/android/issues/detail?id=18462

Intereting Posts
Возможно ли подключить устройство Android Wear с другим устройством BLE напрямую без взаимодействия с телефонным устройством? GlClearColor не работает правильно (android opengl) Разбор идентификатора строки с SugarORM и GSON JetBrain Idea андроидный xml-элемент не разрешен здесь Невозможно использовать android: icon = "@ mipmap / ic_launcher" в Manifest после игровых сервисов 7.5.0 Свертывание панели инструментов. Как адаптировать настраиваемый макет вместо стандартного ImageView Как объединить аудио и видео файлы в Android Android – SensorManager странное поведение getOrientation Как загрузить ImageView из файла png? Подключение WIFI к WIFI с помощью Android Выполнение андроидной студии не выполнено для исключения процесса задачи для idk-1.8 Написание исключений для посылки в подписанном приложении Как приложение facebook реализует перетаскиваемую плавающую кнопку Как получить приложение из контекста Удаление зеленого индикатора Android ToggleButton