2
因此,我使用下載管理器在我的應用程序中下載多個文件。我需要這些文件在開始某個活動之前完成下載。我如何檢查是否有活動的下載,所以我可以告訴用戶等待下載完成。然後,當它們完成時,我需要使按鈕可見。我已經使用了這個,甚至自己嘗試了一些代碼(一味地),沒有任何工作。如果有人能讓我朝正確的方向發展,我會很感激。檢查下載是否有效
因此,我使用下載管理器在我的應用程序中下載多個文件。我需要這些文件在開始某個活動之前完成下載。我如何檢查是否有活動的下載,所以我可以告訴用戶等待下載完成。然後,當它們完成時,我需要使按鈕可見。我已經使用了這個,甚至自己嘗試了一些代碼(一味地),沒有任何工作。如果有人能讓我朝正確的方向發展,我會很感激。檢查下載是否有效
使用query()
查詢下載。當您致電enqueue()
時,返回值是下載的ID。您可以通過狀態以及查詢:
Cursor c = downloadManager.query(new DownloadManager.Query()
.setFilterByStatus(DownloadManager.STATUS_PAUSED
| DownloadManager.STATUS_PENDING
| DownloadManager.STATUS_RUNNING));
當下載完成時收到通知,註冊BroadcastReceiver
爲ACTION_DOWNLOAD_COMPLETE
:
BroadcastReceiver onComplete = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// do something
}
};
registerReceiver(onComplete, new IntentFilter(
DownloadManager.ACTION_DOWNLOAD_COMPLETE));
請注意,您也應該監聽ACTION_NOTIFICATION_CLICKED
廣播時知道用戶點擊了運行下載的通知。