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