diff options
author | Zhao Wei Liew <zhaoweiliew@gmail.com> | 2016-10-01 19:36:07 +0800 |
---|---|---|
committer | Luca Stefani <luca.stefani.ge1@gmail.com> | 2018-08-30 15:28:58 +0200 |
commit | c24efa3b43552d60ee1c6c75060da9d2ed218be1 (patch) | |
tree | 4dfbf8971c698afd9ccaee2af47febabb9852648 /ui/src | |
parent | e26043624c3199ccb8f2c566d0eb7e76bee77f3f (diff) | |
download | android_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.tar.gz android_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.tar.bz2 android_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.zip |
DownloadProvider: Add support for manual pause/resume
Implement the following features:
- Manually pause/resume individual downloads in DownloadManager
- Manually pause/resume all downloads in notification
Based on commit ecd609e7017b8a69688bbae25c17d878ea305f19.
Change-Id: I433cdee2de8b3add0248bbb0a9d02f8da4e5bb38
Diffstat (limited to 'ui/src')
-rw-r--r-- | ui/src/com/android/providers/downloads/ui/TrampolineActivity.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java index 41d7187a..01f3fcc8 100644 --- a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java +++ b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java @@ -94,14 +94,28 @@ public class TrampolineActivity extends Activity { Log.d(Constants.TAG, "Found " + id + " with status " + status + ", reason " + reason); switch (status) { case DownloadManager.STATUS_PENDING: - case DownloadManager.STATUS_RUNNING: sendRunningDownloadClickedBroadcast(id); finish(); break; + case DownloadManager.STATUS_RUNNING: + // Pause and resume download manually + dm.pauseDownload(id); + finish(); + break; + case DownloadManager.STATUS_PAUSED: if (reason == DownloadManager.PAUSED_QUEUED_FOR_WIFI) { PausedDialogFragment.show(getFragmentManager(), id, size); + } else if (reason == DownloadManager.PAUSED_MANUAL) { + // Pause and resume download manually + dm.resumeDownload(id); + Intent intent = new Intent(Constants.ACTION_RESUME); + intent.setClassName("com.android.providers.downloads", + "com.android.providers.downloads.DownloadReceiver"); + intent.putExtra(DownloadManager.EXTRA_DOWNLOAD_ID, id); + sendBroadcast(intent); + finish(); } else { sendRunningDownloadClickedBroadcast(id); finish(); |