1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4 * Copyright (c) 2014 Google Inc.
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18-->
19<manifest xmlns:android="http://schemas.android.com/apk/res/android"
20        xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
21        package="com.android.systemui"
22        android:sharedUserId="android.uid.systemui"
23        coreApp="true">
24
25    <!-- SysUI must be the one to define this permission; its name is
26         referenced by the core OS. -->
27    <permission android:name="android.permission.systemui.IDENTITY"
28        android:protectionLevel="signature" />
29
30    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
31    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
32    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
33    <!-- Used to read storage for all users -->
34    <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
35    <uses-permission android:name="android.permission.WAKE_LOCK" />
36
37    <uses-permission android:name="android.permission.INJECT_EVENTS" />
38    <uses-permission android:name="android.permission.DUMP" />
39    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
40
41    <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
42    <uses-permission android:name="android.permission.STATUS_BAR" />
43    <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
44    <uses-permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK" />
45
46    <uses-permission android:name="android.permission.MANAGE_USERS" />
47    <uses-permission android:name="android.permission.READ_PROFILE" />
48    <uses-permission android:name="android.permission.READ_CONTACTS" />
49    <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
50    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
51    <uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
52    <uses-permission android:name="android.permission.USE_RESERVED_DISK" />
53
54    <!-- Networking and telephony -->
55    <uses-permission android:name="android.permission.BLUETOOTH" />
56    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
57    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED" />
58    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
59    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
60    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
61    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
62    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
63    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
64    <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG" />
65    <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
66    <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
67    <uses-permission android:name="android.permission.NETWORK_SETTINGS" />
68    <uses-permission android:name="android.permission.TETHER_PRIVILEGED" />
69    <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" />
70    <uses-permission android:name="android.permission.REQUEST_NETWORK_SCORES" />
71    <uses-permission android:name="android.permission.CONTROL_VPN" />
72    <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS"/>
73    <!-- Physical hardware -->
74    <uses-permission android:name="android.permission.MANAGE_USB" />
75    <uses-permission android:name="android.permission.CONTROL_DISPLAY_BRIGHTNESS" />
76    <uses-permission android:name="android.permission.DEVICE_POWER" />
77    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
78    <uses-permission android:name="android.permission.MASTER_CLEAR" />
79    <uses-permission android:name="android.permission.VIBRATE" />
80
81    <!-- ActivityManager -->
82    <uses-permission android:name="android.permission.REAL_GET_TASKS" />
83    <uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
84    <uses-permission android:name="android.permission.REORDER_TASKS" />
85    <uses-permission android:name="android.permission.REMOVE_TASKS" />
86    <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
87    <uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY" />
88    <uses-permission android:name="android.permission.START_ANY_ACTIVITY" />
89    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
90    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
91    <uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" />
92    <uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
93    <uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
94    <uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT" />
95
96    <!-- WindowManager -->
97    <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
98    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
99    <uses-permission android:name="android.permission.READ_FRAME_BUFFER" />
100    <uses-permission android:name="android.permission.MANAGE_APP_TOKENS" />
101    <uses-permission android:name="android.permission.REGISTER_WINDOW_MANAGER_LISTENERS" />
102    <uses-permission android:name="android.permission.SET_ORIENTATION" />
103    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
104
105    <!-- DreamManager -->
106    <uses-permission android:name="android.permission.READ_DREAM_STATE" />
107    <uses-permission android:name="android.permission.WRITE_DREAM_STATE" />
108
109    <!-- Alarm clocks -->
110    <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
111
112    <!-- Keyguard -->
113    <uses-permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS" />
114    <uses-permission android:name="android.permission.CONTROL_KEYGUARD" />
115    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
116    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
117    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
118    <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
119    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
120    <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
121    <uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE" />
122    <uses-permission android:name="android.permission.TRUST_LISTENER" />
123    <uses-permission android:name="android.permission.USE_FINGERPRINT" />
124    <uses-permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT" />
125    <uses-permission android:name="android.permission.MANAGE_SLICE_PERMISSIONS" />
126
127    <!-- Needed for WallpaperManager.clear in ImageWallpaper.updateWallpaperLocked -->
128    <uses-permission android:name="android.permission.SET_WALLPAPER"/>
129
130    <!-- Recents -->
131    <uses-permission android:name="android.permission.BIND_APPWIDGET" />
132
133    <!-- Wifi Display -->
134    <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
135
136    <uses-permission android:name="android.permission.CAMERA" />
137
138    <!-- Screen Capturing -->
139    <uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION" />
140
141    <!-- Assist -->
142    <uses-permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE" />
143
144    <!-- Doze mode temp whitelisting for notification dispatching. -->
145    <uses-permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST" />
146
147    <!-- Listen for keyboard attachment / detachment -->
148    <uses-permission android:name="android.permission.TABLET_MODE" />
149
150    <!-- Self permission for internal broadcasts. -->
151    <permission android:name="com.android.systemui.permission.SELF"
152            android:protectionLevel="signature" />
153    <uses-permission android:name="com.android.systemui.permission.SELF" />
154
155    <permission android:name="com.android.systemui.permission.PLUGIN"
156            android:protectionLevel="signature" />
157
158    <!-- Adding Quick Settings tiles -->
159    <uses-permission android:name="android.permission.BIND_QUICK_SETTINGS_TILE" />
160
161    <!-- Block notifications inline notifications -->
162    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
163
164    <!-- Access battery information -->
165    <uses-permission android:name="android.permission.BATTERY_STATS" />
166
167    <!-- DevicePolicyManager get user restrictions -->
168    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS" />
169
170    <!-- TV picture-in-picture -->
171    <uses-permission android:name="android.permission.RECEIVE_MEDIA_RESOURCE_USAGE" />
172
173    <!-- DND access -->
174    <uses-permission android:name="android.permission.MANAGE_NOTIFICATIONS" />
175
176    <!-- It's like, reality, but, you know, virtual -->
177    <uses-permission android:name="android.permission.ACCESS_VR_MANAGER" />
178
179    <!-- the ability to rename notifications posted by other apps -->
180    <uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME" />
181
182    <!-- shortcut manager -->
183    <uses-permission android:name="android.permission.RESET_SHORTCUT_MANAGER_THROTTLING" />
184
185    <uses-permission android:name="android.permission.MODIFY_THEME_OVERLAY" />
186
187    <!-- accessibility -->
188    <uses-permission android:name="android.permission.MODIFY_ACCESSIBILITY_DATA" />
189
190    <!-- to control accessibility volume -->
191    <uses-permission android:name="android.permission.CHANGE_ACCESSIBILITY_VOLUME" />
192
193    <!-- to access ResolverRankerServices -->
194    <uses-permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE" />
195
196    <!-- to access instant apps -->
197    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS" />
198
199    <!-- to control remote app transitions -->
200    <uses-permission android:name="android.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS" />
201
202    <!-- to change themes - light or dark -->
203    <uses-permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES" />
204
205    <!-- Listen app op changes -->
206    <uses-permission android:name="android.permission.WATCH_APPOPS" />
207
208    <!-- to read and change hvac values in a car -->
209    <uses-permission android:name="android.car.permission.CONTROL_CAR_CLIMATE" />
210
211    <!-- Permission necessary to change car audio volume through CarAudioManager -->
212    <uses-permission android:name="android.car.permission.CAR_CONTROL_AUDIO_VOLUME" />
213
214    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS" />
215
216    <protected-broadcast android:name="com.android.settingslib.action.REGISTER_SLICE_RECEIVER" />
217    <protected-broadcast android:name="com.android.settingslib.action.UNREGISTER_SLICE_RECEIVER" />
218
219    <application
220        android:name=".SystemUIApplication"
221        android:persistent="true"
222        android:allowClearUserData="false"
223        android:allowBackup="false"
224        android:hardwareAccelerated="true"
225        android:label="@string/app_label"
226        android:icon="@drawable/icon"
227        android:process="com.android.systemui"
228        android:supportsRtl="true"
229        android:theme="@style/Theme.SystemUI"
230        android:defaultToDeviceProtectedStorage="true"
231        android:directBootAware="true"
232        android:appComponentFactory="android.support.v4.app.CoreComponentFactory">
233        <!-- Keep theme in sync with SystemUIApplication.onCreate().
234             Setting the theme on the application does not affect views inflated by services.
235             The application theme is set again from onCreate to take effect for those views. -->
236
237        <!-- Broadcast receiver that gets the broadcast at boot time and starts
238             up everything else.
239             TODO: Should have an android:permission attribute
240             -->
241        <service android:name="SystemUIService"
242            android:exported="true"
243        />
244
245        <!-- Recents depends on every user having their own SystemUI process, so on user switch,
246             ensure that the process is created by starting this service.
247             -->
248        <service android:name="SystemUISecondaryUserService"
249            android:exported="true"
250            android:permission="com.android.systemui.permission.SELF" />
251
252
253        <!-- started from PhoneWindowManager
254             TODO: Should have an android:permission attribute -->
255        <service android:name=".screenshot.TakeScreenshotService"
256            android:process=":screenshot"
257            android:exported="false" />
258
259        <!-- Called from PhoneWindowManager -->
260        <receiver android:name=".screenshot.ScreenshotServiceErrorReceiver"
261            android:process=":screenshot"
262            android:exported="false">
263            <intent-filter>
264                <action android:name="com.android.systemui.screenshot.SHOW_ERROR" />
265            </intent-filter>
266        </receiver>
267
268        <receiver android:name=".SysuiRestartReceiver"
269            android:exported="false">
270            <intent-filter>
271                <action android:name="com.android.systemui.action.RESTART" />
272
273                <data android:scheme="package" />
274            </intent-filter>
275        </receiver>
276
277        <service android:name=".ImageWallpaper"
278                android:permission="android.permission.BIND_WALLPAPER"
279                android:exported="true" />
280
281        <activity android:name=".tuner.TunerActivity"
282                  android:enabled="false"
283                  android:icon="@drawable/tuner"
284                  android:theme="@style/TunerSettings"
285                  android:label="@string/system_ui_tuner"
286                  android:process=":tuner"
287                  android:exported="true">
288            <intent-filter>
289                <action android:name="com.android.settings.action.EXTRA_SETTINGS" />
290                <category android:name="android.intent.category.DEFAULT" />
291            </intent-filter>
292            <meta-data android:name="com.android.settings.category"
293                    android:value="com.android.settings.category.ia.system" />
294            <meta-data android:name="com.android.settings.summary"
295                    android:resource="@string/summary_empty"/>
296        </activity>
297
298        <activity-alias android:name=".DemoMode"
299                  android:targetActivity=".tuner.TunerActivity"
300                  android:icon="@drawable/tuner"
301                  android:theme="@style/TunerSettings"
302                  android:label="@string/demo_mode"
303                  android:process=":tuner"
304                  android:exported="true">
305            <intent-filter>
306                <action android:name="com.android.settings.action.DEMO_MODE" />
307                <category android:name="android.intent.category.DEFAULT" />
308            </intent-filter>
309        </activity-alias>
310
311        <!-- Service used by secondary users to register themselves with the system user. -->
312        <service android:name=".recents.RecentsSystemUserService"
313            android:exported="false"
314            android:permission="com.android.systemui.permission.SELF" />
315
316        <!-- Alternate Recents -->
317        <activity android:name=".recents.RecentsActivity"
318                  android:label="@string/accessibility_desc_recent_apps"
319                  android:exported="false"
320                  android:launchMode="singleInstance"
321                  android:excludeFromRecents="true"
322                  android:stateNotNeeded="true"
323                  android:resumeWhilePausing="true"
324                  android:resizeableActivity="true"
325                  android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboard|keyboardHidden"
326                  android:theme="@style/RecentsTheme.Wallpaper">
327            <intent-filter>
328                <action android:name="com.android.systemui.recents.TOGGLE_RECENTS" />
329            </intent-filter>
330        </activity>
331
332        <activity
333            android:name=".stackdivider.ForcedResizableInfoActivity"
334            android:theme="@style/ForcedResizableTheme"
335            android:excludeFromRecents="true"
336            android:stateNotNeeded="true"
337            android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout"
338            android:exported="false">
339        </activity>
340
341        <!-- Springboard for launching the share activity -->
342        <receiver android:name=".screenshot.GlobalScreenshot$ScreenshotActionReceiver"
343            android:process=":screenshot"
344            android:exported="false" />
345
346        <!-- Callback for dismissing screenshot notification after a share target is picked -->
347        <receiver android:name=".screenshot.GlobalScreenshot$TargetChosenReceiver"
348            android:process=":screenshot"
349            android:exported="false" />
350
351        <!-- Callback for deleting screenshot notification -->
352        <receiver android:name=".screenshot.GlobalScreenshot$DeleteScreenshotReceiver"
353            android:process=":screenshot"
354            android:exported="false" />
355
356        <!-- started from UsbDeviceSettingsManager -->
357        <activity android:name=".usb.UsbConfirmActivity"
358            android:exported="true"
359            android:permission="android.permission.MANAGE_USB"
360            android:theme="@style/Theme.SystemUI.Dialog.Alert"
361            android:finishOnCloseSystemDialogs="true"
362            android:excludeFromRecents="true">
363        </activity>
364
365        <!-- started from UsbDeviceSettingsManager -->
366        <activity android:name=".usb.UsbPermissionActivity"
367            android:exported="true"
368            android:permission="android.permission.MANAGE_USB"
369            android:theme="@style/Theme.SystemUI.Dialog.Alert"
370            android:finishOnCloseSystemDialogs="true"
371            android:excludeFromRecents="true">
372        </activity>
373
374        <!-- started from UsbDeviceSettingsManager -->
375        <activity android:name=".usb.UsbResolverActivity"
376            android:exported="true"
377            android:permission="android.permission.MANAGE_USB"
378            android:theme="@style/Theme.SystemUI.Dialog.Alert"
379            android:finishOnCloseSystemDialogs="true"
380            android:excludeFromRecents="true">
381        </activity>
382
383        <!-- started from UsbDeviceSettingsManager -->
384        <activity android:name=".usb.UsbAccessoryUriActivity"
385            android:exported="true"
386            android:permission="android.permission.MANAGE_USB"
387            android:theme="@style/Theme.SystemUI.Dialog.Alert"
388            android:finishOnCloseSystemDialogs="true"
389            android:excludeFromRecents="true">
390        </activity>
391
392        <!-- started from UsbDebuggingManager -->
393        <activity android:name=".usb.UsbDebuggingActivity"
394            android:permission="android.permission.MANAGE_USB"
395            android:theme="@style/Theme.SystemUI.Dialog.Alert"
396            android:finishOnCloseSystemDialogs="true"
397            android:excludeFromRecents="true">
398        </activity>
399        <activity-alias
400            android:name=".UsbDebuggingActivityAlias"
401            android:permission="android.permission.DUMP"
402            android:targetActivity=".usb.UsbDebuggingActivity"
403            android:exported="true">
404        </activity-alias>
405        <activity android:name=".usb.UsbDebuggingSecondaryUserActivity"
406            android:theme="@style/Theme.SystemUI.Dialog.Alert"
407            android:finishOnCloseSystemDialogs="true"
408            android:excludeFromRecents="true">
409        </activity>
410
411        <!-- started from NetworkPolicyManagerService -->
412        <activity
413            android:name=".net.NetworkOverLimitActivity"
414            android:exported="true"
415            android:permission="android.permission.MANAGE_NETWORK_POLICY"
416            android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
417            android:finishOnCloseSystemDialogs="true"
418            android:launchMode="singleTop"
419            android:taskAffinity="com.android.systemui.net"
420            android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation"
421            android:excludeFromRecents="true" />
422
423        <!-- started from MediaProjectionManager -->
424        <activity
425            android:name=".media.MediaProjectionPermissionActivity"
426            android:exported="true"
427            android:theme="@style/Theme.AlertDialogHost"
428            android:finishOnCloseSystemDialogs="true"
429            android:launchMode="singleTop"
430            android:excludeFromRecents="true"
431            android:visibleToInstantApps="true"/>
432
433        <!-- started from PipUI -->
434        <activity
435            android:name=".pip.tv.PipMenuActivity"
436            android:permission="com.android.systemui.permission.SELF"
437            android:exported="false"
438            android:theme="@style/PipTheme"
439            android:launchMode="singleTop"
440            android:taskAffinity=""
441            android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|locale|layoutDirection"
442            android:resizeableActivity="true"
443            android:supportsPictureInPicture="true"
444            androidprv:alwaysFocusable="true"
445            android:excludeFromRecents="true" />
446
447        <activity
448            android:name=".pip.phone.PipMenuActivity"
449            android:permission="com.android.systemui.permission.SELF"
450            android:theme="@style/PipPhoneOverlayControlTheme"
451            android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout"
452            android:excludeFromRecents="true"
453            android:exported="false"
454            android:resizeableActivity="true"
455            android:supportsPictureInPicture="true"
456            android:stateNotNeeded="true"
457            android:taskAffinity=""
458            android:launchMode="singleTop"
459            androidprv:alwaysFocusable="true" />
460
461        <!-- started from SliceProvider -->
462        <activity android:name=".SlicePermissionActivity"
463            android:theme="@style/Theme.SystemUI.Dialog.Alert"
464            android:finishOnCloseSystemDialogs="true"
465            android:excludeFromRecents="true">
466            <intent-filter>
467                <action android:name="com.android.intent.action.REQUEST_SLICE_PERMISSION" />
468            </intent-filter>
469        </activity>
470
471        <!-- platform logo easter egg activity -->
472        <activity
473            android:name=".DessertCase"
474            android:exported="true"
475            android:label="@string/dessert_case"
476            android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
477            android:launchMode="singleInstance"
478            android:screenOrientation="locked"
479            android:process=":sweetsweetdesserts"
480            android:excludeFromRecents="true">
481            <intent-filter>
482                <action android:name="android.intent.action.MAIN" />
483                <category android:name="android.intent.category.DEFAULT" />
484            </intent-filter>
485        </activity>
486
487        <activity android:name=".egg.MLandActivity"
488                  android:theme="@android:style/Theme.Material.NoActionBar"
489                  android:exported="true"
490                  android:icon="@drawable/icon"
491                  android:label="@string/mland"
492                  android:launchMode="singleInstance"
493                  android:screenOrientation="locked"
494                  android:process=":sweetsweetdesserts"
495                  android:excludeFromRecents="true">
496            <intent-filter>
497                <action android:name="android.intent.action.MAIN"/>
498                <category android:name="android.intent.category.DEFAULT" />
499            </intent-filter>
500        </activity>
501
502        <!-- a gallery of delicious treats -->
503        <service
504            android:name=".DessertCaseDream"
505            android:exported="true"
506            android:label="@string/dessert_case"
507            android:permission="android.permission.BIND_DREAM_SERVICE"
508            android:enabled="false"
509            android:process=":sweetsweetdesserts"
510            >
511            <intent-filter>
512                <action android:name="android.service.dreams.DreamService" />
513                <category android:name="android.intent.category.DEFAULT" />
514            </intent-filter>
515        </service>
516
517        <service
518            android:name=".keyguard.KeyguardService"
519            android:exported="true"
520            android:enabled="@bool/config_enableKeyguardService" />
521
522        <activity android:name=".keyguard.WorkLockActivity"
523                  android:label="@string/accessibility_desc_work_lock"
524                  android:permission="android.permission.MANAGE_USERS"
525                  android:exported="false"
526                  android:excludeFromRecents="true"
527                  android:stateNotNeeded="true"
528                  android:resumeWhilePausing="true"
529                  android:theme="@android:style/Theme.Black.NoTitleBar">
530            <intent-filter>
531                <action android:name="android.app.action.CONFIRM_DEVICE_CREDENTIAL_WITH_USER" />
532                <category android:name="android.intent.category.DEFAULT" />
533            </intent-filter>
534        </activity>
535
536        <activity android:name=".Somnambulator"
537            android:label="@string/start_dreams"
538            android:icon="@mipmap/ic_launcher_dreams"
539            android:theme="@android:style/Theme.Wallpaper.NoTitleBar"
540            android:exported="true"
541            android:excludeFromRecents="true"
542            >
543            <!--
544            <intent-filter>
545                <action android:name="android.intent.action.CREATE_SHORTCUT" />
546                <category android:name="android.intent.category.DEFAULT" />
547            </intent-filter>
548            -->
549            <intent-filter>
550                <action android:name="android.intent.action.MAIN" />
551                <category android:name="android.intent.category.DEFAULT" />
552                <category android:name="android.intent.category.DESK_DOCK" />
553            </intent-filter>
554        </activity>
555
556        <activity
557            android:name=".settings.BrightnessDialog"
558            android:label="@string/quick_settings_brightness_dialog_title"
559            android:theme="@*android:style/Theme.DeviceDefault.QuickSettings.Dialog"
560            android:finishOnCloseSystemDialogs="true"
561            android:launchMode="singleInstance"
562            android:excludeFromRecents="true"
563            android:exported="true">
564            <intent-filter>
565                <action android:name="com.android.intent.action.SHOW_BRIGHTNESS_DIALOG" />
566                <category android:name="android.intent.category.DEFAULT" />
567            </intent-filter>
568        </activity>
569
570        <activity android:name=".ForegroundServicesDialog"
571            android:process=":fgservices"
572            android:excludeFromRecents="true"
573            android:launchMode="singleTop"
574            android:theme="@*android:style/Theme.DeviceDefault.Settings.Dialog">
575            <intent-filter android:priority="1">
576                <action android:name="android.settings.FOREGROUND_SERVICES_SETTINGS" />
577                <category android:name="android.intent.category.DEFAULT" />
578            </intent-filter>
579        </activity>
580
581        <!-- Doze with notifications, run in main sysui process for every user  -->
582        <service
583            android:name=".doze.DozeService"
584            android:exported="true"
585            android:singleUser="true"
586            android:permission="android.permission.BIND_DREAM_SERVICE" />
587
588        <receiver
589            android:name=".tuner.TunerService$ClearReceiver"
590            android:exported="false">
591            <intent-filter>
592                <action android:name="com.android.systemui.action.CLEAR_TUNER" />
593            </intent-filter>
594        </receiver>
595
596        <provider
597            android:name="android.support.v4.content.FileProvider"
598            android:authorities="com.android.systemui.fileprovider"
599            android:exported="false"
600            android:grantUriPermissions="true">
601            <meta-data
602                android:name="android.support.FILE_PROVIDER_PATHS"
603                android:resource="@xml/fileprovider" />
604        </provider>
605
606        <provider android:name=".keyguard.KeyguardSliceProvider"
607                  android:authorities="com.android.systemui.keyguard"
608                  android:grantUriPermissions="true"
609                  android:exported="true">
610        </provider>
611
612        <receiver
613            android:name=".statusbar.KeyboardShortcutsReceiver">
614            <intent-filter>
615                <action android:name="com.android.intent.action.DISMISS_KEYBOARD_SHORTCUTS" />
616                <action android:name="com.android.intent.action.SHOW_KEYBOARD_SHORTCUTS" />
617            </intent-filter>
618        </receiver>
619
620    </application>
621</manifest>
622