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"