Enter minimal boot mode when booting encrypted

Bug: 5233488
Change-Id: Iba7a41c69af2387594d2be562d587918cd17a348
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index 977dd6f..cdefa00 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -65,6 +65,7 @@
 class ServerThread extends Thread {
     private static final String TAG = "SystemServer";
     private static final String ENCRYPTING_STATE = "trigger_restart_min_framework";
+    private static final String ENCRYPTED_STATE = "1";
 
     ContentResolver mContentResolver;
 
@@ -150,10 +151,15 @@
             Slog.i(TAG, "Package Manager");
             // Only run "core" apps if we're encrypting the device.
             String cryptState = SystemProperties.get("vold.decrypt");
-            boolean onlyCore = ENCRYPTING_STATE.equals(cryptState);
-            if (onlyCore) {
+            boolean onlyCore = false;
+            if (ENCRYPTING_STATE.equals(cryptState)) {
                 Slog.w(TAG, "Detected encryption in progress - only parsing core apps");
+                onlyCore = true;
+            } else if (ENCRYPTED_STATE.equals(cryptState)) {
+                Slog.w(TAG, "Device encrypted - only parsing core apps");
+                onlyCore = true;
             }
+
             pm = PackageManagerService.main(context,
                     factoryTest != SystemServer.FACTORY_TEST_OFF,
                     onlyCore);