Workaround to ensure that a SystemUI process is always available.

- For a non-primary user, this CL will ensure that the SystemUI process
  is started when we are switched to the user.  This allows us to
  maintain our current user-management model for Recents, which depends
  on this process for preloading and state management.

Bug: 27175589
Change-Id: Id985fc2876e6daf06f303b44c0f9d1d3fd377842
diff --git a/packages/SystemUI/AndroidManifest.xml b/packages/SystemUI/AndroidManifest.xml
index 9839446..e5411f3 100644
--- a/packages/SystemUI/AndroidManifest.xml
+++ b/packages/SystemUI/AndroidManifest.xml
@@ -184,6 +184,14 @@
             android:exported="true"
             />
 
+        <!-- Recents depends on every user having their own SystemUI process, so on user switch,
+             ensure that the process is created by starting this service.
+             -->
+        <service android:name="SystemUISecondaryUserService"
+            android:exported="true"
+            android:permission="com.android.systemui.permission.SELF" />
+
+
         <!-- started from PhoneWindowManager
              TODO: Should have an android:permission attribute -->
         <service android:name=".screenshot.TakeScreenshotService"