diff options
author | Jeff Sharkey <jsharkey@android.com> | 2012-08-02 21:58:17 -0700 |
---|---|---|
committer | Jeff Sharkey <jsharkey@android.com> | 2012-11-09 15:40:00 -0800 |
commit | a40a349c0107660bfb4004467550725a3ca3ec97 (patch) | |
tree | 3fb1f96ad2d1da1d346fd32f239d1ee8ef149376 /src/com/android/providers/downloads/DownloadProvider.java | |
parent | 2fa007ef678b2283d47d007aa3dc91af683cc52c (diff) | |
download | android_packages_providers_DownloadProvider-a40a349c0107660bfb4004467550725a3ca3ec97.tar.gz android_packages_providers_DownloadProvider-a40a349c0107660bfb4004467550725a3ca3ec97.tar.bz2 android_packages_providers_DownloadProvider-a40a349c0107660bfb4004467550725a3ca3ec97.zip |
Rewrite of download notifications.
Switch to using new inbox-style notifications when collapsing multiple
downloads. Correctly handles clustering, including cancellation of
stale notifications. All notifications are now handled in a single
class, making it easier to reason about correctness.
Fixed bugs around handling of visibility flags. Move away from using
"int" as internal keys, since they can overflow. Started work for
time estimates, will finish in a future CL.
Explicitly pass all relevant IDs to DownloadReceiver instead of doing
a second racy query. Fix StrictMode warnings when querying in
DownloadReceiver.
Bug: 6777872, 5463678, 6663547, 6967346, 6634261, 5608365
Change-Id: I5eb47b73b90b6250acec2ce5bf8d7a274ed9d3a9
Diffstat (limited to 'src/com/android/providers/downloads/DownloadProvider.java')
-rw-r--r-- | src/com/android/providers/downloads/DownloadProvider.java | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/src/com/android/providers/downloads/DownloadProvider.java b/src/com/android/providers/downloads/DownloadProvider.java index 40ebd2bb..c554e41d 100644 --- a/src/com/android/providers/downloads/DownloadProvider.java +++ b/src/com/android/providers/downloads/DownloadProvider.java @@ -667,15 +667,10 @@ public final class DownloadProvider extends ContentProvider { Context context = getContext(); if (values.getAsInteger(Downloads.Impl.COLUMN_DESTINATION) == Downloads.Impl.DESTINATION_NON_DOWNLOADMANAGER_DOWNLOAD) { - // don't start downloadservice because it has nothing to do in this case. - // but does a completion notification need to be sent? + // When notification is requested, kick off service to process all + // relevant downloads. if (Downloads.Impl.isNotificationToBeDisplayed(vis)) { - DownloadNotification notifier = new DownloadNotification(context, mSystemFacade); - notifier.notificationForCompletedDownload(rowID, - values.getAsString(Downloads.Impl.COLUMN_TITLE), - Downloads.Impl.STATUS_SUCCESS, - Downloads.Impl.DESTINATION_NON_DOWNLOADMANAGER_DOWNLOAD, - lastMod); + context.startService(new Intent(context, DownloadService.class)); } } else { context.startService(new Intent(context, DownloadService.class)); |