1 <?xml version="1.0" encoding="utf-8"?>
4 * Copyright (c) 2014 Google Inc.
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
10 * http://www.apache.org/licenses/LICENSE-2.0
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.
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"
25 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
26 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
27 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
28 <uses-permission android:name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE" />
29 <uses-permission android:name="android.permission.WAKE_LOCK" />
31 <uses-permission android:name="android.permission.INJECT_EVENTS" />
32 <uses-permission android:name="android.permission.DUMP" />
33 <uses-permission android:name="android.permission.WRITE_SETTINGS" />
35 <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
36 <uses-permission android:name="android.permission.STATUS_BAR" />
37 <uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
38 <uses-permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK" />
40 <uses-permission android:name="android.permission.MANAGE_USERS" />
41 <uses-permission android:name="android.permission.READ_PROFILE" />
42 <uses-permission android:name="android.permission.READ_CONTACTS" />
43 <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
44 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
45 <uses-permission android:name="android.permission.GET_APP_OPS_STATS" />
47 <!-- Networking and telephony -->
48 <uses-permission android:name="android.permission.BLUETOOTH" />
49 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
50 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
51 <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
52 <uses-permission android:name="android.permission.READ_PHONE_STATE" />
53 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
54 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
55 <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
56 <uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL" />
57 <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" />
58 <uses-permission android:name="android.permission.CONTROL_VPN" />
60 <!-- Physical hardware -->
61 <uses-permission android:name="android.permission.MANAGE_USB" />
62 <uses-permission android:name="android.permission.DEVICE_POWER" />
63 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
64 <uses-permission android:name="android.permission.MASTER_CLEAR" />
65 <uses-permission android:name="android.permission.VIBRATE" />
67 <!-- ActivityManager -->
68 <uses-permission android:name="android.permission.REAL_GET_TASKS" />
69 <uses-permission android:name="android.permission.GET_DETAILED_TASKS" />
70 <uses-permission android:name="android.permission.REORDER_TASKS" />
71 <uses-permission android:name="android.permission.REMOVE_TASKS" />
72 <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
73 <uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY" />
74 <uses-permission android:name="android.permission.START_ANY_ACTIVITY" />
75 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
76 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
77 <uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO" />
78 <uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS" />
79 <uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS" />
81 <!-- WindowManager -->
82 <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
83 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
84 <uses-permission android:name="android.permission.READ_FRAME_BUFFER" />
85 <uses-permission android:name="android.permission.MANAGE_APP_TOKENS" />
86 <uses-permission android:name="android.permission.SET_ORIENTATION" />
87 <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
90 <uses-permission android:name="android.permission.READ_DREAM_STATE" />
91 <uses-permission android:name="android.permission.WRITE_DREAM_STATE" />
94 <uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
97 <uses-permission android:name="android.permission.CONTROL_KEYGUARD" />
98 <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
99 <uses-permission android:name="android.permission.GET_ACCOUNTS" />
100 <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
101 <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
102 <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
103 <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
104 <uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE" />
105 <uses-permission android:name="android.permission.TRUST_LISTENER" />
107 <!-- Needed for WallpaperManager.clear in ImageWallpaper.updateWallpaperLocked -->
108 <uses-permission android:name="android.permission.SET_WALLPAPER"/>
111 <uses-permission android:name="android.permission.BIND_APPWIDGET" />
113 <!-- Wifi Display -->
114 <uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY" />
116 <uses-permission android:name="android.permission.CAMERA" />
118 <!-- Screen Capturing -->
119 <uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION" />
122 android:name=".SystemUIApplication"
123 android:persistent="true"
124 android:allowClearUserData="false"
125 android:allowBackup="false"
126 android:hardwareAccelerated="true"
127 android:label="@string/app_label"
128 android:icon="@drawable/icon"
129 android:process="com.android.systemui"
130 android:supportsRtl="true"
131 android:theme="@style/systemui_theme">
132 <!-- Keep theme in sync with SystemUIApplication.onCreate().
133 Setting the theme on the application does not affect views inflated by services.
134 The application theme is set again from onCreate to take effect for those views. -->
136 <!-- Broadcast receiver that gets the broadcast at boot time and starts
138 TODO: Should have an android:permission attribute
140 <service android:name="SystemUIService"
141 android:exported="true"
144 <!-- started from PhoneWindowManager
145 TODO: Should have an android:permission attribute -->
146 <service android:name=".screenshot.TakeScreenshotService"
147 android:process=":screenshot"
148 android:exported="false" />
150 <service android:name=".LoadAverageService"
151 android:exported="true" />
153 <service android:name=".ImageWallpaper"
154 android:permission="android.permission.BIND_WALLPAPER"
155 android:exported="true" />
157 <receiver android:name=".BootReceiver" androidprv:primaryUserOnly="true">
158 <intent-filter android:priority="1000">
159 <action android:name="android.intent.action.BOOT_COMPLETED" />
163 <receiver android:name=".qs.tiles.HotspotTile$APChangedReceiver"
164 androidprv:primaryUserOnly="true">
166 <action android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
170 <activity android:name=".usb.UsbStorageActivity"
171 android:label="@*android:string/usb_storage_activity_title"
172 android:excludeFromRecents="true">
174 <activity android:name="com.android.internal.app.ExternalMediaFormatActivity"
175 android:theme="@*android:style/Theme.Dialog.Alert"
176 android:excludeFromRecents="true">
179 <activity android:name=".recent.RecentsActivity"
180 android:label="@string/accessibility_desc_recent_apps"
181 android:theme="@style/RecentsStyle"
182 android:excludeFromRecents="true"
183 android:launchMode="singleInstance"
184 android:resumeWhilePausing="true"
185 android:exported="true">
187 <action android:name="com.android.systemui.TOGGLE_RECENTS" />
192 android:name=".recent.RecentsPreloadReceiver"
193 android:exported="false">
195 <action android:name="com.android.systemui.recent.action.PRELOAD" />
196 <action android:name="com.android.systemui.recent.action.CANCEL_PRELOAD" />
200 <!-- Alternate Recents -->
201 <activity android:name=".recents.RecentsActivity"
202 android:label="@string/accessibility_desc_recent_apps"
203 android:exported="false"
204 android:launchMode="singleInstance"
205 android:excludeFromRecents="true"
206 android:stateNotNeeded="true"
207 android:resumeWhilePausing="true"
208 android:theme="@style/config_recents_activity_theme">
210 <action android:name="com.android.systemui.recents.TOGGLE_RECENTS" />
214 <receiver android:name=".recents.RecentsUserEventProxyReceiver"
215 android:exported="false">
217 <action android:name="com.android.systemui.recents.action.SHOW_RECENTS_FOR_USER" />
218 <action android:name="com.android.systemui.recents.action.HIDE_RECENTS_FOR_USER" />
219 <action android:name="com.android.systemui.recents.action.TOGGLE_RECENTS_FOR_USER" />
220 <action android:name="com.android.systemui.recents.action.PRELOAD_RECENTS_FOR_USER" />
221 <action android:name="com.android.systemui.recents.action.CONFIG_CHANGED_FOR_USER" />
225 <!-- started from UsbDeviceSettingsManager -->
226 <activity android:name=".usb.UsbConfirmActivity"
227 android:exported="true"
228 android:permission="android.permission.MANAGE_USB"
229 android:theme="@style/Theme.SystemUI.Dialog.Alert"
230 android:finishOnCloseSystemDialogs="true"
231 android:excludeFromRecents="true">
234 <!-- started from UsbDeviceSettingsManager -->
235 <activity android:name=".usb.UsbPermissionActivity"
236 android:exported="true"
237 android:permission="android.permission.MANAGE_USB"
238 android:theme="@style/Theme.SystemUI.Dialog.Alert"
239 android:finishOnCloseSystemDialogs="true"
240 android:excludeFromRecents="true">
243 <!-- started from UsbDeviceSettingsManager -->
244 <activity android:name=".usb.UsbResolverActivity"
245 android:exported="true"
246 android:permission="android.permission.MANAGE_USB"
247 android:theme="@style/Theme.SystemUI.Dialog.Alert"
248 android:finishOnCloseSystemDialogs="true"
249 android:excludeFromRecents="true">
252 <!-- started from UsbDeviceSettingsManager -->
253 <activity android:name=".usb.UsbAccessoryUriActivity"
254 android:exported="true"
255 android:permission="android.permission.MANAGE_USB"
256 android:theme="@style/Theme.SystemUI.Dialog.Alert"
257 android:finishOnCloseSystemDialogs="true"
258 android:excludeFromRecents="true">
261 <!-- started from UsbDebuggingManager -->
262 <activity android:name=".usb.UsbDebuggingActivity"
263 android:permission="android.permission.MANAGE_USB"
264 android:theme="@style/Theme.SystemUI.Dialog.Alert"
265 android:finishOnCloseSystemDialogs="true"
266 android:excludeFromRecents="true">
269 <!-- started from NetworkPolicyManagerService -->
271 android:name=".net.NetworkOverLimitActivity"
272 android:exported="true"
273 android:permission="android.permission.MANAGE_NETWORK_POLICY"
274 android:theme="@android:style/Theme.DeviceDefault.Light.Panel"
275 android:finishOnCloseSystemDialogs="true"
276 android:launchMode="singleTop"
277 android:taskAffinity="com.android.systemui.net"
278 android:excludeFromRecents="true" />
280 <!-- started from MediaProjectionManager -->
282 android:name=".media.MediaProjectionPermissionActivity"
283 android:exported="true"
284 android:theme="@style/Theme.AlertDialogHost"
285 android:finishOnCloseSystemDialogs="true"
286 android:launchMode="singleTop"
287 android:excludeFromRecents="true" />
289 <!-- platform logo easter egg activity -->
291 android:name=".DessertCase"
292 android:exported="true"
293 android:label="@string/dessert_case"
294 android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
295 android:hardwareAccelerated="true"
296 android:launchMode="singleInstance"
297 android:screenOrientation="locked"
298 android:process=":sweetsweetdesserts"
299 android:excludeFromRecents="true">
301 <action android:name="android.intent.action.MAIN" />
302 <category android:name="android.intent.category.DEFAULT" />
306 <activity android:name=".egg.LLandActivity"
307 android:theme="@android:style/Theme.Material.Light.NoActionBar"
308 android:exported="true"
309 android:label="@string/lland"
310 android:hardwareAccelerated="true"
311 android:launchMode="singleInstance"
312 android:screenOrientation="locked"
313 android:process=":sweetsweetdesserts"
314 android:excludeFromRecents="true">
316 <action android:name="android.intent.action.MAIN"/>
317 <category android:name="android.intent.category.DEFAULT" />
318 <category android:name="com.android.internal.category.PLATLOGO" />
322 <!-- a gallery of delicious treats -->
324 android:name=".DessertCaseDream"
325 android:exported="true"
326 android:label="@string/dessert_case"
327 android:permission="android.permission.BIND_DREAM_SERVICE"
328 android:enabled="false"
329 android:process=":sweetsweetdesserts"
332 <action android:name="android.service.dreams.DreamService" />
333 <category android:name="android.intent.category.DEFAULT" />
338 android:name=".keyguard.KeyguardService"
339 android:exported="true"
340 android:enabled="@bool/config_enableKeyguardService" />
342 <activity android:name=".Somnambulator"
343 android:label="@string/start_dreams"
344 android:icon="@mipmap/ic_launcher_dreams"
345 android:theme="@android:style/Theme.Wallpaper.NoTitleBar"
346 android:exported="true"
347 android:excludeFromRecents="true"
351 <action android:name="android.intent.action.CREATE_SHORTCUT" />
352 <category android:name="android.intent.category.DEFAULT" />
356 <action android:name="android.intent.action.MAIN" />
357 <category android:name="android.intent.category.DEFAULT" />
358 <category android:name="android.intent.category.DESK_DOCK" />
363 android:name=".settings.BrightnessDialog"
364 android:label="@string/quick_settings_brightness_dialog_title"
365 android:theme="@android:style/Theme.DeviceDefault.Dialog"
366 android:finishOnCloseSystemDialogs="true"
367 android:launchMode="singleInstance"
368 android:excludeFromRecents="true"
369 android:exported="true">
371 <action android:name="android.intent.action.SHOW_BRIGHTNESS_DIALOG" />
372 <category android:name="android.intent.category.DEFAULT" />
376 <!-- Doze with notifications, run in main sysui process for every user -->
378 android:name=".doze.DozeService"
379 android:exported="true"
380 android:singleUser="true"
381 android:permission="android.permission.BIND_DREAM_SERVICE" />