OSDN Git Service

Install non-EA providers once user is unlocked.
authorJeff Sharkey <jsharkey@android.com>
Sat, 9 Jan 2016 23:58:14 +0000 (16:58 -0700)
committerJeff Sharkey <jsharkey@android.com>
Sun, 10 Jan 2016 02:28:09 +0000 (19:28 -0700)
commit2bd31dbd023a11d90061c7b6831dd06454c928af
tree3588c5aed6f3f6d70f9b5e712deeeef9ef80470c
parent3ea44a52f00d0e359d48969663e6691a5d8bdae7
Install non-EA providers once user is unlocked.

When starting encryption-aware apps while the device is locked, we
can only spin up ContentProviders that have been marked as
encryption-aware.  Once the user is unlocked, we need to go back and
install non-encryption-aware providers in already running apps.

Fix bugs in getPackageInfo() where only one of the various MATCH_
flags was being consulted (!).  Move matching logic to single unified
location in PackageUserState so we have consistent behavior.

Fix another class of bugs where Safe Mode wasn't correctly filtering
package details (!).  These bugs are fixed by splicing in the new
MATCH_SYSTEM_ONLY flag as part of state-based flag mutation that was
added for encryption.

Bug: 25944787
Change-Id: I39c8da74b1f9ba944cc817176983f50ba322329c
core/java/android/content/pm/PackageParser.java
core/java/android/content/pm/PackageUserState.java
core/java/com/android/internal/util/ArrayUtils.java
services/core/java/com/android/server/am/ActivityManagerService.java
services/core/java/com/android/server/pm/PackageManagerService.java
services/core/java/com/android/server/pm/Settings.java