AndroidManifest.xml revision 0f80719a6f3c30619ad73a9f2452626ed5ef5bd0
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/* //device/apps/common/AndroidManifest.xml
4**
5** Copyright 2006, The Android Open Source Project
6**
7** Licensed under the Apache License, Version 2.0 (the "License");
8** you may not use this file except in compliance with the License.
9** You may obtain a copy of the License at
10**
11**     http://www.apache.org/licenses/LICENSE-2.0
12**
13** Unless required by applicable law or agreed to in writing, software
14** distributed under the License is distributed on an "AS IS" BASIS,
15** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16** See the License for the specific language governing permissions and
17** limitations under the License.
18*/
19-->
20<manifest xmlns:android="http://schemas.android.com/apk/res/android"
21    package="android" coreApp="true" android:sharedUserId="android.uid.system"
22    android:sharedUserLabel="@string/android_system_label">
23
24    <!-- ================================================ -->
25    <!-- Special broadcasts that only the system can send -->
26    <!-- ================================================ -->
27    <eat-comment />
28
29    <protected-broadcast android:name="android.intent.action.SCREEN_OFF" />
30    <protected-broadcast android:name="android.intent.action.SCREEN_ON" />
31    <protected-broadcast android:name="android.intent.action.USER_PRESENT" />
32    <protected-broadcast android:name="android.intent.action.TIME_SET" />
33    <protected-broadcast android:name="android.intent.action.TIME_TICK" />
34    <protected-broadcast android:name="android.intent.action.TIMEZONE_CHANGED" />
35    <protected-broadcast android:name="android.intent.action.DATE_CHANGED" />
36    <protected-broadcast android:name="android.intent.action.PRE_BOOT_COMPLETED" />
37    <protected-broadcast android:name="android.intent.action.BOOT_COMPLETED" />
38    <protected-broadcast android:name="android.intent.action.PACKAGE_INSTALL" />
39    <protected-broadcast android:name="android.intent.action.PACKAGE_ADDED" />
40    <protected-broadcast android:name="android.intent.action.PACKAGE_REPLACED" />
41    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_REPLACED" />
42    <protected-broadcast android:name="android.intent.action.PACKAGE_REMOVED" />
43    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
44    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
45    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
46    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
47    <protected-broadcast android:name="android.intent.action.PACKAGE_FIRST_LAUNCH" />
48    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION" />
49    <protected-broadcast android:name="android.intent.action.PACKAGE_VERIFIED" />
50    <protected-broadcast android:name="android.intent.action.PACKAGES_SUSPENDED" />
51    <protected-broadcast android:name="android.intent.action.PACKAGES_UNSUSPENDED" />
52    <protected-broadcast android:name="android.intent.action.ACTION_PREFERRED_ACTIVITY_CHANGED" />
53    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
54    <protected-broadcast android:name="android.intent.action.QUERY_PACKAGE_RESTART" />
55    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
56    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
57    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
58    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
59    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
60    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
61    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
62    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
63    <protected-broadcast android:name="android.intent.action.CHARGING" />
64    <protected-broadcast android:name="android.intent.action.DISCHARGING" />
65    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
66    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
67    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
68    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
69    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
70    <protected-broadcast android:name="android.intent.action.REBOOT" />
71    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
72    <protected-broadcast android:name="android.intent.action.THERMAL_EVENT" />
73    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
74    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
75    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
76    <protected-broadcast android:name="android.intent.action.USER_STARTING" />
77    <protected-broadcast android:name="android.intent.action.USER_STARTED" />
78    <protected-broadcast android:name="android.intent.action.USER_STOPPING" />
79    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
80    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
81    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
82    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
83    <protected-broadcast android:name="android.intent.action.USER_INITIALIZE" />
84    <protected-broadcast android:name="android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION" />
85    <protected-broadcast android:name="android.intent.action.OVERLAY_ADDED" />
86    <protected-broadcast android:name="android.intent.action.OVERLAY_CHANGED" />
87    <protected-broadcast android:name="android.intent.action.OVERLAY_REMOVED" />
88    <protected-broadcast android:name="android.intent.action.OVERLAY_PRIORITY_CHANGED" />
89
90    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED" />
91    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGING" />
92    <protected-broadcast android:name="android.os.action.DEVICE_IDLE_MODE_CHANGED" />
93    <protected-broadcast android:name="android.os.action.POWER_SAVE_WHITELIST_CHANGED" />
94    <protected-broadcast android:name="android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED" />
95    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED_INTERNAL" />
96
97    <protected-broadcast android:name="android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED" />
98
99    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
100    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
101    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
102    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
103    <protected-broadcast android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
104
105    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARING_DECLINED" />
106    <protected-broadcast android:name="android.app.action.BUGREPORT_FAILED" />
107    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARE" />
108    <protected-broadcast android:name="android.app.action.SHOW_DEVICE_MONITORING_DIALOG" />
109
110    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
111    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
112    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
113    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
114    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
115    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_RESTORED" />
116
117    <protected-broadcast android:name="android.os.action.SETTING_RESTORED" />
118
119    <protected-broadcast android:name="android.app.backup.intent.RUN" />
120    <protected-broadcast android:name="android.app.backup.intent.CLEAR" />
121    <protected-broadcast android:name="android.app.backup.intent.INIT" />
122
123    <protected-broadcast android:name="android.bluetooth.intent.DISCOVERABLE_TIMEOUT" />
124    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
125    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
126    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
127    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
128    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
129    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
130    <protected-broadcast android:name="android.bluetooth.device.action.UUID" />
131    <protected-broadcast android:name="android.bluetooth.device.action.MAS_INSTANCE" />
132    <protected-broadcast android:name="android.bluetooth.device.action.ALIAS_CHANGED" />
133    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
134    <protected-broadcast android:name="android.bluetooth.device.action.DISAPPEARED" />
135    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
136    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
137    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
138    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
139    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
140    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
141    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
142    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
143    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
144    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
145    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_CANCEL" />
146    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REQUEST" />
147    <protected-broadcast android:name="android.bluetooth.device.action.SDP_RECORD" />
148    <protected-broadcast android:name="android.bluetooth.devicepicker.action.LAUNCH" />
149    <protected-broadcast android:name="android.bluetooth.devicepicker.action.DEVICE_SELECTED" />
150    <protected-broadcast
151        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
152    <protected-broadcast
153        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
154    <protected-broadcast
155        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
156    <protected-broadcast
157        android:name="android.bluetooth.headset.action.HF_INDICATORS_VALUE_CHANGED" />
158    <protected-broadcast
159        android:name="android.bluetooth.headsetclient.profile.action.CONNECTION_STATE_CHANGED" />
160    <protected-broadcast
161        android:name="android.bluetooth.headsetclient.profile.action.AUDIO_STATE_CHANGED" />
162    <protected-broadcast
163        android:name="android.bluetooth.headsetclient.profile.action.AG_EVENT" />
164    <protected-broadcast
165        android:name="android.bluetooth.headsetclient.profile.action.AG_CALL_CHANGED" />
166    <protected-broadcast
167        android:name="android.bluetooth.headsetclient.profile.action.RESULT" />
168    <protected-broadcast
169        android:name="android.bluetooth.headsetclient.profile.action.LAST_VTAG" />
170    <protected-broadcast
171        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
172    <protected-broadcast
173        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
174    <protected-broadcast
175        android:name="android.bluetooth.a2dp.profile.action.CODEC_CONFIG_CHANGED" />
176    <protected-broadcast
177        android:name="android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED" />
178    <protected-broadcast
179        android:name="android.bluetooth.a2dp-sink.profile.action.PLAYING_STATE_CHANGED" />
180    <protected-broadcast
181        android:name="android.bluetooth.a2dp-sink.profile.action.AUDIO_CONFIG_CHANGED" />
182    <protected-broadcast
183        android:name="android.bluetooth.avrcp-controller.profile.action.CONNECTION_STATE_CHANGED" />
184    <protected-broadcast
185        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
186    <protected-broadcast
187        android:name="android.bluetooth.input.profile.action.PROTOCOL_MODE_CHANGED" />
188    <protected-broadcast
189        android:name="android.bluetooth.input.profile.action.VIRTUAL_UNPLUG_STATUS" />
190    <protected-broadcast
191        android:name="android.bluetooth.inputhost.profile.action.CONNECTION_STATE_CHANGED" />
192    <protected-broadcast
193        android:name="android.bluetooth.map.profile.action.CONNECTION_STATE_CHANGED" />
194    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.CONNECTION_STATE_CHANGED" />
195    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_RECEIVED" />
196    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_SENT_SUCCESSFULLY" />
197    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_DELIVERED_SUCCESSFULLY" />
198    <protected-broadcast
199        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
200    <protected-broadcast
201        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
202    <protected-broadcast
203        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
204    <protected-broadcast android:name="android.bluetooth.pbap.intent.action.PBAP_STATE_CHANGED" />
205    <protected-broadcast android:name="android.bluetooth.pbap.profile.action.CONNECTION_STATE_CHANGED" />
206    <protected-broadcast android:name="android.bluetooth.sap.profile.action.CONNECTION_STATE_CHANGED" />
207    <protected-broadcast android:name="android.btopp.intent.action.INCOMING_FILE_NOTIFICATION" />
208    <protected-broadcast android:name="android.btopp.intent.action.USER_CONFIRMATION_TIMEOUT" />
209    <protected-broadcast android:name="android.btopp.intent.action.LIST" />
210    <protected-broadcast android:name="android.btopp.intent.action.OPEN_OUTBOUND" />
211    <protected-broadcast android:name="android.btopp.intent.action.HIDE_COMPLETE" />
212    <protected-broadcast android:name="android.btopp.intent.action.CONFIRM" />
213    <protected-broadcast android:name="android.btopp.intent.action.HIDE" />
214    <protected-broadcast android:name="android.btopp.intent.action.RETRY" />
215    <protected-broadcast android:name="android.btopp.intent.action.OPEN" />
216    <protected-broadcast android:name="android.btopp.intent.action.OPEN_INBOUND" />
217    <protected-broadcast android:name="android.btopp.intent.action.TRANSFER_COMPLETE" />
218    <protected-broadcast android:name="android.btopp.intent.action.ACCEPT" />
219    <protected-broadcast android:name="android.btopp.intent.action.DECLINE" />
220    <protected-broadcast android:name="com.android.bluetooth.gatt.REFRESH_BATCHED_SCAN" />
221    <protected-broadcast android:name="com.android.bluetooth.pbap.authchall" />
222    <protected-broadcast android:name="com.android.bluetooth.pbap.userconfirmtimeout" />
223    <protected-broadcast android:name="com.android.bluetooth.pbap.authresponse" />
224    <protected-broadcast android:name="com.android.bluetooth.pbap.authcancelled" />
225    <protected-broadcast android:name="com.android.bluetooth.sap.USER_CONFIRM_TIMEOUT" />
226    <protected-broadcast android:name="com.android.bluetooth.sap.action.DISCONNECT_ACTION" />
227
228    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />
229
230    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
231    <protected-broadcast android:name="android.hardware.usb.action.USB_PORT_CHANGED" />
232    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
233    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_DETACHED" />
234    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
235    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
236
237    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
238    <protected-broadcast android:name="android.media.action.HDMI_AUDIO_PLUG" />
239
240    <protected-broadcast android:name="android.media.AUDIO_BECOMING_NOISY" />
241    <protected-broadcast android:name="android.media.RINGER_MODE_CHANGED" />
242    <protected-broadcast android:name="android.media.VIBRATE_SETTING_CHANGED" />
243    <protected-broadcast android:name="android.media.VOLUME_CHANGED_ACTION" />
244    <protected-broadcast android:name="android.media.MASTER_VOLUME_CHANGED_ACTION" />
245    <protected-broadcast android:name="android.media.MASTER_MUTE_CHANGED_ACTION" />
246    <protected-broadcast android:name="android.media.MASTER_MONO_CHANGED_ACTION" />
247    <protected-broadcast android:name="android.media.SCO_AUDIO_STATE_CHANGED" />
248    <protected-broadcast android:name="android.media.ACTION_SCO_AUDIO_STATE_UPDATED" />
249
250    <protected-broadcast android:name="android.intent.action.MEDIA_REMOVED" />
251    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTED" />
252    <protected-broadcast android:name="android.intent.action.MEDIA_CHECKING" />
253    <protected-broadcast android:name="android.intent.action.MEDIA_NOFS" />
254    <protected-broadcast android:name="android.intent.action.MEDIA_MOUNTED" />
255    <protected-broadcast android:name="android.intent.action.MEDIA_SHARED" />
256    <protected-broadcast android:name="android.intent.action.MEDIA_UNSHARED" />
257    <protected-broadcast android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
258    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTABLE" />
259    <protected-broadcast android:name="android.intent.action.MEDIA_EJECT" />
260
261    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL" />
262    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
263    <!-- @deprecated.  Only {@link android.net.ConnectivityManager.CONNECTIVITY_ACTION} is sent. -->
264    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
265    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
266    <protected-broadcast android:name="android.net.conn.RESTRICT_BACKGROUND_CHANGED" />
267    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
268    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />
269
270    <protected-broadcast android:name="android.net.nsd.STATE_CHANGED" />
271
272    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
273    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
274    <protected-broadcast android:name="com.android.nfc.action.LLCP_UP" />
275    <protected-broadcast android:name="com.android.nfc.action.LLCP_DOWN" />
276    <protected-broadcast android:name="com.android.nfc.cardemulation.action.CLOSE_TAP_DIALOG" />
277    <protected-broadcast android:name="com.android.nfc.handover.action.ALLOW_CONNECT" />
278    <protected-broadcast android:name="com.android.nfc.handover.action.DENY_CONNECT" />
279    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
280    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
281    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
282    <!-- For NFC to BT handover -->
283    <protected-broadcast android:name="android.btopp.intent.action.WHITELIST_DEVICE" />
284    <protected-broadcast android:name="android.btopp.intent.action.STOP_HANDOVER_TRANSFER" />
285    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND" />
286    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND_MULTIPLE" />
287
288    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
289    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
290
291    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />
292
293    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
294    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
295    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />
296
297    <protected-broadcast android:name="com.android.server.WifiManager.action.START_SCAN" />
298    <protected-broadcast android:name="com.android.server.WifiManager.action.START_PNO" />
299    <protected-broadcast android:name="com.android.server.WifiManager.action.DELAYED_DRIVER_STOP" />
300    <protected-broadcast android:name="com.android.server.WifiManager.action.DEVICE_IDLE" />
301    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_ACCEPTED" />
302    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_DECLINED" />
303    <protected-broadcast android:name="com.android.server.usb.ACTION_OPEN_IN_APPS" />
304    <protected-broadcast android:name="com.android.server.am.DELETE_DUMPHEAP" />
305    <protected-broadcast android:name="com.android.server.net.action.SNOOZE_WARNING" />
306    <protected-broadcast android:name="android.net.wifi.WIFI_STATE_CHANGED" />
307    <protected-broadcast android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
308    <protected-broadcast android:name="android.net.wifi.WIFI_CREDENTIAL_CHANGED" />
309    <protected-broadcast android:name="android.net.wifi.WIFI_SCAN_AVAILABLE" />
310    <protected-broadcast android:name="android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED" />
311    <protected-broadcast android:name="android.net.wifi.SCAN_RESULTS" />
312    <protected-broadcast android:name="android.net.wifi.RSSI_CHANGED" />
313    <protected-broadcast android:name="android.net.wifi.STATE_CHANGE" />
314    <protected-broadcast android:name="android.net.wifi.LINK_CONFIGURATION_CHANGED" />
315    <protected-broadcast android:name="android.net.wifi.CONFIGURED_NETWORKS_CHANGE" />
316    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_DEAUTH_IMMINENT" />
317    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_ICON" />
318    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_OSU_PROVIDERS_LIST" />
319    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_SUBSCRIPTION_REMEDIATION" />
320    <protected-broadcast android:name="android.net.wifi.supplicant.CONNECTION_CHANGE" />
321    <protected-broadcast android:name="android.net.wifi.supplicant.STATE_CHANGE" />
322    <protected-broadcast android:name="android.net.wifi.p2p.STATE_CHANGED" />
323    <protected-broadcast android:name="android.net.wifi.p2p.DISCOVERY_STATE_CHANGE" />
324    <protected-broadcast android:name="android.net.wifi.p2p.THIS_DEVICE_CHANGED" />
325    <protected-broadcast android:name="android.net.wifi.p2p.PEERS_CHANGED" />
326    <protected-broadcast android:name="android.net.wifi.p2p.CONNECTION_STATE_CHANGE" />
327    <protected-broadcast android:name="android.net.wifi.p2p.PERSISTENT_GROUPS_CHANGED" />
328    <protected-broadcast android:name="android.net.conn.TETHER_STATE_CHANGED" />
329    <protected-broadcast android:name="android.net.conn.INET_CONDITION_ACTION" />
330    <protected-broadcast android:name="android.net.conn.NETWORK_CONDITIONS_MEASURED" />
331    <protected-broadcast
332            android:name="android.net.ConnectivityService.action.PKT_CNT_SAMPLE_INTERVAL_ELAPSED" />
333    <protected-broadcast android:name="android.net.scoring.SCORE_NETWORKS" />
334    <protected-broadcast android:name="android.net.scoring.SCORER_CHANGED" />
335    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE" />
336    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE" />
337    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
338    <protected-broadcast android:name="android.intent.action.ADVANCED_SETTINGS" />
339    <protected-broadcast android:name="android.intent.action.APPLICATION_RESTRICTIONS_CHANGED" />
340
341    <!-- Legacy -->
342    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_START" />
343    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_END" />
344
345    <protected-broadcast android:name="com.android.server.ACTION_TRIGGER_IDLE" />
346
347    <protected-broadcast android:name="android.intent.action.HDMI_PLUGGED" />
348
349    <protected-broadcast android:name="android.intent.action.PHONE_STATE" />
350
351    <protected-broadcast android:name="android.intent.action.SUB_DEFAULT_CHANGED" />
352
353    <protected-broadcast android:name="android.location.GPS_ENABLED_CHANGE" />
354    <protected-broadcast android:name="android.location.PROVIDERS_CHANGED" />
355    <protected-broadcast android:name="android.location.MODE_CHANGED" />
356    <protected-broadcast android:name="android.location.GPS_FIX_CHANGE" />
357    <protected-broadcast android:name="android.net.proxy.PAC_REFRESH" />
358
359    <protected-broadcast android:name="android.telecom.action.DEFAULT_DIALER_CHANGED" />
360    <protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED" />
361    <protected-broadcast android:name="android.intent.action.CONTENT_CHANGED" />
362    <protected-broadcast android:name="android.provider.Telephony.MMS_DOWNLOADED" />
363
364    <protected-broadcast
365        android:name="com.android.server.connectivityservice.CONNECTED_TO_PROVISIONING_NETWORK_ACTION" />
366
367    <!-- Defined in RestrictionsManager -->
368    <protected-broadcast
369        android:name="android.intent.action.PERMISSION_RESPONSE_RECEIVED" />
370    <!-- Defined in RestrictionsManager -->
371
372    <protected-broadcast android:name="android.intent.action.REQUEST_PERMISSION" />
373    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_STARTED" />
374    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
375    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_PROGRESS" />
376    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
377
378    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_SUBSCRIPTION_CHANGED" />
379    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED" />
380    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED" />
381    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED" />
382    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_CONTENT_CHANGE" />
383    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_RECORD_UPDATED" />
384
385    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_DONE" />
386    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_FAILED" />
387
388    <protected-broadcast android:name="android.internal.policy.action.BURN_IN_PROTECTION" />
389    <protected-broadcast android:name="android.app.action.SYSTEM_UPDATE_POLICY_CHANGED" />
390    <protected-broadcast android:name="android.app.action.DEVICE_OWNER_CHANGED" />
391
392    <!-- Added in N -->
393    <protected-broadcast android:name="android.intent.action.ANR" />
394    <protected-broadcast android:name="android.intent.action.CALL" />
395    <protected-broadcast android:name="android.intent.action.CALL_PRIVILEGED" />
396    <protected-broadcast android:name="android.intent.action.DROPBOX_ENTRY_ADDED" />
397    <protected-broadcast android:name="android.intent.action.INPUT_METHOD_CHANGED" />
398    <protected-broadcast android:name="android.intent.action.internal_sim_state_changed" />
399    <protected-broadcast android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
400    <protected-broadcast android:name="android.intent.action.PRECISE_CALL_STATE" />
401    <protected-broadcast android:name="android.intent.action.PRECISE_DATA_CONNECTION_STATE_CHANGED" />
402    <protected-broadcast android:name="android.intent.action.SUBSCRIPTION_PHONE_STATE" />
403    <protected-broadcast android:name="android.intent.action.USER_INFO_CHANGED" />
404    <protected-broadcast android:name="android.intent.action.USER_UNLOCKED" />
405    <protected-broadcast android:name="android.intent.action.WALLPAPER_CHANGED" />
406
407    <protected-broadcast android:name="android.app.action.DEVICE_POLICY_MANAGER_STATE_CHANGED" />
408    <protected-broadcast android:name="android.app.action.CHOOSE_PRIVATE_KEY_ALIAS" />
409    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLED" />
410    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED" />
411    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
412    <protected-broadcast android:name="android.app.action.LOCK_TASK_ENTERING" />
413    <protected-broadcast android:name="android.app.action.LOCK_TASK_EXITING" />
414    <protected-broadcast android:name="android.app.action.NOTIFY_PENDING_SYSTEM_UPDATE" />
415    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_CHANGED" />
416    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_EXPIRING" />
417    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_FAILED" />
418    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_SUCCEEDED" />
419    <protected-broadcast android:name="com.android.server.ACTION_EXPIRED_PASSWORD_NOTIFICATION" />
420
421    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_ADDED" />
422    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNLOCKED" />
423    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_REMOVED" />
424
425    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_STATE_CHANGED" />
426    <protected-broadcast android:name="com.android.bluetooth.map.USER_CONFIRM_TIMEOUT" />
427    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
428    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
429    <protected-broadcast android:name="android.content.jobscheduler.JOB_DELAY_EXPIRED" />
430    <protected-broadcast android:name="android.content.syncmanager.SYNC_ALARM" />
431    <protected-broadcast android:name="android.media.INTERNAL_RINGER_MODE_CHANGED_ACTION" />
432    <protected-broadcast android:name="android.media.STREAM_DEVICES_CHANGED_ACTION" />
433    <protected-broadcast android:name="android.media.STREAM_MUTE_CHANGED_ACTION" />
434    <protected-broadcast android:name="android.net.sip.SIP_SERVICE_UP" />
435    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
436    <protected-broadcast android:name="android.os.action.CHARGING" />
437    <protected-broadcast android:name="android.os.action.DISCHARGING" />
438    <protected-broadcast android:name="android.search.action.SEARCHABLES_CHANGED" />
439    <protected-broadcast android:name="android.security.STORAGE_CHANGED" />
440    <protected-broadcast android:name="android.security.action.TRUST_STORE_CHANGED" />
441    <protected-broadcast android:name="android.security.action.KEYCHAIN_CHANGED" />
442    <protected-broadcast android:name="android.security.action.KEY_ACCESS_CHANGED" />
443    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_REGISTERED" />
444    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_UNREGISTERED" />
445    <protected-broadcast android:name="android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION" />
446    <protected-broadcast android:name="android.telephony.action.CARRIER_CONFIG_CHANGED" />
447    <protected-broadcast android:name="android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION" />
448
449    <protected-broadcast android:name="com.android.bluetooth.btservice.action.ALARM_WAKEUP" />
450    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_POLL" />
451    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_UPDATED" />
452    <protected-broadcast android:name="com.android.server.NetworkTimeUpdateService.action.POLL" />
453    <protected-broadcast android:name="com.android.server.telecom.intent.action.CALLS_ADD_ENTRY" />
454    <protected-broadcast android:name="com.android.settings.location.MODE_CHANGING" />
455
456    <protected-broadcast android:name="NotificationManagerService.TIMEOUT" />
457    <protected-broadcast android:name="ScheduleConditionProvider.EVALUATE" />
458    <protected-broadcast android:name="EventConditionProvider.EVALUATE" />
459    <protected-broadcast android:name="SnoozeHelper.EVALUATE" />
460    <protected-broadcast android:name="wifi_scan_available" />
461
462    <protected-broadcast android:name="action.cne.started" />
463    <protected-broadcast android:name="android.content.jobscheduler.JOB_DEADLINE_EXPIRED" />
464    <protected-broadcast android:name="android.intent.action.ACTION_UNSOL_RESPONSE_OEM_HOOK_RAW" />
465    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_SUPL" />
466    <protected-broadcast android:name="android.os.action.ACTION_EFFECTS_SUPPRESSOR_CHANGED" />
467    <protected-broadcast android:name="android.os.action.LIGHT_DEVICE_IDLE_MODE_CHANGED" />
468    <protected-broadcast android:name="android.os.storage.action.VOLUME_STATE_CHANGED" />
469    <protected-broadcast android:name="android.os.storage.action.DISK_SCANNED" />
470    <protected-broadcast android:name="com.android.server.action.UPDATE_TWILIGHT_STATE" />
471    <protected-broadcast android:name="com.android.server.action.RESET_TWILIGHT_AUTO" />
472    <protected-broadcast android:name="com.android.server.device_idle.STEP_IDLE_STATE" />
473    <protected-broadcast android:name="com.android.server.device_idle.STEP_LIGHT_IDLE_STATE" />
474    <protected-broadcast android:name="com.android.server.Wifi.action.TOGGLE_PNO" />
475    <protected-broadcast android:name="intent.action.ACTION_RF_BAND_INFO" />
476    <protected-broadcast android:name="android.intent.action.MEDIA_RESOURCE_GRANTED" />
477    <protected-broadcast android:name="android.app.action.NETWORK_LOGS_AVAILABLE" />
478    <protected-broadcast android:name="android.app.action.SECURITY_LOGS_AVAILABLE" />
479
480    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED" />
481    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED_INTERNAL" />
482    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_CHANGED" />
483    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED" />
484    <protected-broadcast android:name="android.os.action.ACTION_EFFECTS_SUPPRESSOR_CHANGED" />
485
486    <protected-broadcast android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS" />
487    <protected-broadcast android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS" />
488
489    <protected-broadcast android:name="android.intent.action.DYNAMIC_SENSOR_CHANGED" />
490
491    <protected-broadcast android:name="android.intent.action.ACTION_RADIO_OFF" />
492
493    <protected-broadcast android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
494    <protected-broadcast android:name="android.accounts.action.ACCOUNT_REMOVED" />
495    <protected-broadcast android:name="android.accounts.action.VISIBLE_ACCOUNTS_CHANGED" />
496
497    <protected-broadcast android:name="com.android.sync.SYNC_CONN_STATUS_CHANGED" />
498
499    <protected-broadcast android:name="com.android.phone.SIP_INCOMING_CALL" />
500    <protected-broadcast android:name="com.android.phone.SIP_ADD_PHONE" />
501    <protected-broadcast android:name="com.android.phone.SIP_REMOVE_PHONE" />
502    <protected-broadcast android:name="com.android.phone.SIP_CALL_OPTION_CHANGED" />
503
504    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_CONNECTED" />
505    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_DISCONNECTED" />
506
507    <protected-broadcast android:name="android.bluetooth.input.profile.action.HANDSHAKE" />
508    <protected-broadcast android:name="android.bluetooth.input.profile.action.REPORT" />
509
510    <protected-broadcast android:name="android.intent.action.TWILIGHT_CHANGED" />
511
512    <protected-broadcast android:name="com.android.server.fingerprint.ACTION_LOCKOUT_RESET" />
513    <protected-broadcast android:name="android.net.wifi.PASSPOINT_ICON_RECEIVED" />
514    <protected-broadcast android:name="com.android.server.notification.CountdownConditionProvider" />
515
516    <protected-broadcast android:name="com.android.internal.location.ALARM_WAKEUP" />
517    <protected-broadcast android:name="com.android.internal.location.ALARM_TIMEOUT" />
518    <protected-broadcast android:name="android.intent.action.GLOBAL_BUTTON" />
519
520    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
521    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
522    <protected-broadcast android:name="com.android.server.pm.DISABLE_QUIET_MODE_AFTER_UNLOCK" />
523
524    <protected-broadcast android:name="com.android.server.retaildemo.ACTION_RESET_DEMO" />
525
526    <protected-broadcast android:name="android.intent.action.DEVICE_LOCKED_CHANGED" />
527
528    <!-- Added in O -->
529    <!-- TODO: temporary broadcast used by AutoFillManagerServiceImpl; will be removed -->
530    <protected-broadcast android:name="com.android.internal.autofill.action.REQUEST_AUTOFILL" />
531    <protected-broadcast android:name="android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED" />
532    <protected-broadcast android:name="com.android.server.wm.ACTION_REVOKE_SYSTEM_ALERT_WINDOW_PERMISSION" />
533    <protected-broadcast android:name="android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED" />
534
535    <protected-broadcast android:name="android.content.pm.action.SESSION_COMMITTED" />
536    <protected-broadcast android:name="android.os.action.USER_RESTRICTIONS_CHANGED" />
537    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT" />
538    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_BROWSABLE_DISABLED" />
539    <protected-broadcast android:name="android.media.tv.action.WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED" />
540    <protected-broadcast android:name="android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED" />
541
542    <!-- ====================================================================== -->
543    <!--                          RUNTIME PERMISSIONS                           -->
544    <!-- ====================================================================== -->
545    <eat-comment />
546
547    <!-- ====================================================================== -->
548    <!-- Permissions for accessing user's contacts including personal profile   -->
549    <!-- ====================================================================== -->
550    <eat-comment />
551
552    <!-- Used for runtime permissions related to contacts and profiles on this
553        device. -->
554    <permission-group android:name="android.permission-group.CONTACTS"
555        android:icon="@drawable/perm_group_contacts"
556        android:label="@string/permgrouplab_contacts"
557        android:description="@string/permgroupdesc_contacts"
558        android:priority="100" />
559
560    <!-- Allows an application to read the user's contacts data.
561        <p>Protection level: dangerous
562    -->
563    <permission android:name="android.permission.READ_CONTACTS"
564        android:permissionGroup="android.permission-group.CONTACTS"
565        android:label="@string/permlab_readContacts"
566        android:description="@string/permdesc_readContacts"
567        android:protectionLevel="dangerous" />
568
569    <!-- Allows an application to write the user's contacts data.
570         <p>Protection level: dangerous
571    -->
572    <permission android:name="android.permission.WRITE_CONTACTS"
573        android:permissionGroup="android.permission-group.CONTACTS"
574        android:label="@string/permlab_writeContacts"
575        android:description="@string/permdesc_writeContacts"
576        android:protectionLevel="dangerous" />
577
578    <!-- ====================================================================== -->
579    <!-- Permissions for accessing user's calendar                              -->
580    <!-- ====================================================================== -->
581    <eat-comment />
582
583    <!-- Used for runtime permissions related to user's calendar. -->
584    <permission-group android:name="android.permission-group.CALENDAR"
585        android:icon="@drawable/perm_group_calendar"
586        android:label="@string/permgrouplab_calendar"
587        android:description="@string/permgroupdesc_calendar"
588        android:priority="200" />
589
590    <!-- Allows an application to read the user's calendar data.
591         <p>Protection level: dangerous
592    -->
593    <permission android:name="android.permission.READ_CALENDAR"
594        android:permissionGroup="android.permission-group.CALENDAR"
595        android:label="@string/permlab_readCalendar"
596        android:description="@string/permdesc_readCalendar"
597        android:protectionLevel="dangerous" />
598
599    <!-- Allows an application to write the user's calendar data.
600         <p>Protection level: dangerous
601    -->
602    <permission android:name="android.permission.WRITE_CALENDAR"
603        android:permissionGroup="android.permission-group.CALENDAR"
604        android:label="@string/permlab_writeCalendar"
605        android:description="@string/permdesc_writeCalendar"
606        android:protectionLevel="dangerous" />
607
608    <!-- ====================================================================== -->
609    <!-- Permissions for accessing and modifying user's SMS messages            -->
610    <!-- ====================================================================== -->
611    <eat-comment />
612
613    <!-- Used for runtime permissions related to user's SMS messages. -->
614    <permission-group android:name="android.permission-group.SMS"
615        android:icon="@drawable/perm_group_sms"
616        android:label="@string/permgrouplab_sms"
617        android:description="@string/permgroupdesc_sms"
618        android:priority="300" />
619
620    <!-- Allows an application to send SMS messages.
621         <p>Protection level: dangerous
622    -->
623    <permission android:name="android.permission.SEND_SMS"
624        android:permissionGroup="android.permission-group.SMS"
625        android:label="@string/permlab_sendSms"
626        android:description="@string/permdesc_sendSms"
627        android:permissionFlags="costsMoney"
628        android:protectionLevel="dangerous" />
629
630    <!-- Allows an application to receive SMS messages.
631         <p>Protection level: dangerous
632    -->
633    <permission android:name="android.permission.RECEIVE_SMS"
634        android:permissionGroup="android.permission-group.SMS"
635        android:label="@string/permlab_receiveSms"
636        android:description="@string/permdesc_receiveSms"
637        android:protectionLevel="dangerous"/>
638
639    <!-- Allows an application to read SMS messages.
640         <p>Protection level: dangerous
641    -->
642    <permission android:name="android.permission.READ_SMS"
643        android:permissionGroup="android.permission-group.SMS"
644        android:label="@string/permlab_readSms"
645        android:description="@string/permdesc_readSms"
646        android:protectionLevel="dangerous" />
647
648    <!-- Allows an application to receive WAP push messages.
649         <p>Protection level: dangerous
650    -->
651    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
652        android:permissionGroup="android.permission-group.SMS"
653        android:label="@string/permlab_receiveWapPush"
654        android:description="@string/permdesc_receiveWapPush"
655        android:protectionLevel="dangerous" />
656
657    <!-- Allows an application to monitor incoming MMS messages.
658        <p>Protection level: dangerous
659    -->
660    <permission android:name="android.permission.RECEIVE_MMS"
661        android:permissionGroup="android.permission-group.SMS"
662        android:label="@string/permlab_receiveMms"
663        android:description="@string/permdesc_receiveMms"
664        android:protectionLevel="dangerous" />
665
666    <!-- Allows an application to read previously received cell broadcast
667         messages and to register a content observer to get notifications when
668         a cell broadcast has been received and added to the database. For
669         emergency alerts, the database is updated immediately after the
670         alert dialog and notification sound/vibration/speech are presented.
671         The "read" column is then updated after the user dismisses the alert.
672         This enables supplementary emergency assistance apps to start loading
673         additional emergency information (if Internet access is available)
674         when the alert is first received, and to delay presenting the info
675         to the user until after the initial alert dialog is dismissed.
676         <p>Protection level: dangerous
677         @hide Pending API council approval -->
678    <permission android:name="android.permission.READ_CELL_BROADCASTS"
679        android:permissionGroup="android.permission-group.SMS"
680        android:label="@string/permlab_readCellBroadcasts"
681        android:description="@string/permdesc_readCellBroadcasts"
682        android:protectionLevel="dangerous" />
683
684    <!-- ====================================================================== -->
685    <!-- Permissions for accessing external storage                             -->
686    <!-- ====================================================================== -->
687    <eat-comment />
688
689    <!-- Used for runtime permissions related to the shared external storage. -->
690    <permission-group android:name="android.permission-group.STORAGE"
691        android:icon="@drawable/perm_group_storage"
692        android:label="@string/permgrouplab_storage"
693        android:description="@string/permgroupdesc_storage"
694        android:priority="900" />
695
696    <!-- Allows an application to read from external storage.
697     <p>Any app that declares the {@link #WRITE_EXTERNAL_STORAGE} permission is implicitly
698     granted this permission.</p>
699     <p>This permission is enforced starting in API level 19.  Before API level 19, this
700     permission is not enforced and all apps still have access to read from external storage.
701     You can test your app with the permission enforced by enabling <em>Protect USB
702     storage</em> under Developer options in the Settings app on a device running Android 4.1 or
703     higher.</p>
704     <p>Also starting in API level 19, this permission is <em>not</em> required to
705     read/write files in your application-specific directories returned by
706     {@link android.content.Context#getExternalFilesDir} and
707     {@link android.content.Context#getExternalCacheDir}.
708     <p class="note"><strong>Note:</strong> If <em>both</em> your <a
709     href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
710     minSdkVersion}</a> and <a
711     href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
712     targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
713     grants your app this permission. If you don't need this permission, be sure your <a
714     href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
715     targetSdkVersion}</a> is 4 or higher.
716     <p>Protection level: dangerous
717     -->
718    <permission android:name="android.permission.READ_EXTERNAL_STORAGE"
719        android:permissionGroup="android.permission-group.STORAGE"
720        android:label="@string/permlab_sdcardRead"
721        android:description="@string/permdesc_sdcardRead"
722        android:protectionLevel="dangerous" />
723
724    <!-- Allows an application to write to external storage.
725         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
726         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
727         minSdkVersion}</a> and <a
728         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
729         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
730         grants your app this permission. If you don't need this permission, be sure your <a
731         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
732         targetSdkVersion}</a> is 4 or higher.
733         <p>Starting in API level 19, this permission is <em>not</em> required to
734         read/write files in your application-specific directories returned by
735         {@link android.content.Context#getExternalFilesDir} and
736         {@link android.content.Context#getExternalCacheDir}.
737         <p>Protection level: dangerous
738    -->
739    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
740        android:permissionGroup="android.permission-group.STORAGE"
741        android:label="@string/permlab_sdcardWrite"
742        android:description="@string/permdesc_sdcardWrite"
743        android:protectionLevel="dangerous" />
744
745    <!-- ====================================================================== -->
746    <!-- Permissions for accessing the device location                          -->
747    <!-- ====================================================================== -->
748    <eat-comment />
749
750    <!-- Used for permissions that allow accessing the device location. -->
751    <permission-group android:name="android.permission-group.LOCATION"
752        android:icon="@drawable/perm_group_location"
753        android:label="@string/permgrouplab_location"
754        android:description="@string/permgroupdesc_location"
755        android:priority="400" />
756
757    <!-- Allows an app to access precise location.
758         Alternatively, you might want {@link #ACCESS_COARSE_LOCATION}.
759         <p>Protection level: dangerous
760    -->
761    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
762        android:permissionGroup="android.permission-group.LOCATION"
763        android:label="@string/permlab_accessFineLocation"
764        android:description="@string/permdesc_accessFineLocation"
765        android:protectionLevel="dangerous|ephemeral" />
766
767    <!-- Allows an app to access approximate location.
768         Alternatively, you might want {@link #ACCESS_FINE_LOCATION}.
769         <p>Protection level: dangerous
770    -->
771    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
772        android:permissionGroup="android.permission-group.LOCATION"
773        android:label="@string/permlab_accessCoarseLocation"
774        android:description="@string/permdesc_accessCoarseLocation"
775        android:protectionLevel="dangerous|ephemeral" />
776
777    <!-- ====================================================================== -->
778    <!-- Permissions for accessing the device telephony                         -->
779    <!-- ====================================================================== -->
780    <eat-comment />
781
782    <!-- Used for permissions that are associated telephony features. -->
783    <permission-group android:name="android.permission-group.PHONE"
784        android:icon="@drawable/perm_group_phone_calls"
785        android:label="@string/permgrouplab_phone"
786        android:description="@string/permgroupdesc_phone"
787        android:priority="500" />
788
789    <!-- Allows read only access to phone state, including the phone number of the device,
790         current cellular network information, the status of any ongoing calls, and a list of any
791         {@link android.telecom.PhoneAccount}s registered on the device.
792         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
793         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
794         minSdkVersion}</a> and <a
795         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
796         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
797         grants your app this permission. If you don't need this permission, be sure your <a
798         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
799         targetSdkVersion}</a> is 4 or higher.
800         <p>Protection level: dangerous
801    -->
802    <permission android:name="android.permission.READ_PHONE_STATE"
803        android:permissionGroup="android.permission-group.PHONE"
804        android:label="@string/permlab_readPhoneState"
805        android:description="@string/permdesc_readPhoneState"
806        android:protectionLevel="dangerous" />
807
808    <!-- Allows read access to the device's phone number(s). This is a subset of the capabilities
809         granted by {@link #READ_PHONE_STATE} but is exposed to ephemeral applications.
810         <p>Protection level: dangerous-->
811    <permission android:name="android.permission.READ_PHONE_NUMBERS"
812        android:permissionGroup="android.permission-group.PHONE"
813        android:label="@string/permlab_readPhoneNumbers"
814        android:description="@string/permdesc_readPhoneNumbers"
815        android:protectionLevel="dangerous|ephemeral" />
816
817    <!-- Allows an application to initiate a phone call without going through
818        the Dialer user interface for the user to confirm the call.
819        <p>Protection level: dangerous
820    -->
821    <permission android:name="android.permission.CALL_PHONE"
822        android:permissionGroup="android.permission-group.PHONE"
823        android:permissionFlags="costsMoney"
824        android:label="@string/permlab_callPhone"
825        android:description="@string/permdesc_callPhone"
826        android:protectionLevel="dangerous" />
827
828    <!-- Allows an application to manage its own calls, but rely on the system to route focus to the
829         currently active call.
830        <p>Protection level: dangerous
831    -->
832    <permission android:name="android.permission.MANAGE_OWN_CALLS"
833        android:permissionGroup="android.permission-group.PHONE"
834        android:label="@string/permlab_manageOwnCalls"
835        android:description="@string/permdesc_manageOwnCalls"
836        android:protectionLevel="dangerous" />
837
838    <!-- Allows an application to access the IMS call service: making and
839         modifying a call
840        <p>Protection level: signature|privileged
841        @hide
842    -->
843    <permission android:name="android.permission.ACCESS_IMS_CALL_SERVICE"
844        android:permissionGroup="android.permission-group.PHONE"
845        android:label="@string/permlab_accessImsCallService"
846        android:description="@string/permdesc_accessImsCallService"
847        android:protectionLevel="signature|privileged" />
848
849    <!-- Allows an application to read the user's call log.
850         <p class="note"><strong>Note:</strong> If your app uses the
851         {@link #READ_CONTACTS} permission and <em>both</em> your <a
852         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
853         minSdkVersion}</a> and <a
854         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
855         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
856         grants your app this permission. If you don't need this permission, be sure your <a
857         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
858         targetSdkVersion}</a> is 16 or higher.</p>
859         <p>Protection level: dangerous
860    -->
861    <permission android:name="android.permission.READ_CALL_LOG"
862        android:permissionGroup="android.permission-group.PHONE"
863        android:label="@string/permlab_readCallLog"
864        android:description="@string/permdesc_readCallLog"
865        android:protectionLevel="dangerous" />
866
867    <!-- Allows an application to write (but not read) the user's
868         call log data.
869         <p class="note"><strong>Note:</strong> If your app uses the
870         {@link #WRITE_CONTACTS} permission and <em>both</em> your <a
871         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
872         minSdkVersion}</a> and <a
873         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
874         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
875         grants your app this permission. If you don't need this permission, be sure your <a
876         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
877         targetSdkVersion}</a> is 16 or higher.</p>
878         <p>Protection level: dangerous
879    -->
880    <permission android:name="android.permission.WRITE_CALL_LOG"
881        android:permissionGroup="android.permission-group.PHONE"
882        android:label="@string/permlab_writeCallLog"
883        android:description="@string/permdesc_writeCallLog"
884        android:protectionLevel="dangerous" />
885
886    <!-- Allows an application to add voicemails into the system.
887         <p>Protection level: dangerous
888    -->
889    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
890        android:permissionGroup="android.permission-group.PHONE"
891        android:label="@string/permlab_addVoicemail"
892        android:description="@string/permdesc_addVoicemail"
893        android:protectionLevel="dangerous" />
894
895    <!-- Allows an application to use SIP service.
896         <p>Protection level: dangerous
897    -->
898    <permission android:name="android.permission.USE_SIP"
899        android:permissionGroup="android.permission-group.PHONE"
900        android:description="@string/permdesc_use_sip"
901        android:label="@string/permlab_use_sip"
902        android:protectionLevel="dangerous"/>
903
904    <!-- Allows an application to see the number being dialed during an outgoing
905         call with the option to redirect the call to a different number or
906         abort the call altogether.
907         <p>Protection level: dangerous
908    -->
909    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
910        android:permissionGroup="android.permission-group.PHONE"
911        android:label="@string/permlab_processOutgoingCalls"
912        android:description="@string/permdesc_processOutgoingCalls"
913        android:protectionLevel="dangerous" />
914
915
916    <!-- Allows the app to answer an incoming phone call.
917         <p>Protection level: dangerous
918    -->
919    <permission android:name="android.permission.ANSWER_PHONE_CALLS"
920        android:permissionGroup="android.permission-group.PHONE"
921        android:label="@string/permlab_answerPhoneCalls"
922        android:description="@string/permdesc_answerPhoneCalls"
923        android:protectionLevel="dangerous|runtime" />
924
925
926    <!-- ====================================================================== -->
927    <!-- Permissions for accessing the device microphone                        -->
928    <!-- ====================================================================== -->
929    <eat-comment />
930
931    <!-- Used for permissions that are associated with accessing
932         microphone audio from the device. Note that phone calls also capture audio
933         but are in a separate (more visible) permission group. -->
934    <permission-group android:name="android.permission-group.MICROPHONE"
935        android:icon="@drawable/perm_group_microphone"
936        android:label="@string/permgrouplab_microphone"
937        android:description="@string/permgroupdesc_microphone"
938        android:priority="600" />
939
940    <!-- Allows an application to record audio.
941         <p>Protection level: dangerous
942    -->
943    <permission android:name="android.permission.RECORD_AUDIO"
944        android:permissionGroup="android.permission-group.MICROPHONE"
945        android:label="@string/permlab_recordAudio"
946        android:description="@string/permdesc_recordAudio"
947        android:protectionLevel="dangerous"/>
948
949    <!-- ====================================================================== -->
950    <!-- Permissions for accessing the UCE Service                              -->
951    <!-- ====================================================================== -->
952
953    <!-- @hide Allows an application to Access UCE-Presence.
954         <p>Protection level: dangerous
955    -->
956    <permission android:name="android.permission.ACCESS_UCE_PRESENCE_SERVICE"
957        android:permissionGroup="android.permission-group.PHONE"
958        android:protectionLevel="signatureOrSystem"/>
959
960    <!-- @hide Allows an application to Access UCE-OPTIONS.
961         <p>Protection level: dangerous
962    -->
963    <permission android:name="android.permission.ACCESS_UCE_OPTIONS_SERVICE"
964        android:permissionGroup="android.permission-group.PHONE"
965        android:protectionLevel="signatureOrSystem"/>
966
967
968
969    <!-- ====================================================================== -->
970    <!-- Permissions for accessing the device camera                            -->
971    <!-- ====================================================================== -->
972    <eat-comment />
973
974    <!-- Used for permissions that are associated with accessing
975     camera or capturing images/video from the device. -->
976    <permission-group android:name="android.permission-group.CAMERA"
977        android:icon="@drawable/perm_group_camera"
978        android:label="@string/permgrouplab_camera"
979        android:description="@string/permgroupdesc_camera"
980        android:priority="700" />
981
982    <!-- Required to be able to access the camera device.
983         <p>This will automatically enforce the <a
984         href="{@docRoot}guide/topics/manifest/uses-feature-element.html">
985         <uses-feature>}</a> manifest element for <em>all</em> camera features.
986         If you do not require all camera features or can properly operate if a camera
987         is not available, then you must modify your manifest as appropriate in order to
988         install on devices that don't support all camera features.</p>
989         <p>Protection level: dangerous
990    -->
991    <permission android:name="android.permission.CAMERA"
992        android:permissionGroup="android.permission-group.CAMERA"
993        android:label="@string/permlab_camera"
994        android:description="@string/permdesc_camera"
995        android:protectionLevel="dangerous|ephemeral" />
996
997
998    <!-- ====================================================================== -->
999    <!-- Permissions for accessing the device sensors                           -->
1000    <!-- ====================================================================== -->
1001    <eat-comment />
1002
1003    <!-- Used for permissions that are associated with accessing
1004         camera or capturing images/video from the device. -->
1005    <permission-group android:name="android.permission-group.SENSORS"
1006        android:icon="@drawable/perm_group_sensors"
1007        android:label="@string/permgrouplab_sensors"
1008        android:description="@string/permgroupdesc_sensors"
1009        android:priority="800" />
1010
1011    <!-- Allows an application to access data from sensors that the user uses to
1012         measure what is happening inside his/her body, such as heart rate.
1013         <p>Protection level: dangerous -->
1014    <permission android:name="android.permission.BODY_SENSORS"
1015        android:permissionGroup="android.permission-group.SENSORS"
1016        android:label="@string/permlab_bodySensors"
1017        android:description="@string/permdesc_bodySensors"
1018        android:protectionLevel="dangerous" />
1019
1020    <!-- Allows an app to use fingerprint hardware.
1021         <p>Protection level: normal
1022    -->
1023    <permission android:name="android.permission.USE_FINGERPRINT"
1024        android:permissionGroup="android.permission-group.SENSORS"
1025        android:label="@string/permlab_useFingerprint"
1026        android:description="@string/permdesc_useFingerprint"
1027        android:protectionLevel="normal" />
1028
1029    <!-- ====================================================================== -->
1030    <!-- REMOVED PERMISSIONS                                                    -->
1031    <!-- ====================================================================== -->
1032
1033    <!-- @hide We need to keep this around for backwards compatibility -->
1034    <permission android:name="android.permission.READ_PROFILE"
1035        android:protectionLevel="normal"
1036        android:permissionFlags="removed"/>
1037
1038    <!-- @hide We need to keep this around for backwards compatibility -->
1039    <permission android:name="android.permission.WRITE_PROFILE"
1040        android:protectionLevel="normal"
1041        android:permissionFlags="removed"/>
1042
1043    <!-- @hide We need to keep this around for backwards compatibility -->
1044    <permission android:name="android.permission.READ_SOCIAL_STREAM"
1045        android:protectionLevel="normal"
1046        android:permissionFlags="removed"/>
1047
1048    <!-- @hide We need to keep this around for backwards compatibility -->
1049    <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
1050        android:protectionLevel="normal"
1051        android:permissionFlags="removed"/>
1052
1053    <!-- @hide We need to keep this around for backwards compatibility -->
1054    <permission android:name="android.permission.READ_USER_DICTIONARY"
1055        android:protectionLevel="normal"
1056        android:permissionFlags="removed"/>
1057
1058    <!-- @hide We need to keep this around for backwards compatibility -->
1059    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
1060        android:protectionLevel="normal"
1061        android:permissionFlags="removed"/>
1062
1063    <!-- @hide We need to keep this around for backwards compatibility -->
1064    <permission android:name="android.permission.WRITE_SMS"
1065        android:protectionLevel="normal"
1066        android:permissionFlags="removed"/>
1067
1068    <!-- @hide We need to keep this around for backwards compatibility -->
1069    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
1070        android:protectionLevel="normal"
1071        android:permissionFlags="removed"/>
1072
1073    <!-- @hide We need to keep this around for backwards compatibility -->
1074    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
1075        android:protectionLevel="normal"
1076        android:permissionFlags="removed"/>
1077
1078    <!-- @hide We need to keep this around for backwards compatibility -->
1079    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
1080        android:protectionLevel="normal"
1081        android:permissionFlags="removed"/>
1082
1083    <!-- @hide We need to keep this around for backwards compatibility -->
1084    <permission android:name="android.permission.MANAGE_ACCOUNTS"
1085        android:protectionLevel="normal"
1086        android:permissionFlags="removed"/>
1087
1088    <!-- @hide We need to keep this around for backwards compatibility -->
1089    <permission android:name="android.permission.USE_CREDENTIALS"
1090        android:protectionLevel="normal"
1091        android:permissionFlags="removed"/>
1092
1093    <!-- @hide We need to keep this around for backwards compatibility -->
1094    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
1095        android:protectionLevel="normal"
1096        android:permissionFlags="removed"/>
1097
1098    <!-- @hide We need to keep this around for backwards compatibility -->
1099    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
1100        android:protectionLevel="normal"
1101        android:permissionFlags="removed"/>
1102
1103    <!-- @hide We need to keep this around for backwards compatibility -->
1104    <permission android:name="android.permission.FLASHLIGHT"
1105        android:protectionLevel="normal"
1106        android:permissionFlags="removed"/>
1107
1108    <!-- ====================================================================== -->
1109    <!-- INSTALL PERMISSIONS                                                    -->
1110    <!-- ====================================================================== -->
1111
1112    <!-- ================================== -->
1113    <!-- Permissions for accessing messages -->
1114    <!-- ================================== -->
1115    <eat-comment />
1116
1117    <!-- @SystemApi Allows an application (Phone) to send a request to other applications
1118         to handle the respond-via-message action during incoming calls.
1119         <p>Not for use by third-party applications. -->
1120    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
1121        android:protectionLevel="signature|privileged" />
1122
1123    <!-- @SystemApi Allows an application to send SMS to premium shortcodes without user permission.
1124         <p>Not for use by third-party applications.
1125         @hide -->
1126    <permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"
1127        android:protectionLevel="signature|privileged" />
1128
1129    <!-- Allows an application to filter carrier specific sms.
1130         @hide -->
1131    <permission android:name="android.permission.CARRIER_FILTER_SMS"
1132        android:protectionLevel="signature|privileged" />
1133
1134    <!-- @SystemApi Allows an application to receive emergency cell broadcast messages,
1135         to record or display them to the user.
1136         <p>Not for use by third-party applications.
1137         @hide -->
1138    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
1139        android:protectionLevel="signature|privileged" />
1140
1141    <!-- Allows an application to monitor incoming Bluetooth MAP messages, to record
1142         or perform processing on them. -->
1143    <!-- @hide -->
1144    <permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"
1145        android:protectionLevel="signature|privileged" />
1146
1147    <!-- @SystemApi @hide Allows an application to execute contacts directory search.
1148         This should only be used by ContactsProvider.
1149         <p>Not for use by third-party applications. -->
1150    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
1151        android:protectionLevel="signature|privileged" />
1152
1153    <!-- @SystemApi @hide Allows an application to modify cell broadcasts through the content provider.
1154         <p>Not for use by third-party applications. -->
1155    <permission android:name="android.permission.MODIFY_CELL_BROADCASTS"
1156                android:protectionLevel="signature|privileged" />
1157
1158    <!-- =============================================================== -->
1159    <!-- Permissions for setting the device alarm                        -->
1160    <!-- =============================================================== -->
1161    <eat-comment />
1162
1163    <!-- Allows an application to broadcast an Intent to set an alarm for the user.
1164         <p>Protection level: normal
1165    -->
1166    <permission android:name="com.android.alarm.permission.SET_ALARM"
1167        android:label="@string/permlab_setAlarm"
1168        android:description="@string/permdesc_setAlarm"
1169        android:protectionLevel="normal" />
1170
1171    <!-- =============================================================== -->
1172    <!-- Permissions for accessing the user voicemail                    -->
1173    <!-- =============================================================== -->
1174    <eat-comment />
1175
1176    <!-- Allows an application to modify and remove existing voicemails in the system.
1177        <p>Protection level: signature|privileged
1178    -->
1179    <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
1180        android:protectionLevel="signature|privileged" />
1181
1182    <!-- Allows an application to read voicemails in the system.
1183         <p>Protection level: signature|privileged
1184    -->
1185    <permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"
1186        android:protectionLevel="signature|privileged" />
1187
1188    <!-- ======================================= -->
1189    <!-- Permissions for accessing location info -->
1190    <!-- ======================================= -->
1191    <eat-comment />
1192
1193    <!-- Allows an application to access extra location provider commands.
1194         <p>Protection level: normal
1195    -->
1196    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
1197        android:label="@string/permlab_accessLocationExtraCommands"
1198        android:description="@string/permdesc_accessLocationExtraCommands"
1199        android:protectionLevel="normal" />
1200
1201    <!-- @SystemApi Allows an application to install a location provider into the Location Manager.
1202    <p>Not for use by third-party applications. -->
1203    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
1204        android:protectionLevel="signature|privileged" />
1205
1206    <!-- @SystemApi @hide Allows HDMI-CEC service to access device and configuration files.
1207         This should only be used by HDMI-CEC service.
1208    -->
1209    <permission android:name="android.permission.HDMI_CEC"
1210        android:protectionLevel="signature|privileged" />
1211
1212    <!-- @SystemApi Allows an application to use location features in hardware,
1213         such as the geofencing api.
1214         <p>Not for use by third-party applications. -->
1215    <permission android:name="android.permission.LOCATION_HARDWARE"
1216        android:protectionLevel="signature|privileged" />
1217    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>
1218
1219    <!-- @SystemApi Allows an application to create mock location providers for testing.
1220         <p>Protection level: signature
1221         @hide
1222    -->
1223    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
1224        android:protectionLevel="signature" />
1225
1226    <!-- ======================================= -->
1227    <!-- Permissions for accessing networks -->
1228    <!-- ======================================= -->
1229    <eat-comment />
1230
1231    <!-- Allows applications to open network sockets.
1232         <p>Protection level: normal
1233    -->
1234    <permission android:name="android.permission.INTERNET"
1235        android:description="@string/permdesc_createNetworkSockets"
1236        android:label="@string/permlab_createNetworkSockets"
1237        android:protectionLevel="normal|ephemeral" />
1238
1239    <!-- Allows applications to access information about networks.
1240         <p>Protection level: normal
1241    -->
1242    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
1243        android:description="@string/permdesc_accessNetworkState"
1244        android:label="@string/permlab_accessNetworkState"
1245        android:protectionLevel="normal|ephemeral" />
1246
1247    <!-- Allows applications to access information about Wi-Fi networks.
1248         <p>Protection level: normal
1249    -->
1250    <permission android:name="android.permission.ACCESS_WIFI_STATE"
1251        android:description="@string/permdesc_accessWifiState"
1252        android:label="@string/permlab_accessWifiState"
1253        android:protectionLevel="normal" />
1254
1255    <!-- Allows applications to change Wi-Fi connectivity state.
1256         <p>Protection level: normal
1257    -->
1258    <permission android:name="android.permission.CHANGE_WIFI_STATE"
1259        android:description="@string/permdesc_changeWifiState"
1260        android:label="@string/permlab_changeWifiState"
1261        android:protectionLevel="normal" />
1262
1263    <!-- @SystemApi @hide Allows applications to read Wi-Fi credential.
1264         <p>Not for use by third-party applications. -->
1265    <permission android:name="android.permission.READ_WIFI_CREDENTIAL"
1266        android:protectionLevel="signature|privileged" />
1267
1268    <!-- @SystemApi @hide Allows applications to change tether state and run
1269         tether carrier provisioning.
1270         <p>Not for use by third-party applications. -->
1271    <permission android:name="android.permission.TETHER_PRIVILEGED"
1272        android:protectionLevel="signature|privileged" />
1273
1274    <!-- @SystemApi @hide Allow system apps to receive broadcast
1275         when a wifi network credential is changed.
1276         <p>Not for use by third-party applications. -->
1277    <permission android:name="android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE"
1278        android:protectionLevel="signature|privileged" />
1279
1280    <!-- @SystemApi @hide Allows an application to modify any wifi configuration, even if created
1281     by another application. Once reconfigured the original creator cannot make any further
1282     modifications.
1283     <p>Not for use by third-party applications. -->
1284    <permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"
1285        android:protectionLevel="signature|privileged" />
1286
1287    <!-- @hide -->
1288    <permission android:name="android.permission.ACCESS_WIMAX_STATE"
1289        android:description="@string/permdesc_accessWimaxState"
1290        android:label="@string/permlab_accessWimaxState"
1291        android:protectionLevel="normal" />
1292
1293    <!-- @hide -->
1294    <permission android:name="android.permission.CHANGE_WIMAX_STATE"
1295        android:description="@string/permdesc_changeWimaxState"
1296        android:label="@string/permlab_changeWimaxState"
1297        android:protectionLevel="normal" />
1298
1299    <!-- Allows applications to act as network scorers. @hide @SystemApi-->
1300    <permission android:name="android.permission.SCORE_NETWORKS"
1301        android:protectionLevel="signature|privileged" />
1302
1303    <!-- Allows applications to request network
1304         recommendations and scores from the NetworkScoreService.
1305         <p>Not for use by third-party applications. @hide -->
1306    <permission android:name="android.permission.REQUEST_NETWORK_SCORES"
1307        android:protectionLevel="signature|setup" />
1308
1309    <!-- Allows network stack services (Connectivity and Wifi) to coordinate
1310         <p>Not for use by third-party or privileged applications.
1311         @hide This should only be used by Connectivity and Wifi Services.
1312    -->
1313    <permission android:name="android.permission.NETWORK_STACK"
1314        android:protectionLevel="signature" />
1315
1316    <!-- ======================================= -->
1317    <!-- Permissions for short range, peripheral networks -->
1318    <!-- ======================================= -->
1319    <eat-comment />
1320
1321    <!-- Allows applications to connect to paired bluetooth devices.
1322         <p>Protection level: normal
1323    -->
1324    <permission android:name="android.permission.BLUETOOTH"
1325        android:description="@string/permdesc_bluetooth"
1326        android:label="@string/permlab_bluetooth"
1327        android:protectionLevel="normal" />
1328
1329    <!-- Allows applications to discover and pair bluetooth devices.
1330         <p>Protection level: normal
1331    -->
1332    <permission android:name="android.permission.BLUETOOTH_ADMIN"
1333        android:description="@string/permdesc_bluetoothAdmin"
1334        android:label="@string/permlab_bluetoothAdmin"
1335        android:protectionLevel="normal" />
1336
1337    <!-- @SystemApi Allows applications to pair bluetooth devices without user interaction, and to
1338         allow or disallow phonebook access or message access.
1339         This is not available to third party applications. -->
1340    <permission android:name="android.permission.BLUETOOTH_PRIVILEGED"
1341        android:protectionLevel="signature|privileged" />
1342
1343    <!-- Control access to email providers exclusively for Bluetooth
1344         @hide
1345    -->
1346    <permission android:name="android.permission.BLUETOOTH_MAP"
1347        android:protectionLevel="signature" />
1348
1349    <!-- Allows bluetooth stack to access files
1350         @hide This should only be used by Bluetooth apk.
1351    -->
1352    <permission android:name="android.permission.BLUETOOTH_STACK"
1353        android:protectionLevel="signature" />
1354
1355    <!-- Allows applications to perform I/O operations over NFC.
1356         <p>Protection level: normal
1357    -->
1358    <permission android:name="android.permission.NFC"
1359        android:description="@string/permdesc_nfc"
1360        android:label="@string/permlab_nfc"
1361        android:protectionLevel="normal" />
1362
1363    <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs.
1364         @hide -->
1365    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
1366        android:protectionLevel="signature|privileged" />
1367
1368    <!-- @SystemApi Allows an internal user to use restricted Networks.
1369         @hide -->
1370    <permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"
1371        android:protectionLevel="signature|privileged" />
1372
1373    <!-- Allows a system application to access hardware packet offload capabilities.
1374         @hide -->
1375    <permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"
1376        android:protectionLevel="signature|privileged" />
1377
1378    <!-- @SystemApi
1379         @hide -->
1380    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
1381        android:protectionLevel="signature|privileged" />
1382
1383    <!-- @SystemApi Allows access to the loop radio (Android@Home mesh network) device.
1384         @hide -->
1385    <permission android:name="android.permission.LOOP_RADIO"
1386        android:protectionLevel="signature|privileged" />
1387
1388    <!-- Allows sending and receiving handover transfer status from Wifi and Bluetooth
1389         @hide -->
1390    <permission android:name="android.permission.NFC_HANDOVER_STATUS"
1391        android:protectionLevel="signature|privileged" />
1392
1393    <!-- ================================== -->
1394    <!-- Permissions for accessing accounts -->
1395    <!-- ================================== -->
1396    <eat-comment />
1397
1398    <!-- Allows access to the list of accounts in the Accounts Service.
1399
1400    <p class="note"><strong>Note:</strong> Beginning with Android 6.0 (API level
1401    23), if an app shares the signature of the authenticator that manages an
1402    account, it does not need <code>"GET_ACCOUNTS"</code> permission to read
1403    information about that account. On Android 5.1 and lower, all apps need
1404    <code>"GET_ACCOUNTS"</code> permission to read information about any
1405    account.</p>
1406
1407    <p>Protection level: dangerous
1408    -->
1409    <permission android:name="android.permission.GET_ACCOUNTS"
1410        android:permissionGroup="android.permission-group.CONTACTS"
1411        android:protectionLevel="dangerous"
1412        android:description="@string/permdesc_getAccounts"
1413        android:label="@string/permlab_getAccounts" />
1414    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
1415
1416    <!-- @SystemApi Allows applications to call into AccountAuthenticators.
1417    <p>Not for use by third-party applications. -->
1418    <permission android:name="android.permission.ACCOUNT_MANAGER"
1419        android:protectionLevel="signature" />
1420
1421    <!-- ================================== -->
1422    <!-- Permissions for accessing hardware that may effect battery life-->
1423    <!-- ================================== -->
1424    <eat-comment />
1425
1426    <!-- Allows applications to enter Wi-Fi Multicast mode.
1427         <p>Protection level: normal
1428    -->
1429    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
1430        android:description="@string/permdesc_changeWifiMulticastState"
1431        android:label="@string/permlab_changeWifiMulticastState"
1432        android:protectionLevel="normal" />
1433
1434    <!-- Allows access to the vibrator.
1435         <p>Protection level: normal
1436    -->
1437    <permission android:name="android.permission.VIBRATE"
1438        android:label="@string/permlab_vibrate"
1439        android:description="@string/permdesc_vibrate"
1440        android:protectionLevel="normal|ephemeral" />
1441
1442    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
1443         from dimming.
1444         <p>Protection level: normal
1445    -->
1446    <permission android:name="android.permission.WAKE_LOCK"
1447        android:label="@string/permlab_wakeLock"
1448        android:description="@string/permdesc_wakeLock"
1449        android:protectionLevel="normal|ephemeral" />
1450
1451    <!-- Allows using the device's IR transmitter, if available.
1452         <p>Protection level: normal
1453    -->
1454    <permission android:name="android.permission.TRANSMIT_IR"
1455        android:label="@string/permlab_transmitIr"
1456        android:description="@string/permdesc_transmitIr"
1457        android:protectionLevel="normal" />
1458
1459    <!-- ==================================================== -->
1460    <!-- Permissions related to changing audio settings   -->
1461    <!-- ==================================================== -->
1462    <eat-comment />
1463
1464    <!-- Allows an application to modify global audio settings.
1465         <p>Protection level: normal
1466    -->
1467    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
1468        android:label="@string/permlab_modifyAudioSettings"
1469        android:description="@string/permdesc_modifyAudioSettings"
1470        android:protectionLevel="normal" />
1471
1472    <!-- ================================== -->
1473    <!-- Permissions for accessing hardware -->
1474    <!-- ================================== -->
1475    <eat-comment />
1476
1477    <!-- @SystemApi Allows an application to manage preferences and permissions for USB devices
1478         @hide -->
1479    <permission android:name="android.permission.MANAGE_USB"
1480        android:protectionLevel="signature|privileged" />
1481
1482    <!-- @SystemApi Allows an application to access the MTP USB kernel driver.
1483         For use only by the device side MTP implementation.
1484         @hide -->
1485    <permission android:name="android.permission.ACCESS_MTP"
1486        android:protectionLevel="signature|privileged" />
1487
1488    <!-- @SystemApi Allows access to hardware peripherals.  Intended only for hardware testing.
1489         <p>Not for use by third-party applications.
1490         @hide
1491    -->
1492    <permission android:name="android.permission.HARDWARE_TEST"
1493        android:protectionLevel="signature" />
1494
1495    <!-- @SystemApi Allows access to FM
1496         @hide This is not a third-party API (intended for system apps).-->
1497    <permission android:name="android.permission.ACCESS_FM_RADIO"
1498        android:protectionLevel="signature|privileged" />
1499
1500    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
1501         @hide -->
1502    <permission android:name="android.permission.NET_ADMIN"
1503        android:protectionLevel="signature" />
1504
1505    <!-- Allows registration for remote audio playback. @hide -->
1506    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
1507        android:protectionLevel="signature" />
1508
1509    <!-- @SystemApi Allows TvInputService to access underlying TV input hardware such as
1510         built-in tuners and HDMI-in's.
1511         @hide This should only be used by OEM's TvInputService's.
1512    -->
1513    <permission android:name="android.permission.TV_INPUT_HARDWARE"
1514        android:protectionLevel="signature|privileged" />
1515
1516    <!-- @SystemApi Allows to capture a frame of TV input hardware such as
1517         built-in tuners and HDMI-in's.
1518         @hide <p>Not for use by third-party applications.
1519    -->
1520    <permission android:name="android.permission.CAPTURE_TV_INPUT"
1521        android:protectionLevel="signature|privileged" />
1522
1523    <!-- @hide Allows TvInputService to access DVB device.
1524   <p>Not for use by third-party applications. -->
1525    <permission android:name="android.permission.DVB_DEVICE"
1526        android:protectionLevel="signature|privileged" />
1527
1528    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by carrier state
1529         @hide <p>Not for use by third-party applications. -->
1530    <permission android:name="android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE"
1531        android:protectionLevel="signature|privileged" />
1532
1533    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by user state
1534         @hide <p>Not for use by third-party applications. -->
1535    <permission android:name="android.permission.MANAGE_USER_OEM_UNLOCK_STATE"
1536        android:protectionLevel="signature|privileged" />
1537
1538    <!-- @SystemApi Allows reading the OEM unlock state
1539         @hide <p>Not for use by third-party applications. -->
1540    <permission android:name="android.permission.READ_OEM_UNLOCK_STATE"
1541        android:protectionLevel="signature|privileged" />
1542
1543    <!-- @hide Allows enabling/disabling OEM unlock
1544   <p>Not for use by third-party applications. -->
1545    <permission android:name="android.permission.OEM_UNLOCK_STATE"
1546        android:protectionLevel="signature" />
1547
1548    <!-- @hide Allows querying state of PersistentDataBlock
1549   <p>Not for use by third-party applications. -->
1550    <permission android:name="android.permission.ACCESS_PDB_STATE"
1551        android:protectionLevel="signature" />
1552
1553    <!-- @hide Allows system update service to notify device owner about pending updates.
1554   <p>Not for use by third-party applications. -->
1555    <permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE"
1556        android:protectionLevel="signature|privileged" />
1557
1558    <!-- =========================================== -->
1559    <!-- Permissions associated with camera and image capture -->
1560    <!-- =========================================== -->
1561    <eat-comment />
1562
1563    <!-- @SystemApi Allows disabling the transmit-indicator LED that is normally on when
1564         a camera is in use by an application.
1565         @hide -->
1566    <permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"
1567        android:protectionLevel="signature|privileged" />
1568
1569    <!-- Allows sending the camera service notifications about system-wide events.
1570        @hide -->
1571    <permission android:name="android.permission.CAMERA_SEND_SYSTEM_EVENTS"
1572        android:protectionLevel="signature|privileged" />
1573
1574    <!-- =========================================== -->
1575    <!-- Permissions associated with telephony state -->
1576    <!-- =========================================== -->
1577    <eat-comment />
1578
1579    <!-- @SystemApi Allows modification of the telephony state - power on, mmi, etc.
1580         Does not include placing calls.
1581         <p>Not for use by third-party applications. -->
1582    <permission android:name="android.permission.MODIFY_PHONE_STATE"
1583        android:protectionLevel="signature|privileged" />
1584
1585    <!-- Allows read only access to precise phone state.
1586         @hide Pending API council approval -->
1587    <permission android:name="android.permission.READ_PRECISE_PHONE_STATE"
1588        android:protectionLevel="signature|privileged" />
1589
1590    <!-- @SystemApi Allows read access to privileged phone state.
1591         @hide Used internally. -->
1592    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
1593        android:protectionLevel="signature|privileged" />
1594
1595    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1596         PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. This capability indicates that the PhoneAccount
1597         corresponds to a device SIM.
1598         @hide -->
1599    <permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"
1600        android:protectionLevel="signature|privileged" />
1601
1602    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1603         PhoneAccount#CAPABILITY_CALL_PROVIDER.
1604         @hide -->
1605    <permission android:name="android.permission.REGISTER_CALL_PROVIDER"
1606        android:protectionLevel="signature|privileged" />
1607
1608    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1609         PhoneAccount#CAPABILITY_CONNECTION_MANAGER
1610         @hide -->
1611    <permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"
1612        android:protectionLevel="signature|privileged" />
1613
1614    <!-- Must be required by a {@link android.telecom.InCallService},
1615         to ensure that only the system can bind to it.
1616         <p>Protection level: signature|privileged
1617    -->
1618    <permission android:name="android.permission.BIND_INCALL_SERVICE"
1619        android:protectionLevel="signature|privileged" />
1620
1621    <!-- Must be required by a link {@link android.telephony.VisualVoicemailService} to ensure that
1622         only the system can bind to it.
1623         <p>Protection level: signature|privileged
1624    -->
1625    <permission
1626      android:name="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
1627      android:protectionLevel="signature|privileged"/>
1628
1629    <!-- Must be required by a {@link android.telecom.CallScreeningService},
1630         to ensure that only the system can bind to it.
1631         <p>Protection level: signature|privileged
1632    -->
1633    <permission android:name="android.permission.BIND_SCREENING_SERVICE"
1634        android:protectionLevel="signature|privileged" />
1635
1636    <!-- Must be required by a {@link android.telecom.ConnectionService},
1637         to ensure that only the system can bind to it.
1638         @deprecated {@link android.telecom.ConnectionService}s should require
1639                 android.permission.BIND_TELECOM_CONNECTION_SERVICE instead.
1640         @SystemApi
1641         @hide -->
1642    <permission android:name="android.permission.BIND_CONNECTION_SERVICE"
1643        android:protectionLevel="signature|privileged" />
1644
1645    <!-- Must be required by a {@link android.telecom.ConnectionService},
1646         to ensure that only the system can bind to it.
1647         <p>Protection level: signature|privileged
1648    -->
1649    <permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"
1650        android:protectionLevel="signature|privileged" />
1651
1652    <!-- @SystemApi Allows an application to control the in-call experience.
1653         @hide -->
1654    <permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"
1655        android:protectionLevel="signature|privileged" />
1656
1657    <!-- Allows an application to receive STK related commands.
1658         @hide -->
1659    <permission android:name="android.permission.RECEIVE_STK_COMMANDS"
1660        android:protectionLevel="signature|privileged" />
1661
1662    <!-- Must be required by an ImsService to ensure that only the
1663         system can bind to it.
1664         <p>Protection level: signature|privileged
1665         @SystemApi
1666         @hide
1667    -->
1668    <permission android:name="android.permission.BIND_IMS_SERVICE"
1669        android:protectionLevel="signature|privileged" />
1670
1671
1672    <!-- ================================== -->
1673    <!-- Permissions for sdcard interaction -->
1674    <!-- ================================== -->
1675    <eat-comment />
1676
1677    <!-- @SystemApi Allows an application to write to internal media storage
1678         @hide  -->
1679    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
1680        android:protectionLevel="signature|privileged" />
1681
1682    <!-- Allows an application to manage access to documents, usually as part
1683         of a document picker.
1684         <p>This permission should <em>only</em> be requested by the platform
1685         document management app.  This permission cannot be granted to
1686         third-party apps.
1687         <p>Protection level: signature
1688    -->
1689    <permission android:name="android.permission.MANAGE_DOCUMENTS"
1690        android:protectionLevel="signature" />
1691
1692    <!-- @hide Allows an application to cache content.
1693         <p>Not for use by third-party applications.
1694         <p>Protection level: signature
1695    -->
1696    <permission android:name="android.permission.CACHE_CONTENT"
1697        android:protectionLevel="signature" />
1698
1699    <!-- Allows an application to aggressively allocate disk space.
1700         <p>Not for use by third-party applications.
1701    -->
1702    <permission android:name="android.permission.ALLOCATE_AGGRESSIVE"
1703        android:protectionLevel="signature|privileged" />
1704
1705    <!-- ================================== -->
1706    <!-- Permissions for screenlock         -->
1707    <!-- ================================== -->
1708    <eat-comment />
1709
1710    <!-- Allows applications to disable the keyguard if it is not secure.
1711         <p>Protection level: normal
1712    -->
1713    <permission android:name="android.permission.DISABLE_KEYGUARD"
1714        android:description="@string/permdesc_disableKeyguard"
1715        android:label="@string/permlab_disableKeyguard"
1716        android:protectionLevel="normal" />
1717
1718    <!-- ================================== -->
1719    <!-- Permissions to access other installed applications  -->
1720    <!-- ================================== -->
1721    <eat-comment />
1722
1723    <!-- @deprecated No longer enforced. -->
1724    <permission android:name="android.permission.GET_TASKS"
1725        android:label="@string/permlab_getTasks"
1726        android:description="@string/permdesc_getTasks"
1727        android:protectionLevel="normal" />
1728
1729    <!-- New version of GET_TASKS that apps can request, since GET_TASKS doesn't really
1730         give access to task information.  We need this new one because there are
1731         many existing apps that use add libraries and such that have validation
1732         code to ensure the app has requested the GET_TASKS permission by seeing
1733         if it has been granted the permission...  if it hasn't, it kills the app
1734         with a message about being upset.  So we need to have it continue to look
1735         like the app is getting that permission, even though it will never be
1736         checked, and new privileged apps can now request this one for real access.
1737         @hide
1738         @SystemApi -->
1739    <permission android:name="android.permission.REAL_GET_TASKS"
1740        android:protectionLevel="signature|privileged" />
1741
1742    <!-- Allows an application to start a task from a ActivityManager#RecentTaskInfo.
1743         @hide -->
1744    <permission android:name="android.permission.START_TASKS_FROM_RECENTS"
1745        android:protectionLevel="signature|privileged" />
1746
1747    <!-- @SystemApi @hide Allows an application to call APIs that allow it to do interactions
1748         across the users on the device, using singleton services and
1749         user-targeted broadcasts.  This permission is not available to
1750         third party applications. -->
1751    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
1752        android:protectionLevel="signature|privileged|development" />
1753
1754    <!-- @SystemApi Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
1755         that removes restrictions on where broadcasts can be sent and allows other
1756         types of interactions
1757         @hide -->
1758    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
1759        android:protectionLevel="signature|installer" />
1760
1761    <!-- @SystemApi @hide Allows an application to call APIs that allow it to query and manage
1762         users on the device. This permission is not available to
1763         third party applications. -->
1764    <permission android:name="android.permission.MANAGE_USERS"
1765        android:protectionLevel="signature|privileged" />
1766
1767    <!-- @hide Allows an application to create, remove users and get the list of
1768         users on the device. Applications holding this permission can only create restricted,
1769         guest, managed, demo, and ephemeral users. For creating other kind of users,
1770         {@link android.Manifest.permission#MANAGE_USERS} is needed.
1771         This permission is not available to third party applications. -->
1772    <permission android:name="android.permission.CREATE_USERS"
1773        android:protectionLevel="signature" />
1774
1775    <!-- @hide Allows an application to set the profile owners and the device owner.
1776         This permission is not available to third party applications.-->
1777    <permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"
1778        android:protectionLevel="signature"
1779        android:label="@string/permlab_manageProfileAndDeviceOwners"
1780        android:description="@string/permdesc_manageProfileAndDeviceOwners" />
1781
1782    <!-- Allows an application to get full detailed information about
1783         recently running tasks, with full fidelity to the real state.
1784         @hide -->
1785    <permission android:name="android.permission.GET_DETAILED_TASKS"
1786        android:protectionLevel="signature" />
1787
1788    <!-- Allows an application to change the Z-order of tasks.
1789         <p>Protection level: normal
1790    -->
1791    <permission android:name="android.permission.REORDER_TASKS"
1792        android:label="@string/permlab_reorderTasks"
1793        android:description="@string/permdesc_reorderTasks"
1794        android:protectionLevel="normal" />
1795
1796    <!-- @hide Allows an application to change to remove/kill tasks -->
1797    <permission android:name="android.permission.REMOVE_TASKS"
1798        android:protectionLevel="signature" />
1799
1800    <!-- @SystemApi @hide Allows an application to create/manage/remove stacks -->
1801    <permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"
1802        android:protectionLevel="signature|privileged" />
1803
1804    <!-- Allows an application to start any activity, regardless of permission
1805         protection or exported state.
1806         @hide -->
1807    <permission android:name="android.permission.START_ANY_ACTIVITY"
1808        android:protectionLevel="signature" />
1809
1810    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
1811        API is no longer supported. -->
1812    <permission android:name="android.permission.RESTART_PACKAGES"
1813        android:label="@string/permlab_killBackgroundProcesses"
1814        android:description="@string/permdesc_killBackgroundProcesses"
1815        android:protectionLevel="normal" />
1816
1817    <!-- Allows an application to call
1818        {@link android.app.ActivityManager#killBackgroundProcesses}.
1819         <p>Protection level: normal
1820    -->
1821    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
1822        android:label="@string/permlab_killBackgroundProcesses"
1823        android:description="@string/permdesc_killBackgroundProcesses"
1824        android:protectionLevel="normal" />
1825
1826    <!-- @SystemApi @hide Allows an application to query process states and current
1827         OOM adjustment scores.
1828         <p>Not for use by third-party applications. -->
1829    <permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE"
1830        android:protectionLevel="signature|privileged|development" />
1831
1832    <!-- Allows use of PendingIntent.getIntent().
1833         @hide -->
1834    <permission android:name="android.permission.GET_INTENT_SENDER_INTENT"
1835        android:protectionLevel="signature" />
1836
1837    <!-- ================================== -->
1838    <!-- Permissions affecting the display of other applications  -->
1839    <!-- ================================== -->
1840    <eat-comment />
1841
1842    <!-- Allows an app to create windows using the type
1843         {@link android.view.WindowManager.LayoutParams#TYPE_APPLICATION_OVERLAY},
1844         shown on top of all other apps.  Very few apps
1845         should use this permission; these windows are intended for
1846         system-level interaction with the user.
1847
1848         <p class="note"><strong>Note:</strong> If the app
1849         targets API level 23 or higher, the app user must explicitly grant
1850         this permission to the app through a permission management screen. The app requests
1851         the user's approval by sending an intent with action
1852         {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}.
1853         The app can check whether it has this authorization by calling
1854         {@link android.provider.Settings#canDrawOverlays
1855         Settings.canDrawOverlays()}.
1856         <p>Protection level: signature -->
1857    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
1858        android:label="@string/permlab_systemAlertWindow"
1859        android:description="@string/permdesc_systemAlertWindow"
1860        android:protectionLevel="signature|preinstalled|appop|pre23|development" />
1861
1862    <!-- Allows an app to run in the background.
1863         <p>Protection level: signature
1864    -->
1865    <permission android:name="android.permission.RUN_IN_BACKGROUND"
1866        android:label="@string/permlab_runInBackground"
1867        android:description="@string/permdesc_runInBackground"
1868        android:protectionLevel="signature" />
1869
1870    <!-- Allows an app to use data in the background.
1871         <p>Protection level: signature
1872    -->
1873    <permission android:name="android.permission.USE_DATA_IN_BACKGROUND"
1874        android:label="@string/permlab_useDataInBackground"
1875        android:description="@string/permdesc_useDataInBackground"
1876        android:protectionLevel="signature" />
1877
1878    <!-- ================================== -->
1879    <!-- Permissions affecting the system wallpaper -->
1880    <!-- ================================== -->
1881    <eat-comment />
1882
1883    <!-- Allows applications to set the wallpaper.
1884         <p>Protection level: normal
1885     -->
1886    <permission android:name="android.permission.SET_WALLPAPER"
1887        android:label="@string/permlab_setWallpaper"
1888        android:description="@string/permdesc_setWallpaper"
1889        android:protectionLevel="normal" />
1890
1891    <!-- Allows applications to set the wallpaper hints.
1892         <p>Protection level: normal
1893    -->
1894    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
1895        android:label="@string/permlab_setWallpaperHints"
1896        android:description="@string/permdesc_setWallpaperHints"
1897        android:protectionLevel="normal" />
1898
1899    <!-- ============================================ -->
1900    <!-- Permissions for changing the system clock -->
1901    <!-- ============================================ -->
1902    <eat-comment />
1903
1904    <!-- @SystemApi Allows applications to set the system time.
1905    <p>Not for use by third-party applications. -->
1906    <permission android:name="android.permission.SET_TIME"
1907        android:protectionLevel="signature|privileged" />
1908
1909    <!-- Allows applications to set the system time zone.
1910         <p>Not for use by third-party applications.
1911    -->
1912    <permission android:name="android.permission.SET_TIME_ZONE"
1913        android:label="@string/permlab_setTimeZone"
1914        android:description="@string/permdesc_setTimeZone"
1915        android:protectionLevel="signature|privileged" />
1916
1917    <!-- ==================================================== -->
1918    <!-- Permissions related to changing status bar   -->
1919    <!-- ==================================================== -->
1920    <eat-comment />
1921
1922    <!-- Allows an application to expand or collapse the status bar.
1923         <p>Protection level: normal
1924    -->
1925    <permission android:name="android.permission.EXPAND_STATUS_BAR"
1926        android:label="@string/permlab_expandStatusBar"
1927        android:description="@string/permdesc_expandStatusBar"
1928        android:protectionLevel="normal" />
1929
1930    <!-- ============================================================== -->
1931    <!-- Permissions related to adding/removing shortcuts from Launcher -->
1932    <!-- ============================================================== -->
1933    <eat-comment />
1934
1935    <!-- Allows an application to install a shortcut in Launcher.
1936         <p>Protection level: normal
1937    -->
1938    <permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
1939        android:label="@string/permlab_install_shortcut"
1940        android:description="@string/permdesc_install_shortcut"
1941        android:protectionLevel="normal"/>
1942
1943    <!--This permission is no longer supported.
1944    -->
1945    <permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"
1946        android:label="@string/permlab_uninstall_shortcut"
1947        android:description="@string/permdesc_uninstall_shortcut"
1948        android:protectionLevel="normal"/>
1949
1950    <!-- ==================================================== -->
1951    <!-- Permissions related to accessing sync settings   -->
1952    <!-- ==================================================== -->
1953    <eat-comment />
1954
1955    <!-- Allows applications to read the sync settings.
1956         <p>Protection level: normal
1957    -->
1958    <permission android:name="android.permission.READ_SYNC_SETTINGS"
1959        android:description="@string/permdesc_readSyncSettings"
1960        android:label="@string/permlab_readSyncSettings"
1961        android:protectionLevel="normal" />
1962
1963    <!-- Allows applications to write the sync settings.
1964         <p>Protection level: normal
1965    -->
1966    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
1967        android:description="@string/permdesc_writeSyncSettings"
1968        android:label="@string/permlab_writeSyncSettings"
1969        android:protectionLevel="normal" />
1970
1971    <!-- Allows applications to read the sync stats.
1972         <p>Protection level: normal
1973    -->
1974    <permission android:name="android.permission.READ_SYNC_STATS"
1975        android:description="@string/permdesc_readSyncStats"
1976        android:label="@string/permlab_readSyncStats"
1977        android:protectionLevel="normal" />
1978
1979    <!-- ============================================ -->
1980    <!-- Permissions for low-level system interaction -->
1981    <!-- ============================================ -->
1982    <eat-comment />
1983
1984    <!-- @SystemApi @hide Change the screen compatibility mode of applications -->
1985    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
1986        android:protectionLevel="signature" />
1987
1988    <!-- @SystemApi Allows an application to modify the current configuration, such
1989         as locale. -->
1990    <permission android:name="android.permission.CHANGE_CONFIGURATION"
1991        android:protectionLevel="signature|privileged|development" />
1992
1993    <!-- Allows an application to read or write the system settings.
1994
1995        <p class="note"><strong>Note:</strong> If the app targets API level 23
1996        or higher, the app user
1997        must explicitly grant this permission to the app through a permission management screen.
1998        The app requests the user's approval by sending an intent with action
1999        {@link android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}. The app
2000        can check whether it has this authorization by calling {@link
2001        android.provider.Settings.System#canWrite Settings.System.canWrite()}.
2002
2003        <p>Protection level: signature
2004    -->
2005    <permission android:name="android.permission.WRITE_SETTINGS"
2006        android:label="@string/permlab_writeSettings"
2007        android:description="@string/permdesc_writeSettings"
2008        android:protectionLevel="signature|preinstalled|appop|pre23" />
2009
2010    <!-- @SystemApi Allows an application to modify the Google service map.
2011    <p>Not for use by third-party applications. -->
2012    <permission android:name="android.permission.WRITE_GSERVICES"
2013        android:protectionLevel="signature|privileged" />
2014
2015    <!-- @SystemApi Allows an application to call
2016        {@link android.app.ActivityManager#forceStopPackage}.
2017        @hide -->
2018    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
2019        android:protectionLevel="signature|privileged" />
2020
2021    <!-- @SystemApi @hide Allows an application to retrieve the content of the active window
2022         An active window is the window that has fired an accessibility event. -->
2023    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
2024        android:protectionLevel="signature|privileged" />
2025
2026    <!-- @SystemApi Modify the global animation scaling factor.
2027    <p>Not for use by third-party applications. -->
2028    <permission android:name="android.permission.SET_ANIMATION_SCALE"
2029        android:protectionLevel="signature|privileged|development" />
2030
2031    <!-- @deprecated This functionality will be removed in the future; please do
2032         not use. Allow an application to make its activities persistent. -->
2033    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
2034        android:label="@string/permlab_persistentActivity"
2035        android:description="@string/permdesc_persistentActivity"
2036        android:protectionLevel="normal" />
2037
2038    <!-- Allows an application to find out the space used by any package.
2039         <p>Protection level: normal
2040    -->
2041    <permission android:name="android.permission.GET_PACKAGE_SIZE"
2042        android:label="@string/permlab_getPackageSize"
2043        android:description="@string/permdesc_getPackageSize"
2044        android:protectionLevel="normal" />
2045
2046    <!-- @deprecated No longer useful, see
2047         {@link android.content.pm.PackageManager#addPackageToPreferred}
2048         for details. -->
2049    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
2050        android:protectionLevel="signature|verifier" />
2051
2052    <!-- Allows an application to receive the
2053         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
2054         broadcast after the system finishes booting.  If you don't
2055         request this permission, you will not receive the broadcast at
2056         that time.  Though holding this permission does not have any
2057         security implications, it can have a negative impact on the
2058         user experience by increasing the amount of time it takes the
2059         system to start and allowing applications to have themselves
2060         running without the user being aware of them.  As such, you must
2061         explicitly declare your use of this facility to make that visible
2062         to the user.
2063         <p>Protection level: normal
2064    -->
2065    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
2066        android:label="@string/permlab_receiveBootCompleted"
2067        android:description="@string/permdesc_receiveBootCompleted"
2068        android:protectionLevel="normal" />
2069
2070    <!-- Allows an application to broadcast sticky intents.  These are
2071         broadcasts whose data is held by the system after being finished,
2072         so that clients can quickly retrieve that data without having
2073         to wait for the next broadcast.
2074         <p>Protection level: normal
2075    -->
2076    <permission android:name="android.permission.BROADCAST_STICKY"
2077        android:label="@string/permlab_broadcastSticky"
2078        android:description="@string/permdesc_broadcastSticky"
2079        android:protectionLevel="normal" />
2080
2081    <!-- @SystemApi Allows mounting and unmounting file systems for removable storage.
2082    <p>Not for use by third-party applications.-->
2083    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
2084        android:protectionLevel="signature|privileged" />
2085
2086    <!-- @SystemApi Allows formatting file systems for removable storage.
2087    <p>Not for use by third-party applications. -->
2088    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
2089        android:protectionLevel="signature|privileged" />
2090
2091    <!-- @hide -->
2092    <permission android:name="android.permission.STORAGE_INTERNAL"
2093        android:protectionLevel="signature" />
2094
2095    <!-- Allows access to ASEC non-destructive API calls
2096         @hide  -->
2097    <permission android:name="android.permission.ASEC_ACCESS"
2098        android:protectionLevel="signature" />
2099
2100    <!-- Allows creation of ASEC volumes
2101         @hide  -->
2102    <permission android:name="android.permission.ASEC_CREATE"
2103        android:protectionLevel="signature" />
2104
2105    <!-- Allows destruction of ASEC volumes
2106         @hide  -->
2107    <permission android:name="android.permission.ASEC_DESTROY"
2108        android:protectionLevel="signature" />
2109
2110    <!-- Allows mount / unmount of ASEC volumes
2111         @hide  -->
2112    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
2113        android:protectionLevel="signature" />
2114
2115    <!-- Allows rename of ASEC volumes
2116         @hide  -->
2117    <permission android:name="android.permission.ASEC_RENAME"
2118        android:protectionLevel="signature" />
2119
2120    <!-- @SystemApi Allows applications to write the apn settings.
2121    <p>Not for use by third-party applications. -->
2122    <permission android:name="android.permission.WRITE_APN_SETTINGS"
2123        android:protectionLevel="signature|privileged" />
2124
2125    <!-- Allows applications to change network connectivity state.
2126         <p>Protection level: normal
2127    -->
2128    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
2129        android:description="@string/permdesc_changeNetworkState"
2130        android:label="@string/permlab_changeNetworkState"
2131        android:protectionLevel="normal" />
2132
2133    <!-- Allows an application to clear the caches of all installed
2134         applications on the device.
2135         <p>Protection level: system|signature
2136    -->
2137    <permission android:name="android.permission.CLEAR_APP_CACHE"
2138        android:protectionLevel="signature|privileged" />
2139
2140    <!-- @SystemApi Allows an application to use any media decoder when decoding for playback
2141         @hide -->
2142    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
2143        android:protectionLevel="signature|privileged" />
2144
2145    <!-- @SystemApi Allows an application to install and/or uninstall CA certificates on
2146         behalf of the user.
2147         @hide -->
2148    <permission android:name="android.permission.MANAGE_CA_CERTIFICATES"
2149        android:protectionLevel="signature|privileged" />
2150
2151    <!-- @SystemApi Allows an application to do certain operations needed for
2152         interacting with the recovery (system update) system.
2153         @hide -->
2154    <permission android:name="android.permission.RECOVERY"
2155        android:protectionLevel="signature|privileged" />
2156
2157    <!-- Allows the system to bind to an application's task services
2158         @hide -->
2159    <permission android:name="android.permission.BIND_JOB_SERVICE"
2160        android:protectionLevel="signature" />
2161    <uses-permission android:name="android.permission.BIND_JOB_SERVICE"/>
2162
2163    <!-- Allows an application to initiate configuration updates
2164         <p>An application requesting this permission is responsible for
2165         verifying the source and integrity of any update before passing
2166         it off to the various individual installer components
2167         @hide -->
2168    <permission android:name="android.permission.UPDATE_CONFIG"
2169        android:protectionLevel="signature|privileged" />
2170
2171    <!-- Allows the system to reset throttling in shortcut manager.
2172         @hide -->
2173    <permission android:name="android.permission.RESET_SHORTCUT_MANAGER_THROTTLING"
2174        android:protectionLevel="signature" />
2175
2176    <!-- Allows the system to bind to the discovered Network Recommendation Service.
2177         @SystemApi @hide -->
2178    <permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"
2179        android:protectionLevel="signature" />
2180    <uses-permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"/>
2181
2182    <!-- Allows an application to enable, disable and change priority of
2183         runtime resource overlays.
2184         @hide -->
2185    <permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES"
2186        android:protectionLevel="signature|privileged" />
2187
2188    <!-- ========================================= -->
2189    <!-- Permissions for special development tools -->
2190    <!-- ========================================= -->
2191    <eat-comment />
2192
2193    <!-- @SystemApi Allows an application to read or write the secure system settings.
2194    <p>Not for use by third-party applications. -->
2195    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
2196        android:protectionLevel="signature|privileged|development" />
2197
2198    <!-- @SystemApi Allows an application to retrieve state dump information from system services.
2199    <p>Not for use by third-party applications. -->
2200    <permission android:name="android.permission.DUMP"
2201        android:protectionLevel="signature|privileged|development" />
2202
2203    <!-- @SystemApi Allows an application to read the low-level system log files.
2204    <p>Not for use by third-party applications, because
2205    Log entries can contain the user's private information. -->
2206    <permission android:name="android.permission.READ_LOGS"
2207        android:protectionLevel="signature|privileged|development" />
2208
2209    <!-- @SystemApi Configure an application for debugging.
2210    <p>Not for use by third-party applications. -->
2211    <permission android:name="android.permission.SET_DEBUG_APP"
2212        android:protectionLevel="signature|privileged|development" />
2213
2214    <!-- @SystemApi Allows an application to set the maximum number of (not needed)
2215         application processes that can be running.
2216         <p>Not for use by third-party applications. -->
2217    <permission android:name="android.permission.SET_PROCESS_LIMIT"
2218        android:protectionLevel="signature|privileged|development" />
2219
2220    <!-- @SystemApi Allows an application to control whether activities are immediately
2221         finished when put in the background.
2222         <p>Not for use by third-party applications. -->
2223    <permission android:name="android.permission.SET_ALWAYS_FINISH"
2224        android:protectionLevel="signature|privileged|development" />
2225
2226    <!-- @SystemApi Allow an application to request that a signal be sent to all persistent processes.
2227    <p>Not for use by third-party applications. -->
2228    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
2229        android:protectionLevel="signature|privileged|development" />
2230
2231    <!-- ==================================== -->
2232    <!-- Private permissions                  -->
2233    <!-- ==================================== -->
2234    <eat-comment />
2235
2236    <!-- @SystemApi Allows access to the list of accounts in the Accounts Service. -->
2237    <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"
2238        android:protectionLevel="signature|privileged" />
2239
2240    <!-- Allows but does not guarantee access to user passwords at the conclusion of add account
2241    @hide -->
2242    <permission android:name="android.permission.GET_PASSWORD"
2243        android:protectionLevel="signature" />
2244
2245    <!-- @SystemApi Allows applications to RW to diagnostic resources.
2246    <p>Not for use by third-party applications. -->
2247    <permission android:name="android.permission.DIAGNOSTIC"
2248        android:protectionLevel="signature" />
2249
2250    <!-- @SystemApi Allows an application to open, close, or disable the status bar
2251         and its icons.
2252         <p>Not for use by third-party applications. -->
2253    <permission android:name="android.permission.STATUS_BAR"
2254        android:protectionLevel="signature|privileged" />
2255
2256    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
2257    @hide -->
2258    <permission android:name="android.permission.STATUS_BAR_SERVICE"
2259        android:protectionLevel="signature" />
2260
2261    <!-- Allows an application to bind to third party quick settings tiles.
2262         <p>Should only be requested by the System, should be required by
2263         TileService declarations.-->
2264    <permission android:name="android.permission.BIND_QUICK_SETTINGS_TILE"
2265        android:protectionLevel="signature" />
2266
2267    <!-- @SystemApi Allows an application to force a BACK operation on whatever is the
2268         top activity.
2269         <p>Not for use by third-party applications.
2270         @hide
2271    -->
2272    <permission android:name="android.permission.FORCE_BACK"
2273        android:protectionLevel="signature" />
2274
2275    <!-- @SystemApi Allows an application to update device statistics.
2276    <p>Not for use by third-party applications. -->
2277    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
2278        android:protectionLevel="signature|privileged" />
2279
2280    <!-- @SystemApi @hide Allows an application to collect battery statistics -->
2281    <permission android:name="android.permission.GET_APP_OPS_STATS"
2282        android:protectionLevel="signature|privileged|development" />
2283
2284    <!-- @SystemApi Allows an application to update application operation statistics. Not for
2285         use by third party apps.
2286         @hide -->
2287    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
2288        android:protectionLevel="signature|privileged|installer" />
2289
2290    <!-- @SystemApi Allows an application to update the user app op restrictions.
2291         Not for use by third party apps.
2292         @hide -->
2293    <permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"
2294        android:protectionLevel="signature|installer" />
2295
2296    <!-- @SystemApi Allows an application to open windows that are for use by parts
2297         of the system user interface.
2298         <p>Not for use by third-party applications.
2299         @hide
2300    -->
2301    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
2302        android:protectionLevel="signature" />
2303
2304    <!-- @SystemApi Allows an application to manage (create, destroy,
2305         Z-order) application tokens in the window manager.
2306         <p>Not for use by third-party applications.
2307         @hide
2308    -->
2309    <permission android:name="android.permission.MANAGE_APP_TOKENS"
2310        android:protectionLevel="signature" />
2311
2312    <!-- Allows System UI to register listeners for events from Window Manager.
2313         @hide -->
2314    <permission android:name="android.permission.REGISTER_WINDOW_MANAGER_LISTENERS"
2315        android:protectionLevel="signature" />
2316
2317    <!-- @hide Allows the application to temporarily freeze the screen for a
2318         full-screen transition. -->
2319    <permission android:name="android.permission.FREEZE_SCREEN"
2320        android:protectionLevel="signature" />
2321
2322    <!-- @SystemApi Allows an application to inject user events (keys, touch, trackball)
2323         into the event stream and deliver them to ANY window.  Without this
2324         permission, you can only deliver events to windows in your own process.
2325         <p>Not for use by third-party applications.
2326         @hide
2327    -->
2328    <permission android:name="android.permission.INJECT_EVENTS"
2329        android:protectionLevel="signature" />
2330
2331    <!-- @hide Allows an application to register an input filter which filters the stream
2332         of user events (keys, touch, trackball) before they are dispatched to any window. -->
2333    <permission android:name="android.permission.FILTER_EVENTS"
2334        android:protectionLevel="signature" />
2335
2336    <!-- @hide Allows an application to retrieve the window token from the accessibility manager. -->
2337    <permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"
2338        android:protectionLevel="signature" />
2339
2340    <!-- @hide Allows an application to modify accessibility information from another app. -->
2341    <permission android:name="android.permission.MODIFY_ACCESSIBILITY_DATA"
2342                android:protectionLevel="signature" />
2343
2344    <!-- @hide Allows an application to change the accessibility volume. -->
2345    <permission android:name="android.permission.CHANGE_ACCESSIBILITY_VOLUME"
2346                android:protectionLevel="signature" />
2347
2348    <!-- @hide Allows an application to collect frame statistics -->
2349    <permission android:name="android.permission.FRAME_STATS"
2350         android:protectionLevel="signature" />
2351
2352    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
2353    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
2354        android:protectionLevel="signature" />
2355
2356    <!-- @SystemApi Allows an application to watch and control how activities are
2357         started globally in the system.  Only for is in debugging
2358         (usually the monkey command).
2359         <p>Not for use by third-party applications.
2360         @hide
2361    -->
2362    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
2363        android:protectionLevel="signature" />
2364
2365    <!-- @SystemApi Allows an application to call the activity manager shutdown() API
2366         to put the higher-level system there into a shutdown state.
2367         @hide -->
2368    <permission android:name="android.permission.SHUTDOWN"
2369        android:protectionLevel="signature|privileged" />
2370
2371    <!-- @SystemApi Allows an application to tell the activity manager to temporarily
2372         stop application switches, putting it into a special mode that
2373         prevents applications from immediately switching away from some
2374         critical UI such as the home screen.
2375         @hide -->
2376    <permission android:name="android.permission.STOP_APP_SWITCHES"
2377        android:protectionLevel="signature|privileged" />
2378
2379    <!-- @SystemApi Allows an application to retrieve private information about
2380         the current top activity, such as any assist context it can provide.
2381         <p>Not for use by third-party applications.
2382         @hide
2383    -->
2384    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
2385        android:protectionLevel="signature" />
2386
2387    <!-- Allows an application to retrieve the current state of keys and
2388         switches.
2389         <p>Not for use by third-party applications.
2390         @deprecated The API that used this permission has been removed. -->
2391    <permission android:name="android.permission.READ_INPUT_STATE"
2392        android:protectionLevel="signature" />
2393
2394    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
2395         to ensure that only the system can bind to it.
2396         <p>Protection level: signature
2397    -->
2398    <permission android:name="android.permission.BIND_INPUT_METHOD"
2399        android:protectionLevel="signature" />
2400
2401    <!-- Must be required by an {@link android.media.midi.MidiDeviceService},
2402         to ensure that only the system can bind to it.
2403         <p>Protection level: signature
2404    -->
2405    <permission android:name="android.permission.BIND_MIDI_DEVICE_SERVICE"
2406        android:protectionLevel="signature" />
2407
2408    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
2409         to ensure that only the system can bind to it.
2410         <p>Protection level: signature
2411    -->
2412    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
2413        android:protectionLevel="signature" />
2414
2415    <!-- Must be required by a {@link android.printservice.PrintService},
2416         to ensure that only the system can bind to it.
2417         <p>Protection level: signature
2418    -->
2419    <permission android:name="android.permission.BIND_PRINT_SERVICE"
2420        android:protectionLevel="signature" />
2421
2422    <!-- Must be required by a {@link android.printservice.recommendation.RecommendationService},
2423     to ensure that only the system can bind to it.
2424     @hide
2425     @SystemApi
2426     <p>Protection level: signature
2427    -->
2428    <permission android:name="android.permission.BIND_PRINT_RECOMMENDATION_SERVICE"
2429            android:protectionLevel="signature" />
2430
2431    <!-- Must be required by a {@link android.nfc.cardemulation.HostApduService}
2432         or {@link android.nfc.cardemulation.OffHostApduService} to ensure that only
2433         the system can bind to it.
2434         <p>Protection level: signature
2435    -->
2436    <permission android:name="android.permission.BIND_NFC_SERVICE"
2437        android:protectionLevel="signature" />
2438
2439    <!-- Must be required by the PrintSpooler to ensure that only the system can bind to it.
2440         @hide -->
2441    <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
2442        android:protectionLevel="signature" />
2443
2444    <!-- Must be required by the CompanionDeviceManager to ensure that only the system can bind to it.
2445         @hide -->
2446    <permission android:name="android.permission.BIND_COMPANION_DEVICE_MANAGER_SERVICE"
2447        android:protectionLevel="signature" />
2448
2449    <!-- @SystemApi Must be required by the RuntimePermissionPresenterService to ensure
2450         that only the system can bind to it.
2451         @hide -->
2452    <permission android:name="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE"
2453        android:protectionLevel="signature" />
2454
2455    <!-- Must be required by a TextService (e.g. SpellCheckerService)
2456         to ensure that only the system can bind to it.
2457         <p>Protection level: signature
2458    -->
2459    <permission android:name="android.permission.BIND_TEXT_SERVICE"
2460        android:protectionLevel="signature" />
2461
2462    <!-- Must be required by a {@link android.net.VpnService},
2463         to ensure that only the system can bind to it.
2464         <p>Protection level: signature
2465    -->
2466    <permission android:name="android.permission.BIND_VPN_SERVICE"
2467        android:protectionLevel="signature" />
2468
2469    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
2470         to ensure that only the system can bind to it.
2471         <p>Protection level: system|signature
2472    -->
2473    <permission android:name="android.permission.BIND_WALLPAPER"
2474        android:protectionLevel="signature|privileged" />
2475
2476    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService},
2477         to ensure that only the system can bind to it.
2478         <p>Protection level: signature
2479    -->
2480    <permission android:name="android.permission.BIND_VOICE_INTERACTION"
2481        android:protectionLevel="signature" />
2482
2483    <!-- Must be required by a {@link android.service.autofill.AutofillService},
2484         to ensure that only the system can bind to it.
2485         <p>Protection level: signature
2486    -->
2487    <permission android:name="android.permission.BIND_AUTOFILL"
2488        android:protectionLevel="signature" />
2489
2490    <!--  TODO(b/35956626): temporary until clients change to BIND_AUTOFILL
2491         <p>Protection level: signature
2492    -->
2493    <permission android:name="android.permission.BIND_AUTO_FILL"
2494        android:protectionLevel="signature" />
2495
2496    <!-- Must be required by hotword enrollment application,
2497         to ensure that only the system can interact with it.
2498         @hide <p>Not for use by third-party applications.</p> -->
2499    <permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"
2500        android:protectionLevel="signature|privileged" />
2501
2502    <!-- Must be required by a {@link com.android.media.remotedisplay.RemoteDisplayProvider},
2503         to ensure that only the system can bind to it.
2504         @hide -->
2505    <permission android:name="android.permission.BIND_REMOTE_DISPLAY"
2506        android:protectionLevel="signature" />
2507
2508    <!-- Must be required by a {@link android.media.tv.TvInputService}
2509         to ensure that only the system can bind to it.
2510         <p>Protection level: signature
2511    -->
2512    <permission android:name="android.permission.BIND_TV_INPUT"
2513        android:protectionLevel="signature|privileged" />
2514
2515    <!-- @SystemApi
2516         Must be required by a {@link com.android.media.tv.remoteprovider.TvRemoteProvider}
2517         to ensure that only the system can bind to it.
2518         <p>Protection level: signature|privileged
2519         <p>Not for use by third-party applications. </p>
2520         @hide  -->
2521    <permission android:name="android.permission.BIND_TV_REMOTE_SERVICE"
2522        android:protectionLevel="signature|privileged" />
2523
2524    <!-- @SystemApi
2525         Must be required for a virtual remote controller for TV.
2526         <p>Protection level: signature|privileged
2527         <p>Not for use by third-party applications. </p>
2528         @hide  -->
2529    <permission android:name="android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"
2530        android:protectionLevel="signature|privileged" />
2531
2532    <!-- @SystemApi Allows an application to modify parental controls
2533         <p>Not for use by third-party applications.
2534         @hide -->
2535    <permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"
2536        android:protectionLevel="signature|privileged" />
2537
2538    <!-- @SystemApi Allows an application to notify TV inputs by sending broadcasts.
2539         <p>Protection level: signature|privileged
2540         <p>Not for use by third-party applications.
2541         @hide -->
2542    <permission android:name="android.permission.NOTIFY_TV_INPUTS"
2543         android:protectionLevel="signature|privileged" />
2544
2545    <!-- Must be required by a {@link android.media.routing.MediaRouteService}
2546         to ensure that only the system can interact with it.
2547         @hide -->
2548    <permission android:name="android.permission.BIND_ROUTE_PROVIDER"
2549        android:protectionLevel="signature" />
2550
2551    <!-- Must be required by device administration receiver, to ensure that only the
2552         system can interact with it.
2553         <p>Protection level: signature
2554    -->
2555    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
2556        android:protectionLevel="signature" />
2557
2558    <!-- @SystemApi Required to add or remove another application as a device admin.
2559         <p>Not for use by third-party applications.
2560         @hide -->
2561    <permission android:name="android.permission.MANAGE_DEVICE_ADMINS"
2562        android:protectionLevel="signature|privileged" />
2563
2564    <!-- @SystemApi Allows low-level access to setting the orientation (actually
2565         rotation) of the screen.
2566         <p>Not for use by third-party applications.
2567         @hide
2568    -->
2569    <permission android:name="android.permission.SET_ORIENTATION"
2570        android:protectionLevel="signature" />
2571
2572    <!-- @SystemApi Allows low-level access to setting the pointer speed.
2573         <p>Not for use by third-party applications.
2574         @hide
2575    -->
2576    <permission android:name="android.permission.SET_POINTER_SPEED"
2577        android:protectionLevel="signature" />
2578
2579    <!-- Allows low-level access to setting input device calibration.
2580         <p>Not for use by normal applications.
2581         @hide -->
2582    <permission android:name="android.permission.SET_INPUT_CALIBRATION"
2583        android:protectionLevel="signature" />
2584
2585    <!-- Allows low-level access to setting the keyboard layout.
2586         <p>Not for use by third-party applications.
2587         @hide -->
2588    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
2589        android:protectionLevel="signature" />
2590
2591    <!-- Allows an application to query tablet mode state and monitor changes
2592         in it.
2593         <p>Not for use by third-party applications.
2594         @hide -->
2595    <permission android:name="android.permission.TABLET_MODE"
2596        android:protectionLevel="signature" />
2597
2598    <!-- Allows an application to request installing packages. Apps
2599         targeting APIs greater than 25 must hold this permission in
2600         order to use {@link android.content.Intent#ACTION_INSTALL_PACKAGE}.
2601         <p>Protection level: signature
2602    -->
2603    <permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"
2604        android:label="@string/permlab_requestInstallPackages"
2605        android:description="@string/permdesc_requestInstallPackages"
2606        android:protectionLevel="signature|appop" />
2607
2608    <!-- Allows an application to request deleting packages. Apps
2609         targeting APIs greater than 25 must hold this permission in
2610         order to use {@link android.content.Intent#ACTION_UNINSTALL_PACKAGE}.
2611         <p>Protection level: normal
2612    -->
2613    <permission android:name="android.permission.REQUEST_DELETE_PACKAGES"
2614        android:label="@string/permlab_requestDeletePackages"
2615        android:description="@string/permdesc_requestDeletePackages"
2616        android:protectionLevel="normal" />
2617
2618    <!-- @SystemApi Allows an application to install packages.
2619    <p>Not for use by third-party applications. -->
2620    <permission android:name="android.permission.INSTALL_PACKAGES"
2621        android:protectionLevel="signature|privileged" />
2622
2623    <!-- @SystemApi Allows an application to clear user data.
2624         <p>Not for use by third-party applications
2625         @hide
2626    -->
2627    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
2628        android:protectionLevel="signature|installer" />
2629
2630    <!-- @hide Allows an application to get the URI permissions
2631         granted to another application.
2632         <p>Not for use by third-party applications
2633    -->
2634    <permission android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS"
2635        android:protectionLevel="signature" />
2636
2637    <!-- @hide Allows an application to clear the URI permissions
2638         granted to another application.
2639         <p>Not for use by third-party applications
2640    -->
2641    <permission
2642        android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS"
2643        android:protectionLevel="signature" />
2644
2645    <!-- @SystemApi Allows an application to delete cache files.
2646    <p>Not for use by third-party applications. -->
2647    <permission android:name="android.permission.DELETE_CACHE_FILES"
2648        android:protectionLevel="signature|privileged" />
2649
2650    <!-- @SystemApi Allows an application to delete packages.
2651         <p>Not for use by third-party applications.
2652         <p>Starting in {@link android.os.Build.VERSION_CODES#N}, user confirmation is requested
2653         when the application deleting the package is not the same application that installed the
2654         package. -->
2655    <permission android:name="android.permission.DELETE_PACKAGES"
2656        android:protectionLevel="signature|privileged" />
2657
2658    <!-- @SystemApi Allows an application to move location of installed package.
2659         @hide -->
2660    <permission android:name="android.permission.MOVE_PACKAGE"
2661        android:protectionLevel="signature|privileged" />
2662
2663    <!-- @SystemApi Allows an application to change whether an application component (other than its own) is
2664         enabled or not.
2665         <p>Not for use by third-party applications. -->
2666    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
2667        android:protectionLevel="signature|privileged" />
2668
2669    <!-- @SystemApi Allows an application to grant specific permissions.
2670         @hide -->
2671    <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"
2672        android:protectionLevel="signature|installer|verifier" />
2673
2674    <!-- @SystemApi Allows an app that has this permission and the permissions to install packages
2675         to request certain runtime permissions to be granted at installation.
2676         @hide -->
2677    <permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"
2678        android:protectionLevel="signature|installer|verifier" />
2679
2680    <!-- @SystemApi Allows an application to revoke specific permissions.
2681        @hide -->
2682    <permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"
2683         android:protectionLevel="signature|installer|verifier" />
2684
2685    <!-- @hide Allows an application to observe permission changes. -->
2686    <permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS"
2687        android:protectionLevel="signature|privileged" />
2688
2689    <!-- @SystemApi Allows an application to use SurfaceFlinger's low level features.
2690         <p>Not for use by third-party applications.
2691         @hide
2692    -->
2693    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
2694        android:protectionLevel="signature" />
2695
2696    <!-- @SystemApi Allows an application to take screen shots and more generally
2697         get access to the frame buffer data.
2698         <p>Not for use by third-party applications. -->
2699    <permission android:name="android.permission.READ_FRAME_BUFFER"
2700        android:protectionLevel="signature|privileged" />
2701
2702    <!-- Allows an application to use InputFlinger's low level features.
2703         @hide -->
2704    <permission android:name="android.permission.ACCESS_INPUT_FLINGER"
2705        android:protectionLevel="signature" />
2706
2707    <!-- Allows an application to configure and connect to Wifi displays
2708         @hide -->
2709    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
2710        android:protectionLevel="signature" />
2711
2712    <!-- Allows an application to control low-level features of Wifi displays
2713         such as opening an RTSP socket.  This permission should only be used
2714         by the display manager.
2715         @hide -->
2716    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
2717        android:protectionLevel="signature" />
2718
2719    <!-- Allows an application to control the color modes set for displays system-wide.
2720         <p>Not for use by third-party applications.</p>
2721         @hide -->
2722    <permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_MODE"
2723        android:protectionLevel="signature" />
2724
2725    <!-- @SystemApi Allows an application to control VPN.
2726         <p>Not for use by third-party applications.</p>
2727         @hide -->
2728    <permission android:name="android.permission.CONTROL_VPN"
2729        android:protectionLevel="signature|privileged" />
2730    <uses-permission android:name="android.permission.CONTROL_VPN" />
2731
2732    <!-- @SystemApi Allows an application to capture audio output.
2733         <p>Not for use by third-party applications.</p> -->
2734    <permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
2735        android:protectionLevel="signature|privileged" />
2736
2737    <!-- @SystemApi Allows an application to capture audio for hotword detection.
2738         <p>Not for use by third-party applications.</p>
2739         @hide -->
2740    <permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"
2741        android:protectionLevel="signature|privileged" />
2742
2743    <!-- @SystemApi Allows an application to modify audio routing and override policy decisions.
2744         <p>Not for use by third-party applications.</p>
2745         @hide -->
2746    <permission android:name="android.permission.MODIFY_AUDIO_ROUTING"
2747        android:protectionLevel="signature|privileged" />
2748
2749    <!-- @SystemApi Allows an application to capture video output.
2750         <p>Not for use by third-party applications.</p> -->
2751    <permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"
2752        android:protectionLevel="signature|privileged" />
2753
2754    <!-- @SystemApi Allows an application to capture secure video output.
2755         <p>Not for use by third-party applications.</p> -->
2756    <permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"
2757        android:protectionLevel="signature|privileged" />
2758
2759    <!-- @SystemApi Allows an application to know what content is playing and control its playback.
2760         <p>Not for use by third-party applications due to privacy of media consumption</p>  -->
2761    <permission android:name="android.permission.MEDIA_CONTENT_CONTROL"
2762        android:protectionLevel="signature|privileged" />
2763
2764    <!-- @SystemApi @hide Allows an application to set the volume key long-press listener.
2765         <p>When it's set, the application will receive the volume key long-press event
2766         instead of changing volume.</p>
2767         <p>Not for use by third-party applications</p> -->
2768    <permission android:name="android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER"
2769        android:protectionLevel="signature|privileged|development" />
2770
2771    <!-- @SystemApi @hide Allows an application to set media key event listener.
2772         <p>When it's set, the application will receive the media key event before
2773         any other media sessions. If the event is handled by the listener, other sessions
2774         cannot get the event.</p>
2775         <p>Not for use by third-party applications</p> -->
2776    <permission android:name="android.permission.SET_MEDIA_KEY_LISTENER"
2777        android:protectionLevel="signature|privileged|development" />
2778
2779    <!-- @SystemApi Required to be able to disable the device (very dangerous!).
2780         <p>Not for use by third-party applications.
2781         @hide
2782    -->
2783    <permission android:name="android.permission.BRICK"
2784        android:protectionLevel="signature" />
2785
2786    <!-- @SystemApi Required to be able to reboot the device.
2787    <p>Not for use by third-party applications. -->
2788    <permission android:name="android.permission.REBOOT"
2789        android:protectionLevel="signature|privileged" />
2790
2791   <!-- @SystemApi Allows low-level access to power management.
2792        <p>Not for use by third-party applications.
2793        @hide
2794    -->
2795   <permission android:name="android.permission.DEVICE_POWER"
2796        android:protectionLevel="signature" />
2797
2798   <!-- Allows access to the PowerManager.userActivity function.
2799   <p>Not for use by third-party applications. @hide @SystemApi -->
2800    <permission android:name="android.permission.USER_ACTIVITY"
2801        android:protectionLevel="signature|privileged" />
2802
2803   <!-- @hide Allows low-level access to tun tap driver -->
2804    <permission android:name="android.permission.NET_TUNNELING"
2805        android:protectionLevel="signature" />
2806
2807    <!-- Run as a manufacturer test application, running as the root user.
2808         Only available when the device is running in manufacturer test mode.
2809         <p>Not for use by third-party applications.
2810    -->
2811    <permission android:name="android.permission.FACTORY_TEST"
2812        android:protectionLevel="signature" />
2813
2814    <!-- Allows an application to broadcast a notification that an application
2815         package has been removed.
2816         <p>Not for use by third-party applications.
2817    -->
2818    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
2819        android:protectionLevel="signature" />
2820
2821    <!-- Allows an application to broadcast an SMS receipt notification.
2822         <p>Not for use by third-party applications.
2823    -->
2824    <permission android:name="android.permission.BROADCAST_SMS"
2825        android:protectionLevel="signature" />
2826
2827    <!-- Allows an application to broadcast a WAP PUSH receipt notification.
2828         <p>Not for use by third-party applications.
2829    -->
2830    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
2831        android:protectionLevel="signature" />
2832
2833    <!-- @SystemApi Allows an application to broadcast privileged networking requests.
2834         <p>Not for use by third-party applications.
2835         @hide
2836         @deprecated Use {@link android.Manifest.permission#REQUEST_NETWORK_SCORES} instead
2837    -->
2838    <permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"
2839        android:protectionLevel="signature|privileged" />
2840
2841    <!-- @SystemApi Not for use by third-party applications. -->
2842    <permission android:name="android.permission.MASTER_CLEAR"
2843        android:protectionLevel="signature|privileged" />
2844
2845    <!-- @SystemApi Allows an application to call any phone number, including emergency
2846         numbers, without going through the Dialer user interface for the user
2847         to confirm the call being placed.
2848         <p>Not for use by third-party applications. -->
2849    <permission android:name="android.permission.CALL_PRIVILEGED"
2850        android:protectionLevel="signature|privileged" />
2851
2852    <!-- @SystemApi Allows an application to perform CDMA OTA provisioning @hide -->
2853    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
2854        android:protectionLevel="signature|privileged" />
2855
2856    <!-- @SystemApi Allows an application to perform SIM Activation @hide -->
2857    <permission android:name="android.permission.PERFORM_SIM_ACTIVATION"
2858        android:protectionLevel="signature|privileged" />
2859
2860    <!-- @SystemApi Allows enabling/disabling location update notifications from
2861         the radio.
2862         <p>Not for use by third-party applications. -->
2863    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
2864        android:protectionLevel="signature|privileged" />
2865
2866    <!-- @SystemApi Allows read/write access to the "properties" table in the checkin
2867         database, to change values that get uploaded.
2868         <p>Not for use by third-party applications. -->
2869    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
2870        android:protectionLevel="signature|privileged" />
2871
2872    <!-- @SystemApi Allows an application to collect component usage
2873         statistics
2874         <p>Declaring the permission implies intention to use the API and the user of the
2875         device can grant permission through the Settings application. -->
2876    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
2877        android:protectionLevel="signature|privileged|development|appop" />
2878    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
2879
2880    <!-- @hide Allows an application to change the app idle state of an app.
2881         <p>Not for use by third-party applications. -->
2882    <permission android:name="android.permission.CHANGE_APP_IDLE_STATE"
2883        android:protectionLevel="signature" />
2884
2885    <!-- @hide @SystemApi Allows an application to temporarily whitelist an inactive app to
2886         access the network and acquire wakelocks.
2887         <p>Not for use by third-party applications. -->
2888    <permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"
2889        android:protectionLevel="signature|privileged" />
2890
2891    <!-- Permission an application must hold in order to use
2892         {@link android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}.
2893         This is a normal permission: an app requesting it will always be granted the
2894         permission, without the user needing to approve or see it. -->
2895    <permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
2896        android:label="@string/permlab_requestIgnoreBatteryOptimizations"
2897        android:description="@string/permdesc_requestIgnoreBatteryOptimizations"
2898        android:protectionLevel="normal" />
2899
2900    <!-- @SystemApi Allows an application to collect battery statistics -->
2901    <permission android:name="android.permission.BATTERY_STATS"
2902        android:protectionLevel="signature|privileged|development" />
2903
2904    <!-- @SystemApi Allows an application to control the backup and restore process.
2905    <p>Not for use by third-party applications.
2906         @hide pending API council -->
2907    <permission android:name="android.permission.BACKUP"
2908        android:protectionLevel="signature|privileged" />
2909
2910    <!-- Allows a package to launch the secure full-backup confirmation UI.
2911         ONLY the system process may hold this permission.
2912         @hide -->
2913    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
2914        android:protectionLevel="signature" />
2915
2916    <!-- @SystemApi Must be required by a {@link android.widget.RemoteViewsService},
2917         to ensure that only the system can bind to it. -->
2918    <permission android:name="android.permission.BIND_REMOTEVIEWS"
2919        android:protectionLevel="signature|privileged" />
2920
2921    <!-- @SystemApi Allows an application to tell the AppWidget service which application
2922         can access AppWidget's data.  The normal user flow is that a user
2923         picks an AppWidget to go into a particular host, thereby giving that
2924         host application access to the private data from the AppWidget app.
2925         An application that has this permission should honor that contract.
2926         <p>Not for use by third-party applications. -->
2927    <permission android:name="android.permission.BIND_APPWIDGET"
2928        android:protectionLevel="signature|privileged" />
2929
2930    <!-- @SystemApi Private permission, to restrict who can bring up a dialog to add a new
2931         keyguard widget
2932         @hide -->
2933    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
2934        android:protectionLevel="signature|privileged" />
2935
2936    <!-- @SystemApi Internal permission allowing an application to query/set which
2937         applications can bind AppWidgets.
2938         @hide -->
2939    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
2940        android:protectionLevel="signature|privileged" />
2941
2942    <!-- Allows applications to change the background data setting.
2943    <p>Not for use by third-party applications.
2944         @hide pending API council -->
2945    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
2946        android:protectionLevel="signature" />
2947
2948    <!-- @SystemApi This permission can be used on content providers to allow the global
2949         search system to access their data.  Typically it used when the
2950         provider has some permissions protecting it (which global search
2951         would not be expected to hold), and added as a read-only permission
2952         to the path in the provider where global search queries are
2953         performed.  This permission can not be held by regular applications;
2954         it is used by applications to protect themselves from everyone else
2955         besides global search. -->
2956    <permission android:name="android.permission.GLOBAL_SEARCH"
2957        android:protectionLevel="signature|privileged" />
2958
2959    <!-- Internal permission protecting access to the global search
2960         system: ensures that only the system can access the provider
2961         to perform queries (since this otherwise provides unrestricted
2962         access to a variety of content providers), and to write the
2963         search statistics (to keep applications from gaming the source
2964         ranking).
2965         @hide -->
2966    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
2967        android:protectionLevel="signature" />
2968
2969    <!-- @SystemApi Internal permission to allows an application to read indexable data.
2970        @hide -->
2971    <permission android:name="android.permission.READ_SEARCH_INDEXABLES"
2972        android:protectionLevel="signature|privileged" />
2973
2974    <!-- @SystemApi Allows applications to set a live wallpaper.
2975         @hide XXX Change to signature once the picker is moved to its
2976         own apk as Ghod Intended. -->
2977    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
2978        android:protectionLevel="signature|privileged" />
2979
2980    <!-- @SystemApi Allows applications to read dream settings and dream state.
2981         @hide -->
2982    <permission android:name="android.permission.READ_DREAM_STATE"
2983        android:protectionLevel="signature|privileged" />
2984
2985    <!-- @SystemApi Allows applications to write dream settings, and start or stop dreaming.
2986         @hide -->
2987    <permission android:name="android.permission.WRITE_DREAM_STATE"
2988        android:protectionLevel="signature|privileged" />
2989
2990    <!-- @SystemApi Allow an application to read and write the cache partition.
2991         @hide -->
2992    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
2993        android:protectionLevel="signature|privileged" />
2994
2995    <!-- Must be required by default container service so that only
2996         the system can bind to it and use it to copy
2997         protected data to secure containers or files
2998         accessible to the system.
2999         @hide -->
3000    <permission android:name="android.permission.COPY_PROTECTED_DATA"
3001        android:protectionLevel="signature" />
3002
3003    <!-- @SystemApi Internal permission protecting access to the encryption methods
3004        @hide
3005    -->
3006    <permission android:name="android.permission.CRYPT_KEEPER"
3007        android:protectionLevel="signature|privileged" />
3008
3009    <!-- @SystemApi Allows an application to read historical network usage for
3010         specific networks and applications. @hide -->
3011    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
3012        android:protectionLevel="signature|privileged" />
3013
3014    <!-- Allows an application to manage network policies (such as warning and disable
3015         limits) and to define application-specific rules. @hide -->
3016    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
3017        android:protectionLevel="signature" />
3018
3019    <!-- @SystemApi Allows an application to account its network traffic against other UIDs. Used
3020         by system services like download manager and media server. Not for use by
3021         third party apps. @hide -->
3022    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
3023        android:protectionLevel="signature|privileged" />
3024
3025    <!-- C2DM permission.
3026         @hide Used internally.
3027     -->
3028    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
3029          android:protectionLevel="signature" />
3030    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
3031
3032    <!-- @SystemApi @hide Package verifier needs to have this permission before the PackageManager will
3033         trust it to verify packages.
3034    -->
3035    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
3036        android:protectionLevel="signature|privileged" />
3037
3038    <!-- Must be required by package verifier receiver, to ensure that only the
3039         system can interact with it.
3040         @hide
3041    -->
3042    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
3043        android:protectionLevel="signature" />
3044
3045    <!-- @SystemApi @hide Intent filter verifier needs to have this permission before the
3046         PackageManager will trust it to verify intent filters.
3047    -->
3048    <permission android:name="android.permission.INTENT_FILTER_VERIFICATION_AGENT"
3049        android:protectionLevel="signature|privileged" />
3050
3051    <!-- Must be required by intent filter verifier receiver, to ensure that only the
3052         system can interact with it.
3053         @hide
3054    -->
3055    <permission android:name="android.permission.BIND_INTENT_FILTER_VERIFIER"
3056        android:protectionLevel="signature" />
3057
3058    <!-- @SystemApi Allows applications to access serial ports via the SerialManager.
3059         @hide -->
3060    <permission android:name="android.permission.SERIAL_PORT"
3061        android:protectionLevel="signature|privileged" />
3062
3063    <!-- Allows the holder to access content providers from outside an ApplicationThread.
3064         This permission is enforced by the ActivityManagerService on the corresponding APIs,
3065         in particular ActivityManagerService#getContentProviderExternal(String) and
3066         ActivityManagerService#removeContentProviderExternal(String).
3067         @hide
3068    -->
3069    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
3070        android:protectionLevel="signature" />
3071
3072    <!-- @SystemApi Allows an application to hold an UpdateLock, recommending that a headless
3073         OTA reboot *not* occur while the lock is held.
3074         @hide -->
3075    <permission android:name="android.permission.UPDATE_LOCK"
3076        android:protectionLevel="signature|privileged" />
3077
3078    <!-- @SystemApi Allows an application to read the current set of notifications, including
3079         any metadata and intents attached.
3080         @hide -->
3081    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
3082        android:protectionLevel="signature|privileged|appop" />
3083
3084    <!-- Marker permission for applications that wish to access notification policy.
3085         <p>Protection level: normal
3086    -->
3087    <permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"
3088        android:description="@string/permdesc_access_notification_policy"
3089        android:label="@string/permlab_access_notification_policy"
3090        android:protectionLevel="normal" />
3091
3092    <!-- Allows modification of do not disturb rules and policies. Only allowed for system
3093        processes.
3094        @hide -->
3095    <permission android:name="android.permission.MANAGE_NOTIFICATIONS"
3096                android:protectionLevel="signature" />
3097
3098    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
3099        @hide -->
3100    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
3101        android:protectionLevel="signature" />
3102
3103    <!-- Allows managing (adding, removing) fingerprint templates. Reserved for the system. @hide -->
3104    <permission android:name="android.permission.MANAGE_FINGERPRINT"
3105        android:protectionLevel="signature|privileged" />
3106
3107    <!-- Allows an app to reset fingerprint attempt counter. Reserved for the system. @hide -->
3108    <permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT"
3109        android:protectionLevel="signature" />
3110
3111    <!-- Allows an application to control keyguard.  Only allowed for system processes.
3112        @hide -->
3113    <permission android:name="android.permission.CONTROL_KEYGUARD"
3114        android:protectionLevel="signature" />
3115
3116    <!-- Allows an application to listen to trust changes.  Only allowed for system processes.
3117        @hide -->
3118    <permission android:name="android.permission.TRUST_LISTENER"
3119        android:protectionLevel="signature" />
3120
3121    <!-- @SystemApi Allows an application to provide a trust agent.
3122         @hide For security reasons, this is a platform-only permission. -->
3123    <permission android:name="android.permission.PROVIDE_TRUST_AGENT"
3124        android:protectionLevel="signature|privileged" />
3125
3126    <!-- Allows an application to launch the trust agent settings activity.
3127        @hide -->
3128    <permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"
3129        android:protectionLevel="signature|privileged" />
3130
3131    <!-- @SystemApi Must be required by an {@link
3132        android.service.trust.TrustAgentService},
3133        to ensure that only the system can bind to it.
3134        @hide -->
3135    <permission android:name="android.permission.BIND_TRUST_AGENT"
3136        android:protectionLevel="signature" />
3137
3138    <!-- Must be required by an {@link
3139         android.service.notification.NotificationListenerService},
3140         to ensure that only the system can bind to it.
3141         <p>Protection level: signature
3142    -->
3143    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
3144        android:protectionLevel="signature" />
3145
3146    <!-- @SystemApi Must be required by an {@link
3147         android.service.notification.NotificationAssistantService} to ensure that only the system
3148         can bind to it.
3149         <p>Protection level: signature
3150         @hide
3151    -->
3152    <permission android:name="android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE"
3153        android:protectionLevel="signature" />
3154
3155    <!-- Must be required by a {@link
3156         android.service.chooser.ChooserTargetService}, to ensure that
3157         only the system can bind to it.
3158         <p>Protection level: signature
3159    -->
3160    <permission android:name="android.permission.BIND_CHOOSER_TARGET_SERVICE"
3161        android:protectionLevel="signature" />
3162
3163    <!-- @SystemApi Must be held by services that extend
3164         {@link android.service.resolver.ResolverRankerService}.
3165         <p>Protection level: signature|privileged
3166         @hide
3167    -->
3168    <permission android:name="android.permission.PROVIDE_RESOLVER_RANKER_SERVICE"
3169                android:protectionLevel="signature|privileged" />
3170
3171    <!-- @SystemApi Must be required by services that extend
3172         {@link android.service.resolver.ResolverRankerService}, to ensure that only the system can
3173         bind to them.
3174         <p>Protection level: signature
3175         @hide
3176    -->
3177    <permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE"
3178        android:protectionLevel="signature" />
3179
3180    <!-- Must be required by a {@link
3181         android.service.notification.ConditionProviderService},
3182         to ensure that only the system can bind to it.
3183         <p>Protection level: signature
3184         -->
3185    <permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"
3186        android:protectionLevel="signature" />
3187
3188    <!-- Must be required by an {@link android.service.dreams.DreamService},
3189         to ensure that only the system can bind to it.
3190         <p>Protection level: signature
3191    -->
3192    <permission android:name="android.permission.BIND_DREAM_SERVICE"
3193        android:protectionLevel="signature" />
3194
3195    <!-- Must be required by an {@link android.app.usage.CacheQuotaService} to ensure that only the
3196         system can bind to it.
3197         @hide This is not a third-party API (intended for OEMs and system apps).
3198    -->
3199    <permission android:name="android.permission.BIND_CACHE_QUOTA_SERVICE"
3200                android:protectionLevel="signature" />
3201
3202    <!-- @SystemApi Allows an application to call into a carrier setup flow. It is up to the
3203         carrier setup application to enforce that this permission is required
3204         @hide This is not a third-party API (intended for OEMs and system apps). -->
3205    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
3206        android:protectionLevel="signature|privileged" />
3207
3208    <!-- @SystemApi Allows an application to listen for network condition observations.
3209         @hide This is not a third-party API (intended for system apps). -->
3210    <permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"
3211        android:protectionLevel="signature|privileged" />
3212
3213    <!-- @SystemApi Allows an application to provision and access DRM certificates
3214         @hide This is not a third-party API (intended for system apps). -->
3215    <permission android:name="android.permission.ACCESS_DRM_CERTIFICATES"
3216        android:protectionLevel="signature|privileged" />
3217
3218    <!-- Api Allows an application to manage media projection sessions.
3219         @hide This is not a third-party API (intended for system apps). -->
3220    <permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"
3221        android:protectionLevel="signature" />
3222
3223    <!-- @SystemApi Allows an application to read install sessions
3224         @hide This is not a third-party API (intended for system apps). -->
3225    <permission android:name="android.permission.READ_INSTALL_SESSIONS"
3226        android:label="@string/permlab_readInstallSessions"
3227        android:description="@string/permdesc_readInstallSessions"
3228        android:protectionLevel="normal"/>
3229
3230    <!-- @SystemApi Allows an application to remove DRM certificates
3231         @hide This is not a third-party API (intended for system apps). -->
3232    <permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"
3233        android:protectionLevel="signature|privileged" />
3234
3235    <!-- @deprecated Use {@link android.Manifest.permission#BIND_CARRIER_SERVICES} instead -->
3236    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
3237        android:protectionLevel="signature|privileged" />
3238
3239    <!-- Allows an application to interact with the currently active
3240         {@link android.service.voice.VoiceInteractionService}.
3241         @hide -->
3242    <permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"
3243        android:protectionLevel="signature" />
3244
3245    <!-- The system process that is allowed to bind to services in carrier apps will
3246         have this permission. Carrier apps should use this permission to protect
3247         their services that only the system is allowed to bind to.
3248         <p>Protection level: system|signature
3249    -->
3250    <permission android:name="android.permission.BIND_CARRIER_SERVICES"
3251        android:label="@string/permlab_bindCarrierServices"
3252        android:description="@string/permdesc_bindCarrierServices"
3253        android:protectionLevel="signature|privileged" />
3254
3255    <!-- Allows an application to query whether DO_NOT_ASK_CREDENTIALS_ON_BOOT
3256         flag is set.
3257         @hide -->
3258    <permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"
3259                android:protectionLevel="signature" />
3260
3261    <!-- @SystemApi Allows applications to kill UIDs.
3262        <p>Not for use by third-party applications.
3263         @hide -->
3264    <permission android:name="android.permission.KILL_UID"
3265                android:protectionLevel="signature|installer" />
3266
3267    <!-- @SystemApi Allows applications to read the local WiFi and Bluetooth MAC address.
3268        @hide -->
3269    <permission android:name="android.permission.LOCAL_MAC_ADDRESS"
3270                android:protectionLevel="signature|privileged" />
3271
3272    <!-- @SystemApi Allows access to MAC addresses of WiFi and Bluetooth peer devices.
3273        @hide -->
3274    <permission android:name="android.permission.PEERS_MAC_ADDRESS"
3275                android:protectionLevel="signature|setup" />
3276
3277    <!-- Allows the Nfc stack to dispatch Nfc messages to applications. Applications
3278        can use this permission to ensure incoming Nfc messages are from the Nfc stack
3279        and not simulated by another application.
3280        @hide -->
3281    <permission android:name="android.permission.DISPATCH_NFC_MESSAGE"
3282                android:protectionLevel="signature|privileged" />
3283
3284    <!-- @SystemApi Allows changing day / night mode when system is configured with
3285         config_lockDayNightMode set to true. If requesting app does not have permission,
3286         it will be ignored.
3287        @hide -->
3288    <permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"
3289                android:protectionLevel="signature|privileged" />
3290
3291    <!-- The system process is explicitly the only one allowed to launch the
3292         confirmation UI for full backup/restore -->
3293    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
3294
3295
3296    <!-- Allows the holder to access the instant applications on the device.
3297    @hide -->
3298    <permission android:name="android.permission.ACCESS_INSTANT_APPS"
3299            android:protectionLevel="signature|installer|verifier" />
3300
3301    <!-- Allows receiving the usage of media resource e.g. video/audio codec and
3302         graphic memory.
3303         @hide -->
3304    <permission android:name="android.permission.RECEIVE_MEDIA_RESOURCE_USAGE"
3305                android:protectionLevel="signature|privileged" />
3306
3307    <!-- Must be required by system/priv apps when accessing the sound trigger
3308         APIs given by {@link SoundTriggerManager}.
3309         @hide <p>Not for use by third-party applications.</p> -->
3310    <permission android:name="android.permission.MANAGE_SOUND_TRIGGER"
3311        android:protectionLevel="signature|privileged" />
3312
3313    <!-- @SystemApi Allows trusted applications to dispatch managed provisioning message to Managed
3314         Provisioning app. If requesting app does not have permission, it will be ignored.
3315         @hide -->
3316    <permission android:name="android.permission.DISPATCH_PROVISIONING_MESSAGE"
3317                android:protectionLevel="signature|privileged" />
3318
3319    <!-- Allows the holder to read blocked numbers. See
3320         {@link android.provider.BlockedNumberContract}.
3321         @hide -->
3322    <permission android:name="android.permission.READ_BLOCKED_NUMBERS"
3323                android:protectionLevel="signature" />
3324
3325    <!-- Allows the holder to write blocked numbers. See
3326         {@link android.provider.BlockedNumberContract}.
3327         @hide -->
3328    <permission android:name="android.permission.WRITE_BLOCKED_NUMBERS"
3329                android:protectionLevel="signature" />
3330
3331    <!-- Must be required by an {@link android.service.vr.VrListenerService}, to ensure that only
3332         the system can bind to it.
3333         <p>Protection level: signature -->
3334    <permission android:name="android.permission.BIND_VR_LISTENER_SERVICE"
3335        android:protectionLevel="signature" />
3336
3337    <!-- Must be required by system apps when accessing restricted VR APIs.
3338         <p>Protection level: signature -->
3339    <permission android:name="android.permission.RESTRICTED_VR_ACCESS"
3340        android:protectionLevel="signature|preinstalled" />
3341
3342    <!-- Required to make calls to {@link android.service.vr.IVrManager}.
3343         @hide -->
3344    <permission android:name="android.permission.ACCESS_VR_MANAGER"
3345            android:protectionLevel="signature" />
3346
3347    <!-- Allows an application to whitelist tasks during lock task mode
3348         @hide <p>Not for use by third-party applications.</p> -->
3349    <permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES"
3350        android:protectionLevel="signature|setup" />
3351
3352    <!-- @SystemApi Allows an application to replace the app name displayed alongside notifications
3353         in the N-release and later.
3354         @hide  <p>Not for use by third-party applications.</p> -->
3355    <permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME"
3356                android:protectionLevel="signature|privileged" />
3357
3358    <!-- @SystemApi Allows an application to show notifications before the device is provisioned.
3359         @hide  <p>Not for use by third-party applications.</p> -->
3360    <permission android:name="android.permission.NOTIFICATION_DURING_SETUP"
3361                android:protectionLevel="signature|privileged" />
3362
3363    <!-- @SystemApi Allows an application to manage auto-fill sessions.
3364         @hide  <p>Not for use by third-party applications.</p> -->
3365    <permission android:name="android.permission.MANAGE_AUTO_FILL"
3366        android:protectionLevel="signature" />
3367
3368    <!-- Allows an app to set the theme overlay in /vendor/overlay
3369         being used.
3370         @hide  <p>Not for use by third-party applications.</p> -->
3371    <permission android:name="android.permission.MODIFY_THEME_OVERLAY"
3372                android:protectionLevel="signature" />
3373
3374    <!-- Allows an instant app to create foreground services. -->
3375    <permission android:name="android.permission.INSTANT_APP_FOREGROUND_SERVICE"
3376        android:protectionLevel="signature|development|ephemeral|appop" />
3377
3378    <application android:process="system"
3379                 android:persistent="true"
3380                 android:hasCode="false"
3381                 android:label="@string/android_system_label"
3382                 android:allowClearUserData="false"
3383                 android:backupAgent="com.android.server.backup.SystemBackupAgent"
3384                 android:killAfterRestore="false"
3385                 android:icon="@drawable/ic_launcher_android"
3386                 android:supportsRtl="true"
3387                 android:theme="@style/Theme.DeviceDefault.Light.DarkActionBar"
3388                 android:defaultToDeviceProtectedStorage="true"
3389                 android:directBootAware="true">
3390        <activity android:name="com.android.internal.app.ChooserActivity"
3391                android:theme="@style/Theme.DeviceDefault.Resolver"
3392                android:finishOnCloseSystemDialogs="true"
3393                android:excludeFromRecents="true"
3394                android:documentLaunchMode="never"
3395                android:relinquishTaskIdentity="true"
3396                android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
3397                android:process=":ui"
3398                android:visibleToInstantApps="true">
3399            <intent-filter>
3400                <action android:name="android.intent.action.CHOOSER" />
3401                <category android:name="android.intent.category.DEFAULT" />
3402                <category android:name="android.intent.category.VOICE" />
3403            </intent-filter>
3404        </activity>
3405        <activity android:name="com.android.internal.app.AccessibilityButtonChooserActivity"
3406                  android:exported="false"
3407                  android:theme="@style/Theme.DeviceDefault.Resolver"
3408                  android:finishOnCloseSystemDialogs="true"
3409                  android:excludeFromRecents="true"
3410                  android:documentLaunchMode="never"
3411                  android:relinquishTaskIdentity="true"
3412                  android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
3413                  android:process=":ui"
3414                  android:visibleToInstantApps="true">
3415            <intent-filter>
3416                <action android:name="com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
3417                <category android:name="android.intent.category.DEFAULT" />
3418            </intent-filter>
3419        </activity>
3420        <activity android:name="com.android.internal.app.IntentForwarderActivity"
3421                android:finishOnCloseSystemDialogs="true"
3422                android:theme="@style/Theme.NoDisplay"
3423                android:excludeFromRecents="true"
3424                android:label="@string/user_owner_label"
3425                android:exported="true"
3426                >
3427        </activity>
3428        <activity-alias android:name="com.android.internal.app.ForwardIntentToParent"
3429                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
3430                android:exported="true"
3431                android:label="@string/user_owner_label">
3432        </activity-alias>
3433        <activity-alias android:name="com.android.internal.app.ForwardIntentToManagedProfile"
3434                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
3435                android:icon="@drawable/ic_corp_icon"
3436                android:exported="true"
3437                android:label="@string/managed_profile_label">
3438        </activity-alias>
3439        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
3440                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
3441                android:label="@string/heavy_weight_switcher_title"
3442                android:finishOnCloseSystemDialogs="true"
3443                android:excludeFromRecents="true"
3444                android:process=":ui">
3445        </activity>
3446        <activity android:name="com.android.internal.app.PlatLogoActivity"
3447                android:theme="@style/Theme.Wallpaper.NoTitleBar.Fullscreen"
3448                android:configChanges="orientation|keyboardHidden"
3449                android:process=":ui">
3450        </activity>
3451        <activity android:name="com.android.internal.app.DisableCarModeActivity"
3452                android:theme="@style/Theme.NoDisplay"
3453                android:excludeFromRecents="true"
3454                android:process=":ui">
3455        </activity>
3456        <activity android:name="com.android.internal.app.DumpHeapActivity"
3457                android:theme="@style/Theme.Translucent.NoTitleBar"
3458                android:label="@string/dump_heap_title"
3459                android:finishOnCloseSystemDialogs="true"
3460                android:noHistory="true"
3461                android:excludeFromRecents="true"
3462                android:process=":ui">
3463        </activity>
3464        <provider android:name="com.android.server.am.DumpHeapProvider"
3465                android:authorities="com.android.server.heapdump"
3466                android:grantUriPermissions="true"
3467                android:multiprocess="false"
3468                android:singleUser="true" />
3469
3470        <activity android:name="android.accounts.ChooseAccountActivity"
3471                android:excludeFromRecents="true"
3472                android:exported="true"
3473                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
3474                android:label="@string/choose_account_label"
3475                android:process=":ui"
3476                android:visibleToInstantApps="true">
3477        </activity>
3478
3479        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
3480                android:excludeFromRecents="true"
3481                android:exported="true"
3482                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
3483                android:label="@string/choose_account_label"
3484                android:process=":ui"
3485                android:visibleToInstantApps="true">
3486        </activity>
3487
3488        <activity android:name="android.accounts.ChooseAccountTypeActivity"
3489                android:excludeFromRecents="true"
3490                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
3491                android:label="@string/choose_account_label"
3492                android:process=":ui"
3493                android:visibleToInstantApps="true">
3494        </activity>
3495
3496        <activity android:name="android.accounts.CantAddAccountActivity"
3497                android:excludeFromRecents="true"
3498                android:exported="true"
3499                android:theme="@style/Theme.DeviceDefault.Light.Dialog.NoActionBar"
3500                android:process=":ui">
3501        </activity>
3502
3503        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
3504                android:excludeFromRecents="true"
3505                android:exported="true"
3506                android:theme="@style/Theme.DeviceDefault.Light.DialogWhenLarge"
3507                android:process=":ui"
3508                android:visibleToInstantApps="true">
3509        </activity>
3510
3511        <activity android:name="android.content.SyncActivityTooManyDeletes"
3512               android:theme="@style/Theme.DeviceDefault.Light.Dialog"
3513               android:label="@string/sync_too_many_deletes"
3514               android:process=":ui">
3515        </activity>
3516
3517        <activity android:name="com.android.internal.app.ShutdownActivity"
3518            android:permission="android.permission.SHUTDOWN"
3519            android:theme="@style/Theme.NoDisplay"
3520            android:excludeFromRecents="true">
3521            <intent-filter>
3522                <action android:name="com.android.internal.intent.action.REQUEST_SHUTDOWN" />
3523                <category android:name="android.intent.category.DEFAULT" />
3524            </intent-filter>
3525            <intent-filter>
3526                <action android:name="android.intent.action.REBOOT" />
3527                <category android:name="android.intent.category.DEFAULT" />
3528            </intent-filter>
3529        </activity>
3530
3531        <activity android:name="com.android.internal.app.NetInitiatedActivity"
3532                android:theme="@style/Theme.DeviceDefault.Light.Dialog.Alert"
3533                android:excludeFromRecents="true"
3534                android:process=":ui">
3535        </activity>
3536
3537        <activity android:name="com.android.internal.app.SystemUserHomeActivity"
3538                  android:enabled="false"
3539                  android:process=":ui"
3540                  android:systemUserOnly="true"
3541                  android:theme="@style/Theme.Translucent.NoTitleBar">
3542            <intent-filter android:priority="-100">
3543                <action android:name="android.intent.action.MAIN" />
3544                <category android:name="android.intent.category.HOME" />
3545            </intent-filter>
3546        </activity>
3547
3548        <!-- Activity to prompt user if it's ok to create a new user sandbox for a
3549             specified account. -->
3550        <activity android:name="com.android.internal.app.ConfirmUserCreationActivity"
3551                android:excludeFromRecents="true"
3552                android:process=":ui"
3553                android:theme="@style/Theme.DeviceDefault.Light.Dialog.Alert">
3554            <intent-filter android:priority="1000">
3555                <action android:name="android.os.action.CREATE_USER" />
3556                <category android:name="android.intent.category.DEFAULT" />
3557            </intent-filter>
3558        </activity>
3559
3560        <activity android:name="com.android.internal.app.UnlaunchableAppActivity"
3561                android:theme="@style/Theme.DeviceDefault.Light.Dialog.Alert"
3562                android:excludeFromRecents="true"
3563                android:process=":ui">
3564        </activity>
3565
3566        <activity android:name="com.android.settings.notification.NotificationAccessConfirmationActivity"
3567                  android:theme="@android:style/Theme.DeviceDefault.Light.Dialog.Alert"
3568                  android:excludeFromRecents="true">
3569        </activity>
3570
3571        <receiver android:name="com.android.server.BootReceiver"
3572                android:systemUserOnly="true">
3573            <intent-filter android:priority="1000">
3574                <action android:name="android.intent.action.BOOT_COMPLETED" />
3575            </intent-filter>
3576        </receiver>
3577
3578        <receiver android:name="com.android.server.updates.CertPinInstallReceiver"
3579                android:permission="android.permission.UPDATE_CONFIG">
3580            <intent-filter>
3581                <action android:name="android.intent.action.UPDATE_PINS" />
3582                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3583            </intent-filter>
3584        </receiver>
3585
3586        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver"
3587                android:permission="android.permission.UPDATE_CONFIG">
3588            <intent-filter>
3589                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
3590                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3591            </intent-filter>
3592        </receiver>
3593
3594        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver"
3595                android:permission="android.permission.UPDATE_CONFIG">
3596            <intent-filter>
3597                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
3598                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3599            </intent-filter>
3600        </receiver>
3601
3602        <receiver android:name="com.android.server.updates.ApnDbInstallReceiver"
3603                android:permission="android.permission.UPDATE_CONFIG">
3604            <intent-filter>
3605                <action android:name="com.android.internal.intent.action.UPDATE_APN_DB" />
3606                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3607            </intent-filter>
3608        </receiver>
3609
3610        <receiver android:name="com.android.server.updates.CarrierProvisioningUrlsInstallReceiver"
3611                android:permission="android.permission.UPDATE_CONFIG">
3612            <intent-filter>
3613                <action android:name="android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS" />
3614                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3615            </intent-filter>
3616        </receiver>
3617
3618        <receiver android:name="com.android.server.updates.TzDataInstallReceiver"
3619                android:permission="android.permission.UPDATE_CONFIG">
3620            <intent-filter>
3621                <action android:name="android.intent.action.UPDATE_TZDATA" />
3622                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3623            </intent-filter>
3624        </receiver>
3625
3626        <receiver android:name="com.android.server.updates.CertificateTransparencyLogInstallReceiver"
3627                android:permission="android.permission.UPDATE_CONFIG">
3628            <intent-filter>
3629                <action android:name="android.intent.action.UPDATE_CT_LOGS" />
3630                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3631            </intent-filter>
3632        </receiver>
3633
3634        <receiver android:name="com.android.server.updates.LangIdInstallReceiver"
3635                android:permission="android.permission.UPDATE_CONFIG">
3636            <intent-filter>
3637                <action android:name="android.intent.action.UPDATE_LANG_ID" />
3638                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3639            </intent-filter>
3640        </receiver>
3641
3642        <receiver android:name="com.android.server.updates.SmartSelectionInstallReceiver"
3643                android:permission="android.permission.UPDATE_CONFIG">
3644            <intent-filter>
3645                <action android:name="android.intent.action.UPDATE_SMART_SELECTION" />
3646                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3647            </intent-filter>
3648        </receiver>
3649
3650        <receiver android:name="com.android.server.MasterClearReceiver"
3651            android:permission="android.permission.MASTER_CLEAR">
3652            <intent-filter
3653                    android:priority="100" >
3654                <!-- For Checkin, Settings, etc.: action=FACTORY_RESET -->
3655                <action android:name="android.intent.action.FACTORY_RESET" />
3656                <!-- As above until all the references to the deprecated MASTER_CLEAR get updated to
3657                     FACTORY_RESET. -->
3658                <action android:name="android.intent.action.MASTER_CLEAR" />
3659
3660                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
3661                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
3662                <category android:name="android.intent.category.MASTER_CLEAR" />
3663            </intent-filter>
3664        </receiver>
3665
3666        <service android:name="android.hardware.location.GeofenceHardwareService"
3667            android:permission="android.permission.LOCATION_HARDWARE"
3668            android:exported="false" />
3669
3670        <service android:name="com.android.internal.backup.LocalTransportService"
3671                android:permission="android.permission.CONFIRM_FULL_BACKUP"
3672                android:exported="false">
3673            <intent-filter>
3674                <action android:name="android.backup.TRANSPORT_HOST" />
3675            </intent-filter>
3676        </service>
3677
3678        <service android:name="com.android.server.MountServiceIdler"
3679                 android:exported="true"
3680                 android:permission="android.permission.BIND_JOB_SERVICE" >
3681        </service>
3682
3683        <service android:name="com.android.server.backup.FullBackupJob"
3684                 android:exported="true"
3685                 android:permission="android.permission.BIND_JOB_SERVICE" >
3686        </service>
3687
3688        <service android:name="com.android.server.backup.KeyValueBackupJob"
3689                 android:permission="android.permission.BIND_JOB_SERVICE" >
3690        </service>
3691
3692        <service android:name="com.android.server.content.SyncJobService"
3693                 android:permission="android.permission.BIND_JOB_SERVICE" >
3694        </service>
3695
3696        <service android:name="com.android.server.pm.BackgroundDexOptService"
3697                 android:exported="true"
3698                 android:permission="android.permission.BIND_JOB_SERVICE">
3699        </service>
3700
3701        <service android:name="com.android.server.PruneInstantAppsJobService"
3702                 android:permission="android.permission.BIND_JOB_SERVICE" >
3703        </service>
3704
3705        <service android:name="com.android.server.storage.DiskStatsLoggingService"
3706                 android:permission="android.permission.BIND_JOB_SERVICE" >
3707        </service>
3708
3709        <service android:name="com.android.server.PreloadsFileCacheExpirationJobService"
3710                 android:permission="android.permission.BIND_JOB_SERVICE" >
3711        </service>
3712    </application>
3713
3714</manifest>
3715