OSDN Git Service

DO NOT MERGE. Retain DownloadManager Uri grants when clearing.
authorJeff Sharkey <jsharkey@android.com>
Wed, 30 Nov 2016 23:07:00 +0000 (16:07 -0700)
committerJeff Sharkey <jsharkey@android.com>
Fri, 2 Dec 2016 00:04:32 +0000 (17:04 -0700)
commit6eee8e37fd06bd47dd19b8503bc30cc8ccaf72a7
tree8450e04e1c56c3a39ceded4e164b16adf1520c59
parentbfc7faaf353ea75ab04e986edbc79478679d40f6
DO NOT MERGE. Retain DownloadManager Uri grants when clearing.

As part of fixing a recent security issue, DownloadManager now needs
to issue Uri permission grants for all downloads.  However, if an app
that requested a download is upgraded or otherwise force-stopped,
the required permission grants are removed.

We could tell DownloadManager about the app being stopped, but that
would be racy (due to background broadcast), and waking it up would
degrade system health.  Instead, as a special case we now only
consider clearing DownloadManager permission grants when app data
is being cleared.

Bug: 3217254230537115
Test: builds, boots, app upgrade doesn't clear grants
Change-Id: I7e3d4546fd12bfe5f81b9fb9857ece58d574a6b9
(cherry picked from commit 23ec811266fb728cf159a90ce4882b3c9bac1887)
core/java/android/provider/Downloads.java
services/core/java/com/android/server/am/ActivityManagerService.java