Я использую класс менеджера загрузки Android. Мне нужно написать «Загрузка завершена» после завершения всех загрузок. Я пробовал кое-что, и это работает. Но здесь он пишет после того, как файл за файлом завершен. Мне нужно написать только один раз (После того, как все будет завершено). Я тоже пробовал без курсора. Но мне не удалось добиться.
public class DownloadReceiver extends BroadcastReceiver {
Context context;
@Override
public void onReceive(Context context, Intent intent) {
long receivedID = intent.getLongExtra(
DownloadManager.EXTRA_DOWNLOAD_ID, -1L);
DownloadManager mgr = (DownloadManager)
context.getSystemService(Context.DOWNLOAD_SERVICE);
DownloadManager.Query query = new DownloadManager.Query();
query.setFilterById(receivedID);
Cursor cur = mgr.query(query);
int index = cur.getColumnIndex(DownloadManager.COLUMN_STATUS);
if(cur.) {
String filePath = cur.getString(cur.getColumnIndex(DownloadManager.COLUMN_TITLE));
if(cur.getInt(index) == DownloadManager.STATUS_SUCCESSFUL){
DatabaseHandler dh = new DatabaseHandler(context);
dh.addDownloadComplete(new DownloadComplete("Download Complete"));
}
}
cur.close();
}}