summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Rubin Xu <rubinxu@google.com> 2016-04-20 17:09:38 +0100
committer Rubin Xu <rubinxu@google.com> 2016-04-20 17:09:38 +0100
commitbf67c9c1164bffa1dbaaaf72233e8ab5a1d2fd67 (patch)
tree1e8828ecafbab87d3b14a8530e85b9f865c5d09b
parent49425d612cee3864a316e9ecb6ec3faeae519b1e (diff)
Regenerate ApplicationInfo if package suspend state is changed.
Bug: 28184597 Change-Id: Ie3d50630b8946299128d599f77dce31150bc7a6c
-rw-r--r--core/java/android/content/pm/PackageParser.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java
index bb8bca414ed1..bfdd20c25a52 100644
--- a/core/java/android/content/pm/PackageParser.java
+++ b/core/java/android/content/pm/PackageParser.java
@@ -85,6 +85,7 @@ import static android.content.pm.ActivityInfo.RESIZE_MODE_RESIZEABLE;
import static android.content.pm.ActivityInfo.RESIZE_MODE_RESIZEABLE_AND_PIPABLE;
import static android.content.pm.ActivityInfo.RESIZE_MODE_UNRESIZEABLE;
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
+import static android.content.pm.ApplicationInfo.FLAG_SUSPENDED;
import static android.content.pm.ApplicationInfo.PRIVATE_FLAG_RESIZEABLE_ACTIVITIES;
import static android.content.pm.PackageManager.INSTALL_PARSE_FAILED_BAD_MANIFEST;
import static android.content.pm.PackageManager.INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME;
@@ -5279,6 +5280,10 @@ public class PackageParser {
return true;
}
}
+ boolean suspended = (p.applicationInfo.flags & FLAG_SUSPENDED) != 0;
+ if (state.suspended != suspended) {
+ return true;
+ }
if (!state.installed || state.hidden) {
return true;
}