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_REMOVED_INTERNAL" />
44    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
45    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
46    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_LOADED" />
47    <protected-broadcast android:name="android.intent.action.PACKAGE_ENABLE_ROLLBACK" />
48    <protected-broadcast android:name="android.intent.action.CANCEL_ENABLE_ROLLBACK" />
49    <protected-broadcast android:name="android.intent.action.ROLLBACK_COMMITTED" />
50    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
51    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
52    <protected-broadcast android:name="android.intent.action.PACKAGE_FIRST_LAUNCH" />
53    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_INTEGRITY_VERIFICATION" />
54    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION" />
55    <protected-broadcast android:name="android.intent.action.PACKAGE_VERIFIED" />
56    <protected-broadcast android:name="android.intent.action.PACKAGES_SUSPENDED" />
57    <protected-broadcast android:name="android.intent.action.PACKAGES_UNSUSPENDED" />
58    <protected-broadcast android:name="android.intent.action.PACKAGES_SUSPENSION_CHANGED" />
59    <protected-broadcast android:name="android.intent.action.PACKAGE_UNSUSPENDED_MANUALLY" />
60    <protected-broadcast android:name="android.intent.action.DISTRACTING_PACKAGES_CHANGED" />
61    <protected-broadcast android:name="android.intent.action.ACTION_PREFERRED_ACTIVITY_CHANGED" />
62    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
63    <protected-broadcast android:name="android.intent.action.QUERY_PACKAGE_RESTART" />
64    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
65    <protected-broadcast android:name="android.intent.action.SPLIT_CONFIGURATION_CHANGED" />
66    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
67    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
68    <protected-broadcast android:name="android.intent.action.BATTERY_LEVEL_CHANGED" />
69    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
70    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
71    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
72    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
73    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
74    <protected-broadcast android:name="android.intent.action.CHARGING" />
75    <protected-broadcast android:name="android.intent.action.DISCHARGING" />
76    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
77    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
78    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
79    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
80    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
81    <protected-broadcast android:name="android.intent.action.REBOOT" />
82    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
83    <protected-broadcast android:name="android.intent.action.THERMAL_EVENT" />
84    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
85    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
86    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
87    <protected-broadcast android:name="android.intent.action.USER_STARTING" />
88    <protected-broadcast android:name="android.intent.action.USER_STARTED" />
89    <protected-broadcast android:name="android.intent.action.USER_STOPPING" />
90    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
91    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
92    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
93    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
94    <protected-broadcast android:name="android.intent.action.USER_INITIALIZE" />
95    <protected-broadcast android:name="android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION" />
96    <protected-broadcast android:name="android.intent.action.DOMAINS_NEED_VERIFICATION" />
97    <protected-broadcast android:name="android.intent.action.OVERLAY_ADDED" />
98    <protected-broadcast android:name="android.intent.action.OVERLAY_CHANGED" />
99    <protected-broadcast android:name="android.intent.action.OVERLAY_REMOVED" />
100    <protected-broadcast android:name="android.intent.action.OVERLAY_PRIORITY_CHANGED" />
101    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_SUSPENDED" />
102    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_UNSUSPENDED" />
103    <protected-broadcast android:name="android.app.action.MANAGED_PROFILE_PROVISIONED" />
104
105    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED" />
106    <protected-broadcast android:name="android.os.action.DEVICE_IDLE_MODE_CHANGED" />
107    <protected-broadcast android:name="android.os.action.POWER_SAVE_WHITELIST_CHANGED" />
108    <protected-broadcast android:name="android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED" />
109    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED_INTERNAL" />
110    <protected-broadcast android:name="android.os.action.ENHANCED_DISCHARGE_PREDICTION_CHANGED" />
111
112    <!-- @deprecated This is rarely used and will be phased out soon. -->
113    <protected-broadcast android:name="android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED" />
114
115    <protected-broadcast android:name="android.app.action.CLOSE_NOTIFICATION_HANDLER_PANEL" />
116
117    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
118    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
119    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE_PRIORITIZED" />
120    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE_PRIORITIZED" />
121    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
122    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
123    <protected-broadcast android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
124
125    <protected-broadcast android:name="android.app.action.USER_ADDED" />
126    <protected-broadcast android:name="android.app.action.USER_REMOVED" />
127    <protected-broadcast android:name="android.app.action.USER_STARTED" />
128    <protected-broadcast android:name="android.app.action.USER_STOPPED" />
129    <protected-broadcast android:name="android.app.action.USER_SWITCHED" />
130
131    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARING_DECLINED" />
132    <protected-broadcast android:name="android.app.action.BUGREPORT_FAILED" />
133    <protected-broadcast android:name="android.app.action.BUGREPORT_SHARE" />
134    <protected-broadcast android:name="android.app.action.SHOW_DEVICE_MONITORING_DIALOG" />
135    <protected-broadcast android:name="android.intent.action.PENDING_INCIDENT_REPORTS_CHANGED" />
136    <protected-broadcast android:name="android.intent.action.INCIDENT_REPORT_READY" />
137
138    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
139    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
140    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
141    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
142    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
143    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_RESTORED" />
144
145    <protected-broadcast android:name="android.os.action.SETTING_RESTORED" />
146
147    <protected-broadcast android:name="android.app.backup.intent.CLEAR" />
148    <protected-broadcast android:name="android.app.backup.intent.INIT" />
149
150    <protected-broadcast android:name="android.bluetooth.intent.DISCOVERABLE_TIMEOUT" />
151    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
152    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
153    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
154    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
155    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
156    <protected-broadcast android:name="android.bluetooth.adapter.action.BLUETOOTH_ADDRESS_CHANGED" />
157    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
158    <protected-broadcast android:name="android.bluetooth.device.action.UUID" />
159    <protected-broadcast android:name="android.bluetooth.device.action.MAS_INSTANCE" />
160    <protected-broadcast android:name="android.bluetooth.device.action.ALIAS_CHANGED" />
161    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
162    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
163    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
164    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
165    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
166    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
167    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
168    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
169    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
170    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
171    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
172    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_CANCEL" />
173    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REQUEST" />
174    <protected-broadcast android:name="android.bluetooth.device.action.SDP_RECORD" />
175    <protected-broadcast android:name="android.bluetooth.device.action.BATTERY_LEVEL_CHANGED" />
176    <protected-broadcast android:name="android.bluetooth.devicepicker.action.LAUNCH" />
177    <protected-broadcast android:name="android.bluetooth.devicepicker.action.DEVICE_SELECTED" />
178    <protected-broadcast
179        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
180    <protected-broadcast
181        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
182    <protected-broadcast
183        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
184    <protected-broadcast
185        android:name="android.bluetooth.headset.action.HF_INDICATORS_VALUE_CHANGED" />
186    <protected-broadcast
187        android:name="android.bluetooth.headset.profile.action.ACTIVE_DEVICE_CHANGED" />
188    <protected-broadcast
189        android:name="android.bluetooth.headsetclient.profile.action.CONNECTION_STATE_CHANGED" />
190    <protected-broadcast
191        android:name="android.bluetooth.headsetclient.profile.action.AUDIO_STATE_CHANGED" />
192    <protected-broadcast
193        android:name="android.bluetooth.headsetclient.profile.action.AG_EVENT" />
194    <protected-broadcast
195        android:name="android.bluetooth.headsetclient.profile.action.AG_CALL_CHANGED" />
196    <protected-broadcast
197        android:name="android.bluetooth.headsetclient.profile.action.RESULT" />
198    <protected-broadcast
199        android:name="android.bluetooth.headsetclient.profile.action.LAST_VTAG" />
200    <protected-broadcast
201        android:name="android.bluetooth.hearingaid.profile.action.CONNECTION_STATE_CHANGED" />
202    <protected-broadcast
203        android:name="android.bluetooth.hearingaid.profile.action.PLAYING_STATE_CHANGED" />
204    <protected-broadcast
205        android:name="android.bluetooth.hearingaid.profile.action.ACTIVE_DEVICE_CHANGED" />
206    <protected-broadcast
207        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
208    <protected-broadcast
209        android:name="android.bluetooth.a2dp.profile.action.ACTIVE_DEVICE_CHANGED" />
210    <protected-broadcast
211        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
212    <protected-broadcast
213        android:name="android.bluetooth.a2dp.profile.action.CODEC_CONFIG_CHANGED" />
214    <protected-broadcast
215        android:name="android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED" />
216    <protected-broadcast
217        android:name="android.bluetooth.a2dp-sink.profile.action.PLAYING_STATE_CHANGED" />
218    <protected-broadcast
219        android:name="android.bluetooth.a2dp-sink.profile.action.AUDIO_CONFIG_CHANGED" />
220    <protected-broadcast
221        android:name="android.bluetooth.avrcp-controller.profile.action.BROWSE_CONNECTION_STATE_CHANGED" />
222    <protected-broadcast
223        android:name="android.bluetooth.avrcp-controller.profile.action.CONNECTION_STATE_CHANGED" />
224    <protected-broadcast
225        android:name="android.bluetooth.avrcp-controller.profile.action.FOLDER_LIST" />
226    <protected-broadcast
227        android:name="android.bluetooth.avrcp-controller.profile.action.TRACK_EVENT" />
228    <protected-broadcast
229        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
230    <protected-broadcast
231        android:name="android.bluetooth.input.profile.action.IDLE_TIME_CHANGED" />
232    <protected-broadcast
233        android:name="android.bluetooth.input.profile.action.PROTOCOL_MODE_CHANGED" />
234    <protected-broadcast
235        android:name="android.bluetooth.input.profile.action.VIRTUAL_UNPLUG_STATUS" />
236    <protected-broadcast
237        android:name="android.bluetooth.hiddevice.profile.action.CONNECTION_STATE_CHANGED" />
238    <protected-broadcast
239        android:name="android.bluetooth.map.profile.action.CONNECTION_STATE_CHANGED" />
240    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.CONNECTION_STATE_CHANGED" />
241    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_RECEIVED" />
242    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_SENT_SUCCESSFULLY" />
243    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_DELIVERED_SUCCESSFULLY" />
244    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_READ_STATUS_CHANGED" />
245    <protected-broadcast android:name="android.bluetooth.mapmce.profile.action.MESSAGE_DELETED_STATUS_CHANGED" />
246    <protected-broadcast
247        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
248    <protected-broadcast
249        android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
250    <protected-broadcast
251        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
252    <protected-broadcast android:name="android.bluetooth.action.LE_AUDIO_CONNECTION_STATE_CHANGED" />
253    <protected-broadcast android:name="android.bluetooth.action.LE_AUDIO_ACTIVE_DEVICE_CHANGED" />
254    <protected-broadcast
255        android:name="android.bluetooth.action.TETHERING_STATE_CHANGED" />
256    <protected-broadcast android:name="android.bluetooth.pbap.profile.action.CONNECTION_STATE_CHANGED" />
257    <protected-broadcast android:name="android.bluetooth.pbapclient.profile.action.CONNECTION_STATE_CHANGED" />
258    <protected-broadcast android:name="android.bluetooth.sap.profile.action.CONNECTION_STATE_CHANGED" />
259    <protected-broadcast android:name="android.btopp.intent.action.INCOMING_FILE_NOTIFICATION" />
260    <protected-broadcast android:name="android.btopp.intent.action.USER_CONFIRMATION_TIMEOUT" />
261    <protected-broadcast android:name="android.btopp.intent.action.LIST" />
262    <protected-broadcast android:name="android.btopp.intent.action.OPEN_OUTBOUND" />
263    <protected-broadcast android:name="android.btopp.intent.action.HIDE_COMPLETE" />
264    <protected-broadcast android:name="android.btopp.intent.action.CONFIRM" />
265    <protected-broadcast android:name="android.btopp.intent.action.HIDE" />
266    <protected-broadcast android:name="android.btopp.intent.action.RETRY" />
267    <protected-broadcast android:name="android.btopp.intent.action.OPEN" />
268    <protected-broadcast android:name="android.btopp.intent.action.OPEN_INBOUND" />
269    <protected-broadcast android:name="android.btopp.intent.action.TRANSFER_COMPLETE" />
270    <protected-broadcast android:name="android.btopp.intent.action.ACCEPT" />
271    <protected-broadcast android:name="android.btopp.intent.action.DECLINE" />
272    <protected-broadcast android:name="com.android.bluetooth.gatt.REFRESH_BATCHED_SCAN" />
273    <protected-broadcast android:name="com.android.bluetooth.pbap.authchall" />
274    <protected-broadcast android:name="com.android.bluetooth.pbap.userconfirmtimeout" />
275    <protected-broadcast android:name="com.android.bluetooth.pbap.authresponse" />
276    <protected-broadcast android:name="com.android.bluetooth.pbap.authcancelled" />
277    <protected-broadcast android:name="com.android.bluetooth.sap.USER_CONFIRM_TIMEOUT" />
278    <protected-broadcast android:name="com.android.bluetooth.sap.action.DISCONNECT_ACTION" />
279
280    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />
281
282    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
283    <protected-broadcast android:name="android.hardware.usb.action.USB_PORT_CHANGED" />
284    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
285    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_DETACHED" />
286    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_HANDSHAKE" />
287    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
288    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
289
290    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
291    <protected-broadcast android:name="android.media.action.HDMI_AUDIO_PLUG" />
292    <protected-broadcast android:name="android.media.action.MICROPHONE_MUTE_CHANGED" />
293    <protected-broadcast android:name="android.media.action.SPEAKERPHONE_STATE_CHANGED" />
294
295    <protected-broadcast android:name="android.media.AUDIO_BECOMING_NOISY" />
296    <protected-broadcast android:name="android.media.RINGER_MODE_CHANGED" />
297    <protected-broadcast android:name="android.media.VIBRATE_SETTING_CHANGED" />
298    <protected-broadcast android:name="android.media.VOLUME_CHANGED_ACTION" />
299    <protected-broadcast android:name="android.media.MASTER_VOLUME_CHANGED_ACTION" />
300    <protected-broadcast android:name="android.media.MASTER_MUTE_CHANGED_ACTION" />
301    <protected-broadcast android:name="android.media.MASTER_MONO_CHANGED_ACTION" />
302    <protected-broadcast android:name="android.media.MASTER_BALANCE_CHANGED_ACTION" />
303    <protected-broadcast android:name="android.media.SCO_AUDIO_STATE_CHANGED" />
304    <protected-broadcast android:name="android.media.ACTION_SCO_AUDIO_STATE_UPDATED" />
305
306    <protected-broadcast android:name="android.intent.action.MEDIA_REMOVED" />
307    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTED" />
308    <protected-broadcast android:name="android.intent.action.MEDIA_CHECKING" />
309    <protected-broadcast android:name="android.intent.action.MEDIA_NOFS" />
310    <protected-broadcast android:name="android.intent.action.MEDIA_MOUNTED" />
311    <protected-broadcast android:name="android.intent.action.MEDIA_SHARED" />
312    <protected-broadcast android:name="android.intent.action.MEDIA_UNSHARED" />
313    <protected-broadcast android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
314    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTABLE" />
315    <protected-broadcast android:name="android.intent.action.MEDIA_EJECT" />
316
317    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL" />
318    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
319    <!-- @deprecated.  Only {@link android.net.ConnectivityManager.CONNECTIVITY_ACTION} is sent. -->
320    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
321    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
322    <protected-broadcast android:name="android.net.conn.RESTRICT_BACKGROUND_CHANGED" />
323    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
324    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />
325
326    <protected-broadcast android:name="android.net.nsd.STATE_CHANGED" />
327
328    <!-- For OMAPI -->
329    <protected-broadcast android:name="android.se.omapi.action.SECURE_ELEMENT_STATE_CHANGED" />
330
331    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
332    <protected-broadcast android:name="android.nfc.action.PREFERRED_PAYMENT_CHANGED" />
333    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
334    <protected-broadcast android:name="android.nfc.action.REQUIRE_UNLOCK_FOR_NFC" />
335    <protected-broadcast android:name="com.android.nfc.action.LLCP_UP" />
336    <protected-broadcast android:name="com.android.nfc.action.LLCP_DOWN" />
337    <protected-broadcast android:name="com.android.nfc.cardemulation.action.CLOSE_TAP_DIALOG" />
338    <protected-broadcast android:name="com.android.nfc.handover.action.ALLOW_CONNECT" />
339    <protected-broadcast android:name="com.android.nfc.handover.action.DENY_CONNECT" />
340    <protected-broadcast android:name="com.android.nfc.handover.action.TIMEOUT_CONNECT" />
341    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
342    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
343    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
344    <!-- For NFC to BT handover -->
345    <protected-broadcast android:name="android.btopp.intent.action.WHITELIST_DEVICE" />
346    <protected-broadcast android:name="android.btopp.intent.action.STOP_HANDOVER_TRANSFER" />
347    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND" />
348    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_SEND_MULTIPLE" />
349    <protected-broadcast android:name="com.android.nfc.handover.action.CANCEL_HANDOVER_TRANSFER" />
350
351    <protected-broadcast android:name="android.net.action.CLEAR_DNS_CACHE" />
352    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
353
354    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />
355
356    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
357    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
358    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />
359
360    <protected-broadcast android:name="com.android.server.stats.action.TRIGGER_COLLECTION" />
361
362    <protected-broadcast android:name="com.android.server.WifiManager.action.START_SCAN" />
363    <protected-broadcast android:name="com.android.server.WifiManager.action.START_PNO" />
364    <protected-broadcast android:name="com.android.server.WifiManager.action.DELAYED_DRIVER_STOP" />
365    <protected-broadcast android:name="com.android.server.WifiManager.action.DEVICE_IDLE" />
366    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_ACCEPTED" />
367    <protected-broadcast android:name="com.android.server.action.REMOTE_BUGREPORT_SHARING_DECLINED" />
368    <protected-broadcast android:name="com.android.internal.action.EUICC_FACTORY_RESET" />
369    <protected-broadcast android:name="com.android.server.usb.ACTION_OPEN_IN_APPS" />
370    <protected-broadcast android:name="com.android.server.am.DELETE_DUMPHEAP" />
371    <protected-broadcast android:name="com.android.server.net.action.SNOOZE_WARNING" />
372    <protected-broadcast android:name="com.android.server.net.action.SNOOZE_RAPID" />
373    <protected-broadcast android:name="com.android.server.wifi.ACTION_SHOW_SET_RANDOMIZATION_DETAILS" />
374    <protected-broadcast android:name="com.android.server.wifi.action.NetworkSuggestion.USER_ALLOWED_APP" />
375    <protected-broadcast android:name="com.android.server.wifi.action.NetworkSuggestion.USER_DISALLOWED_APP" />
376    <protected-broadcast android:name="com.android.server.wifi.action.NetworkSuggestion.USER_DISMISSED" />
377    <protected-broadcast android:name="com.android.server.wifi.action.CarrierNetwork.USER_ALLOWED_CARRIER" />
378    <protected-broadcast android:name="com.android.server.wifi.action.CarrierNetwork.USER_DISALLOWED_CARRIER" />
379    <protected-broadcast android:name="com.android.server.wifi.action.CarrierNetwork.USER_DISMISSED" />
380    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.USER_DISMISSED_NOTIFICATION" />
381    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.CONNECT_TO_NETWORK" />
382    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.PICK_WIFI_NETWORK" />
383    <protected-broadcast android:name="com.android.server.wifi.ConnectToNetworkNotification.PICK_NETWORK_AFTER_FAILURE" />
384    <protected-broadcast android:name="com.android.server.wifi.wakeup.DISMISS_NOTIFICATION" />
385    <protected-broadcast android:name="com.android.server.wifi.wakeup.OPEN_WIFI_PREFERENCES" />
386    <protected-broadcast android:name="com.android.server.wifi.wakeup.OPEN_WIFI_SETTINGS" />
387    <protected-broadcast android:name="com.android.server.wifi.wakeup.TURN_OFF_WIFI_WAKE" />
388    <protected-broadcast android:name="android.net.wifi.WIFI_STATE_CHANGED" />
389    <protected-broadcast android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
390    <protected-broadcast android:name="android.net.wifi.WIFI_CREDENTIAL_CHANGED" />
391    <protected-broadcast android:name="android.net.wifi.aware.action.WIFI_AWARE_STATE_CHANGED" />
392    <protected-broadcast android:name="android.net.wifi.rtt.action.WIFI_RTT_STATE_CHANGED" />
393    <protected-broadcast android:name="android.net.wifi.SCAN_RESULTS" />
394    <protected-broadcast android:name="android.net.wifi.RSSI_CHANGED" />
395    <protected-broadcast android:name="android.net.wifi.STATE_CHANGE" />
396    <protected-broadcast android:name="android.net.wifi.LINK_CONFIGURATION_CHANGED" />
397    <protected-broadcast android:name="android.net.wifi.CONFIGURED_NETWORKS_CHANGE" />
398    <protected-broadcast android:name="android.net.wifi.action.NETWORK_SETTINGS_RESET" />
399    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_DEAUTH_IMMINENT" />
400    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_ICON" />
401    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_OSU_PROVIDERS_LIST" />
402    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_SUBSCRIPTION_REMEDIATION" />
403    <protected-broadcast android:name="android.net.wifi.action.PASSPOINT_LAUNCH_OSU_VIEW" />
404    <protected-broadcast android:name="android.net.wifi.action.REFRESH_USER_PROVISIONING" />
405    <protected-broadcast android:name="android.net.wifi.action.WIFI_NETWORK_SUGGESTION_POST_CONNECTION" />
406    <protected-broadcast android:name="android.net.wifi.action.WIFI_SCAN_AVAILABILITY_CHANGED" />
407    <protected-broadcast android:name="android.net.wifi.supplicant.CONNECTION_CHANGE" />
408    <protected-broadcast android:name="android.net.wifi.supplicant.STATE_CHANGE" />
409    <protected-broadcast android:name="android.net.wifi.p2p.STATE_CHANGED" />
410    <protected-broadcast android:name="android.net.wifi.p2p.DISCOVERY_STATE_CHANGE" />
411    <protected-broadcast android:name="android.net.wifi.p2p.THIS_DEVICE_CHANGED" />
412    <protected-broadcast android:name="android.net.wifi.p2p.PEERS_CHANGED" />
413    <protected-broadcast android:name="android.net.wifi.p2p.CONNECTION_STATE_CHANGE" />
414    <protected-broadcast android:name="android.net.wifi.p2p.action.WIFI_P2P_PERSISTENT_GROUPS_CHANGED" />
415    <protected-broadcast android:name="android.net.conn.TETHER_STATE_CHANGED" />
416    <protected-broadcast android:name="android.net.conn.INET_CONDITION_ACTION" />
417    <!-- This broadcast is no longer sent in S but it should stay protected to avoid third party
418         apps broadcasting this and confusing old system apps that may not have been updated. -->
419    <protected-broadcast android:name="android.net.conn.NETWORK_CONDITIONS_MEASURED" />
420    <protected-broadcast
421            android:name="android.net.ConnectivityService.action.PKT_CNT_SAMPLE_INTERVAL_ELAPSED" />
422    <protected-broadcast android:name="android.net.scoring.SCORE_NETWORKS" />
423    <protected-broadcast android:name="android.net.scoring.SCORER_CHANGED" />
424    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE" />
425    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE" />
426    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
427    <protected-broadcast android:name="android.intent.action.ADVANCED_SETTINGS" />
428    <protected-broadcast android:name="android.intent.action.APPLICATION_RESTRICTIONS_CHANGED" />
429    <protected-broadcast android:name="com.android.server.adb.WIRELESS_DEBUG_PAIRED_DEVICES" />
430    <protected-broadcast android:name="com.android.server.adb.WIRELESS_DEBUG_PAIRING_RESULT" />
431    <protected-broadcast android:name="com.android.server.adb.WIRELESS_DEBUG_STATUS" />
432
433    <!-- Legacy -->
434    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_START" />
435    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_END" />
436
437    <protected-broadcast android:name="com.android.server.ACTION_TRIGGER_IDLE" />
438
439    <protected-broadcast android:name="android.intent.action.HDMI_PLUGGED" />
440
441    <protected-broadcast android:name="android.intent.action.PHONE_STATE" />
442
443    <protected-broadcast android:name="android.intent.action.SUB_DEFAULT_CHANGED" />
444
445    <protected-broadcast android:name="android.location.PROVIDERS_CHANGED" />
446    <protected-broadcast android:name="android.location.MODE_CHANGED" />
447    <protected-broadcast android:name="android.location.action.GNSS_CAPABILITIES_CHANGED" />
448
449    <protected-broadcast android:name="android.net.proxy.PAC_REFRESH" />
450
451    <protected-broadcast android:name="android.telecom.action.DEFAULT_DIALER_CHANGED" />
452    <protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED" />
453    <protected-broadcast android:name="android.provider.action.SMS_MMS_DB_CREATED" />
454    <protected-broadcast android:name="android.provider.action.SMS_MMS_DB_LOST" />
455    <protected-broadcast android:name="android.intent.action.CONTENT_CHANGED" />
456    <protected-broadcast android:name="android.provider.Telephony.MMS_DOWNLOADED" />
457
458    <protected-broadcast
459        android:name="com.android.server.connectivityservice.CONNECTED_TO_PROVISIONING_NETWORK_ACTION" />
460
461    <!-- Defined in RestrictionsManager -->
462    <protected-broadcast
463        android:name="android.intent.action.PERMISSION_RESPONSE_RECEIVED" />
464    <!-- Defined in RestrictionsManager -->
465
466    <protected-broadcast android:name="android.intent.action.REQUEST_PERMISSION" />
467    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_STARTED" />
468    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
469    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_PROGRESS" />
470    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
471
472    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED" />
473    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED" />
474    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_CONTENT_CHANGE" />
475    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_RECORD_UPDATED" />
476
477    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_DONE" />
478    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_FAILED" />
479
480    <protected-broadcast android:name="android.internal.policy.action.BURN_IN_PROTECTION" />
481    <protected-broadcast android:name="android.app.action.SYSTEM_UPDATE_POLICY_CHANGED" />
482    <protected-broadcast android:name="android.app.action.RESET_PROTECTION_POLICY_CHANGED" />
483    <protected-broadcast android:name="android.app.action.DEVICE_OWNER_CHANGED" />
484    <protected-broadcast android:name="android.app.action.MANAGED_USER_CREATED" />
485
486    <!-- Added in N -->
487    <protected-broadcast android:name="android.intent.action.ANR" />
488    <protected-broadcast android:name="android.intent.action.CALL" />
489    <protected-broadcast android:name="android.intent.action.CALL_PRIVILEGED" />
490    <protected-broadcast android:name="android.intent.action.DROPBOX_ENTRY_ADDED" />
491    <protected-broadcast android:name="android.intent.action.INPUT_METHOD_CHANGED" />
492    <protected-broadcast android:name="android.intent.action.internal_sim_state_changed" />
493    <protected-broadcast android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
494    <protected-broadcast android:name="android.intent.action.PRECISE_CALL_STATE" />
495    <protected-broadcast android:name="android.intent.action.SUBSCRIPTION_PHONE_STATE" />
496    <protected-broadcast android:name="android.intent.action.USER_INFO_CHANGED" />
497    <protected-broadcast android:name="android.intent.action.USER_UNLOCKED" />
498    <protected-broadcast android:name="android.intent.action.WALLPAPER_CHANGED" />
499
500    <protected-broadcast android:name="android.app.action.DEVICE_POLICY_MANAGER_STATE_CHANGED" />
501    <protected-broadcast android:name="android.app.action.CHOOSE_PRIVATE_KEY_ALIAS" />
502    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLED" />
503    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_DISABLE_REQUESTED" />
504    <protected-broadcast android:name="android.app.action.DEVICE_ADMIN_ENABLED" />
505    <protected-broadcast android:name="android.app.action.LOCK_TASK_ENTERING" />
506    <protected-broadcast android:name="android.app.action.LOCK_TASK_EXITING" />
507    <protected-broadcast android:name="android.app.action.NOTIFY_PENDING_SYSTEM_UPDATE" />
508    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_CHANGED" />
509    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_EXPIRING" />
510    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_FAILED" />
511    <protected-broadcast android:name="android.app.action.ACTION_PASSWORD_SUCCEEDED" />
512    <protected-broadcast android:name="com.android.server.ACTION_EXPIRED_PASSWORD_NOTIFICATION" />
513    <protected-broadcast android:name="com.android.server.ACTION_PROFILE_OFF_DEADLINE" />
514    <protected-broadcast android:name="com.android.server.ACTION_TURN_PROFILE_ON_NOTIFICATION" />
515
516    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_ADDED" />
517    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNLOCKED" />
518    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_REMOVED" />
519
520    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_STATE_CHANGED" />
521    <protected-broadcast android:name="com.android.bluetooth.map.USER_CONFIRM_TIMEOUT" />
522    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_SENT" />
523    <protected-broadcast android:name="com.android.bluetooth.BluetoothMapContentObserver.action.MESSAGE_DELIVERY" />
524    <protected-broadcast android:name="android.content.jobscheduler.JOB_DELAY_EXPIRED" />
525    <protected-broadcast android:name="android.content.syncmanager.SYNC_ALARM" />
526    <protected-broadcast android:name="android.media.INTERNAL_RINGER_MODE_CHANGED_ACTION" />
527    <protected-broadcast android:name="android.media.STREAM_DEVICES_CHANGED_ACTION" />
528    <protected-broadcast android:name="android.media.STREAM_MUTE_CHANGED_ACTION" />
529    <protected-broadcast android:name="android.net.sip.SIP_SERVICE_UP" />
530    <protected-broadcast android:name="android.nfc.action.ADAPTER_STATE_CHANGED" />
531    <protected-broadcast android:name="android.os.action.CHARGING" />
532    <protected-broadcast android:name="android.os.action.DISCHARGING" />
533    <protected-broadcast android:name="android.search.action.SEARCHABLES_CHANGED" />
534    <protected-broadcast android:name="android.security.STORAGE_CHANGED" />
535    <protected-broadcast android:name="android.security.action.TRUST_STORE_CHANGED" />
536    <protected-broadcast android:name="android.security.action.KEYCHAIN_CHANGED" />
537    <protected-broadcast android:name="android.security.action.KEY_ACCESS_CHANGED" />
538    <protected-broadcast android:name="android.telecom.action.NUISANCE_CALL_STATUS_CHANGED" />
539    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_REGISTERED" />
540    <protected-broadcast android:name="android.telecom.action.PHONE_ACCOUNT_UNREGISTERED" />
541    <protected-broadcast android:name="android.telecom.action.POST_CALL" />
542    <protected-broadcast android:name="android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION" />
543    <protected-broadcast android:name="android.telephony.action.CARRIER_CONFIG_CHANGED" />
544    <protected-broadcast android:name="android.telephony.action.DEFAULT_SUBSCRIPTION_CHANGED" />
545    <protected-broadcast android:name="android.telephony.action.DEFAULT_SMS_SUBSCRIPTION_CHANGED" />
546    <protected-broadcast android:name="android.telephony.action.SECRET_CODE" />
547    <protected-broadcast android:name="android.telephony.action.SHOW_VOICEMAIL_NOTIFICATION" />
548    <protected-broadcast android:name="android.telephony.action.SUBSCRIPTION_PLANS_CHANGED" />
549
550    <protected-broadcast android:name="com.android.bluetooth.btservice.action.ALARM_WAKEUP" />
551    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_POLL" />
552    <protected-broadcast android:name="com.android.server.action.NETWORK_STATS_UPDATED" />
553    <protected-broadcast android:name="com.android.server.NetworkTimeUpdateService.action.POLL" />
554    <protected-broadcast android:name="com.android.server.telecom.intent.action.CALLS_ADD_ENTRY" />
555    <protected-broadcast android:name="com.android.settings.location.MODE_CHANGING" />
556    <protected-broadcast android:name="com.android.settings.bluetooth.ACTION_DISMISS_PAIRING" />
557    <protected-broadcast android:name="com.android.settings.network.DELETE_SUBSCRIPTION" />
558    <protected-broadcast android:name="com.android.settings.network.SWITCH_TO_SUBSCRIPTION" />
559    <protected-broadcast android:name="com.android.settings.wifi.action.NETWORK_REQUEST" />
560
561    <protected-broadcast android:name="NotificationManagerService.TIMEOUT" />
562    <protected-broadcast android:name="NotificationHistoryDatabase.CLEANUP" />
563    <protected-broadcast android:name="ScheduleConditionProvider.EVALUATE" />
564    <protected-broadcast android:name="EventConditionProvider.EVALUATE" />
565    <protected-broadcast android:name="SnoozeHelper.EVALUATE" />
566    <protected-broadcast android:name="wifi_scan_available" />
567
568    <protected-broadcast android:name="action.cne.started" />
569    <protected-broadcast android:name="android.content.jobscheduler.JOB_DEADLINE_EXPIRED" />
570    <protected-broadcast android:name="android.intent.action.ACTION_UNSOL_RESPONSE_OEM_HOOK_RAW" />
571    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_SUPL" />
572    <protected-broadcast android:name="android.os.action.LIGHT_DEVICE_IDLE_MODE_CHANGED" />
573    <protected-broadcast android:name="android.os.storage.action.VOLUME_STATE_CHANGED" />
574    <protected-broadcast android:name="android.os.storage.action.DISK_SCANNED" />
575    <protected-broadcast android:name="com.android.server.action.UPDATE_TWILIGHT_STATE" />
576    <protected-broadcast android:name="com.android.server.action.RESET_TWILIGHT_AUTO" />
577    <protected-broadcast android:name="com.android.server.device_idle.STEP_IDLE_STATE" />
578    <protected-broadcast android:name="com.android.server.device_idle.STEP_LIGHT_IDLE_STATE" />
579    <protected-broadcast android:name="com.android.server.Wifi.action.TOGGLE_PNO" />
580    <protected-broadcast android:name="intent.action.ACTION_RF_BAND_INFO" />
581    <protected-broadcast android:name="android.intent.action.MEDIA_RESOURCE_GRANTED" />
582    <protected-broadcast android:name="android.app.action.NETWORK_LOGS_AVAILABLE" />
583    <protected-broadcast android:name="android.app.action.SECURITY_LOGS_AVAILABLE" />
584    <protected-broadcast android:name="android.app.action.COMPLIANCE_ACKNOWLEDGEMENT_REQUIRED" />
585
586    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED" />
587    <protected-broadcast android:name="android.app.action.INTERRUPTION_FILTER_CHANGED_INTERNAL" />
588    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_CHANGED" />
589    <protected-broadcast android:name="android.app.action.NOTIFICATION_POLICY_ACCESS_GRANTED_CHANGED" />
590    <protected-broadcast android:name="android.app.action.AUTOMATIC_ZEN_RULE_STATUS_CHANGED" />
591    <protected-broadcast android:name="android.os.action.ACTION_EFFECTS_SUPPRESSOR_CHANGED" />
592    <protected-broadcast android:name="android.app.action.NOTIFICATION_CHANNEL_BLOCK_STATE_CHANGED" />
593    <protected-broadcast android:name="android.app.action.NOTIFICATION_CHANNEL_GROUP_BLOCK_STATE_CHANGED" />
594    <protected-broadcast android:name="android.app.action.NOTIFICATION_LISTENER_ENABLED_CHANGED" />
595    <protected-broadcast android:name="android.app.action.APP_BLOCK_STATE_CHANGED" />
596
597    <protected-broadcast android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS" />
598    <protected-broadcast android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS" />
599
600    <protected-broadcast android:name="android.intent.action.DYNAMIC_SENSOR_CHANGED" />
601
602    <protected-broadcast android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
603    <protected-broadcast android:name="android.accounts.action.ACCOUNT_REMOVED" />
604    <protected-broadcast android:name="android.accounts.action.VISIBLE_ACCOUNTS_CHANGED" />
605
606    <protected-broadcast android:name="com.android.sync.SYNC_CONN_STATUS_CHANGED" />
607
608    <protected-broadcast android:name="android.net.sip.action.SIP_INCOMING_CALL" />
609    <protected-broadcast android:name="com.android.phone.SIP_ADD_PHONE" />
610    <protected-broadcast android:name="android.net.sip.action.SIP_REMOVE_PROFILE" />
611    <protected-broadcast android:name="android.net.sip.action.SIP_SERVICE_UP" />
612    <protected-broadcast android:name="android.net.sip.action.SIP_CALL_OPTION_CHANGED" />
613    <protected-broadcast android:name="android.net.sip.action.START_SIP" />
614
615    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_CONNECTED" />
616    <protected-broadcast android:name="android.bluetooth.adapter.action.BLE_ACL_DISCONNECTED" />
617
618    <protected-broadcast android:name="android.bluetooth.input.profile.action.HANDSHAKE" />
619    <protected-broadcast android:name="android.bluetooth.input.profile.action.REPORT" />
620
621    <protected-broadcast android:name="android.intent.action.TWILIGHT_CHANGED" />
622
623    <protected-broadcast android:name="com.android.server.fingerprint.ACTION_LOCKOUT_RESET" />
624    <protected-broadcast android:name="android.net.wifi.PASSPOINT_ICON_RECEIVED" />
625
626    <protected-broadcast android:name="com.android.server.notification.CountdownConditionProvider" />
627    <protected-broadcast android:name="android.server.notification.action.ENABLE_NAS" />
628    <protected-broadcast android:name="android.server.notification.action.DISABLE_NAS" />
629    <protected-broadcast android:name="android.server.notification.action.LEARNMORE_NAS" />
630
631    <protected-broadcast android:name="com.android.internal.location.ALARM_WAKEUP" />
632    <protected-broadcast android:name="com.android.internal.location.ALARM_TIMEOUT" />
633    <protected-broadcast android:name="android.intent.action.GLOBAL_BUTTON" />
634
635    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
636    <protected-broadcast android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
637    <protected-broadcast android:name="com.android.server.pm.DISABLE_QUIET_MODE_AFTER_UNLOCK" />
638
639    <protected-broadcast android:name="android.intent.action.PROFILE_ACCESSIBLE" />
640    <protected-broadcast android:name="android.intent.action.PROFILE_INACCESSIBLE" />
641
642    <protected-broadcast android:name="com.android.server.retaildemo.ACTION_RESET_DEMO" />
643
644    <protected-broadcast android:name="android.intent.action.DEVICE_LOCKED_CHANGED" />
645
646    <!-- Added in O -->
647    <protected-broadcast android:name="android.app.action.APPLICATION_DELEGATION_SCOPES_CHANGED" />
648    <protected-broadcast android:name="com.android.server.wm.ACTION_REVOKE_SYSTEM_ALERT_WINDOW_PERMISSION" />
649    <protected-broadcast android:name="android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED" />
650
651    <protected-broadcast android:name="android.content.pm.action.SESSION_COMMITTED" />
652    <protected-broadcast android:name="android.os.action.USER_RESTRICTIONS_CHANGED" />
653    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_ADDED_TO_WATCH_NEXT" />
654    <protected-broadcast android:name="android.media.tv.action.PREVIEW_PROGRAM_BROWSABLE_DISABLED" />
655    <protected-broadcast android:name="android.media.tv.action.WATCH_NEXT_PROGRAM_BROWSABLE_DISABLED" />
656    <protected-broadcast android:name="android.media.tv.action.CHANNEL_BROWSABLE_REQUESTED" />
657    <protected-broadcast android:name="com.android.server.inputmethod.InputMethodManagerService.SHOW_INPUT_METHOD_PICKER" />
658
659    <!-- Time zone rules update intents fired by the system server -->
660    <protected-broadcast android:name="com.android.intent.action.timezone.RULES_UPDATE_OPERATION" />
661    <protected-broadcast android:name="com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK" />
662
663    <!-- Made protected in P (was introduced in JB-MR2) -->
664    <protected-broadcast android:name="android.intent.action.GET_RESTRICTION_ENTRIES" />
665    <protected-broadcast android:name="android.telephony.euicc.action.OTA_STATUS_CHANGED" />
666
667    <!-- Added in P -->
668    <protected-broadcast android:name="android.app.action.PROFILE_OWNER_CHANGED" />
669    <protected-broadcast android:name="android.app.action.TRANSFER_OWNERSHIP_COMPLETE" />
670    <protected-broadcast android:name="android.app.action.AFFILIATED_PROFILE_TRANSFER_OWNERSHIP_COMPLETE" />
671    <protected-broadcast android:name="android.app.action.STATSD_STARTED" />
672    <protected-broadcast android:name="com.android.server.biometrics.fingerprint.ACTION_LOCKOUT_RESET" />
673    <protected-broadcast android:name="com.android.server.biometrics.face.ACTION_LOCKOUT_RESET" />
674
675    <!-- For IdleController -->
676    <protected-broadcast android:name="android.intent.action.DOCK_IDLE" />
677    <protected-broadcast android:name="android.intent.action.DOCK_ACTIVE" />
678
679    <!-- Added in Q -->
680    <protected-broadcast android:name="android.content.pm.action.SESSION_UPDATED" />
681    <protected-broadcast android:name="android.settings.action.GRAYSCALE_CHANGED" />
682
683    <!-- For CarIdlenessTracker -->
684    <protected-broadcast android:name="com.android.server.jobscheduler.GARAGE_MODE_ON" />
685    <protected-broadcast android:name="com.android.server.jobscheduler.GARAGE_MODE_OFF" />
686    <protected-broadcast android:name="com.android.server.jobscheduler.FORCE_IDLE" />
687    <protected-broadcast android:name="com.android.server.jobscheduler.UNFORCE_IDLE" />
688
689    <protected-broadcast android:name="android.provider.action.DEFAULT_SMS_PACKAGE_CHANGED_INTERNAL" />
690
691    <protected-broadcast android:name="android.intent.action.DEVICE_CUSTOMIZATION_READY" />
692
693    <!-- Added in R -->
694    <protected-broadcast android:name="android.app.action.RESET_PROTECTION_POLICY_CHANGED" />
695
696    <!-- For tether entitlement recheck-->
697    <protected-broadcast
698        android:name="com.android.server.connectivity.tethering.PROVISIONING_RECHECK_ALARM" />
699
700    <!-- Made protected in S (was added in R) -->
701    <protected-broadcast android:name="com.android.internal.intent.action.BUGREPORT_REQUESTED" />
702
703    <!-- Added in S -->
704    <protected-broadcast android:name="android.scheduling.action.REBOOT_READY" />
705    <protected-broadcast android:name="android.app.action.DEVICE_POLICY_CONSTANTS_CHANGED" />
706    <protected-broadcast android:name="android.app.action.SCHEDULE_EXACT_ALARM_PERMISSION_STATE_CHANGED" />
707    <protected-broadcast android:name="android.app.action.ACTION_SHOW_NEW_USER_DISCLAIMER" />
708
709    <!-- ====================================================================== -->
710    <!--                          RUNTIME PERMISSIONS                           -->
711    <!-- ====================================================================== -->
712    <eat-comment />
713
714    <!-- Grouping for platform runtime permissions is not accessible to apps
715         @hide
716         @SystemApi
717         @TestApi
718    -->
719    <permission-group android:name="android.permission-group.UNDEFINED"
720        android:priority="100" />
721
722    <!-- ====================================================================== -->
723    <!-- Permissions for accessing user's contacts including personal profile   -->
724    <!-- ====================================================================== -->
725    <eat-comment />
726
727    <!-- Used for runtime permissions related to contacts and profiles on this
728        device. -->
729    <permission-group android:name="android.permission-group.CONTACTS"
730        android:icon="@drawable/perm_group_contacts"
731        android:label="@string/permgrouplab_contacts"
732        android:description="@string/permgroupdesc_contacts"
733        android:priority="100" />
734
735    <!-- Allows an application to read the user's contacts data.
736        <p>Protection level: dangerous
737    -->
738    <permission android:name="android.permission.READ_CONTACTS"
739        android:permissionGroup="android.permission-group.UNDEFINED"
740        android:label="@string/permlab_readContacts"
741        android:description="@string/permdesc_readContacts"
742        android:protectionLevel="dangerous" />
743
744    <!-- Allows an application to write the user's contacts data.
745         <p>Protection level: dangerous
746    -->
747    <permission android:name="android.permission.WRITE_CONTACTS"
748        android:permissionGroup="android.permission-group.UNDEFINED"
749        android:label="@string/permlab_writeContacts"
750        android:description="@string/permdesc_writeContacts"
751        android:protectionLevel="dangerous" />
752
753    <!-- ====================================================================== -->
754    <!-- Permissions for accessing user's calendar                              -->
755    <!-- ====================================================================== -->
756    <eat-comment />
757
758    <!-- Used for runtime permissions related to user's calendar. -->
759    <permission-group android:name="android.permission-group.CALENDAR"
760        android:icon="@drawable/perm_group_calendar"
761        android:label="@string/permgrouplab_calendar"
762        android:description="@string/permgroupdesc_calendar"
763        android:priority="200" />
764
765    <!-- Allows an application to read the user's calendar data.
766         <p>Protection level: dangerous
767    -->
768    <permission android:name="android.permission.READ_CALENDAR"
769        android:permissionGroup="android.permission-group.UNDEFINED"
770        android:label="@string/permlab_readCalendar"
771        android:description="@string/permdesc_readCalendar"
772        android:protectionLevel="dangerous" />
773
774    <!-- Allows an application to write the user's calendar data.
775         <p>Protection level: dangerous
776    -->
777    <permission android:name="android.permission.WRITE_CALENDAR"
778        android:permissionGroup="android.permission-group.UNDEFINED"
779        android:label="@string/permlab_writeCalendar"
780        android:description="@string/permdesc_writeCalendar"
781        android:protectionLevel="dangerous" />
782
783    <!-- ====================================================================== -->
784    <!-- Permissions for accessing and modifying user's SMS messages            -->
785    <!-- ====================================================================== -->
786    <eat-comment />
787
788    <!-- Allows accessing the messages on ICC
789         @hide Used internally. -->
790    <permission android:name="android.permission.ACCESS_MESSAGES_ON_ICC"
791        android:protectionLevel="signature" />
792
793    <!-- Used for runtime permissions related to user's SMS messages. -->
794    <permission-group android:name="android.permission-group.SMS"
795        android:icon="@drawable/perm_group_sms"
796        android:label="@string/permgrouplab_sms"
797        android:description="@string/permgroupdesc_sms"
798        android:priority="300" />
799
800    <!-- Allows an application to send SMS messages.
801         <p>Protection level: dangerous
802
803         <p> This is a hard restricted permission which cannot be held by an app until
804         the installer on record whitelists the permission. For more details see
805         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
806    -->
807    <permission android:name="android.permission.SEND_SMS"
808        android:permissionGroup="android.permission-group.UNDEFINED"
809        android:label="@string/permlab_sendSms"
810        android:description="@string/permdesc_sendSms"
811        android:permissionFlags="costsMoney|hardRestricted"
812        android:protectionLevel="dangerous" />
813
814    <!-- Allows an application to receive SMS messages.
815         <p>Protection level: dangerous
816
817         <p> This is a hard restricted permission which cannot be held by an app until
818         the installer on record whitelists the permission. For more details see
819         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
820    -->
821    <permission android:name="android.permission.RECEIVE_SMS"
822        android:permissionGroup="android.permission-group.UNDEFINED"
823        android:label="@string/permlab_receiveSms"
824        android:description="@string/permdesc_receiveSms"
825        android:permissionFlags="hardRestricted"
826        android:protectionLevel="dangerous" />
827
828    <!-- Allows an application to read SMS messages.
829         <p>Protection level: dangerous
830
831         <p> This is a hard restricted permission which cannot be held by an app until
832         the installer on record whitelists the permission. For more details see
833         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
834    -->
835    <permission android:name="android.permission.READ_SMS"
836        android:permissionGroup="android.permission-group.UNDEFINED"
837        android:label="@string/permlab_readSms"
838        android:description="@string/permdesc_readSms"
839        android:permissionFlags="hardRestricted"
840        android:protectionLevel="dangerous" />
841
842    <!-- Allows an application to receive WAP push messages.
843         <p>Protection level: dangerous
844
845         <p> This is a hard restricted permission which cannot be held by an app until
846         the installer on record whitelists the permission. For more details see
847         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
848    -->
849    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
850        android:permissionGroup="android.permission-group.UNDEFINED"
851        android:label="@string/permlab_receiveWapPush"
852        android:description="@string/permdesc_receiveWapPush"
853        android:permissionFlags="hardRestricted"
854        android:protectionLevel="dangerous" />
855
856    <!-- Allows an application to monitor incoming MMS messages.
857         <p>Protection level: dangerous
858
859         <p> This is a hard restricted permission which cannot be held by an app until
860         the installer on record whitelists the permission. For more details see
861         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
862    -->
863    <permission android:name="android.permission.RECEIVE_MMS"
864        android:permissionGroup="android.permission-group.UNDEFINED"
865        android:label="@string/permlab_receiveMms"
866        android:description="@string/permdesc_receiveMms"
867        android:permissionFlags="hardRestricted"
868        android:protectionLevel="dangerous" />
869
870    <!-- @SystemApi @TestApi Allows an application to forward cell broadcast messages to the cell
871         broadcast module. This is required in order to bind to the cell broadcast service, and
872         ensures that only the system can forward messages to it.
873
874         <p>Protection level: signature
875
876         @hide -->
877    <permission android:name="android.permission.BIND_CELL_BROADCAST_SERVICE"
878        android:label="@string/permlab_bindCellBroadcastService"
879        android:description="@string/permdesc_bindCellBroadcastService"
880        android:protectionLevel="signature" />
881
882    <!-- @SystemApi @TestApi Allows an application to read previously received cell broadcast
883         messages and to register a content observer to get notifications when
884         a cell broadcast has been received and added to the database. For
885         emergency alerts, the database is updated immediately after the
886         alert dialog and notification sound/vibration/speech are presented.
887         The "read" column is then updated after the user dismisses the alert.
888         This enables supplementary emergency assistance apps to start loading
889         additional emergency information (if Internet access is available)
890         when the alert is first received, and to delay presenting the info
891         to the user until after the initial alert dialog is dismissed.
892         <p>Protection level: dangerous
893
894         <p> This is a hard restricted permission which cannot be held by an app until
895         the installer on record whitelists the permission. For more details see
896         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
897
898         @hide Pending API council approval -->
899    <permission android:name="android.permission.READ_CELL_BROADCASTS"
900        android:permissionGroup="android.permission-group.UNDEFINED"
901        android:label="@string/permlab_readCellBroadcasts"
902        android:description="@string/permdesc_readCellBroadcasts"
903        android:permissionFlags="hardRestricted"
904        android:protectionLevel="dangerous" />
905
906    <!-- ====================================================================== -->
907    <!-- Permissions for accessing external storage                             -->
908    <!-- ====================================================================== -->
909    <eat-comment />
910
911    <!-- Used for runtime permissions related to the shared external storage. -->
912    <permission-group android:name="android.permission-group.STORAGE"
913        android:icon="@drawable/perm_group_storage"
914        android:label="@string/permgrouplab_storage"
915        android:description="@string/permgroupdesc_storage"
916        android:priority="900" />
917
918    <!-- Allows an application to read from external storage.
919      <p>Any app that declares the {@link #WRITE_EXTERNAL_STORAGE} permission is implicitly
920      granted this permission.</p>
921      <p>This permission is enforced starting in API level 19.  Before API level 19, this
922      permission is not enforced and all apps still have access to read from external storage.
923      You can test your app with the permission enforced by enabling <em>Protect USB
924      storage</em> under Developer options in the Settings app on a device running Android 4.1 or
925      higher.</p>
926      <p>Also starting in API level 19, this permission is <em>not</em> required to
927      read/write files in your application-specific directories returned by
928      {@link android.content.Context#getExternalFilesDir} and
929      {@link android.content.Context#getExternalCacheDir}.
930      <p class="note"><strong>Note:</strong> If <em>both</em> your <a
931      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
932      minSdkVersion}</a> and <a
933      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
934      targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
935      grants your app this permission. If you don't need this permission, be sure your <a
936      href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
937      targetSdkVersion}</a> is 4 or higher.
938
939      <p> This is a soft restricted permission which cannot be held by an app it its
940      full form until the installer on record whitelists the permission.
941      Specifically, if the permission is allowlisted the holder app can access
942      external storage and the visual and aural media collections while if the
943      permission is not allowlisted the holder app can only access to the visual
944      and aural medial collections. Also the permission is immutably restricted
945      meaning that the allowlist state can be specified only at install time and
946      cannot change until the app is installed. For more details see
947      {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
948     <p>Protection level: dangerous -->
949    <permission android:name="android.permission.READ_EXTERNAL_STORAGE"
950        android:permissionGroup="android.permission-group.UNDEFINED"
951        android:label="@string/permlab_sdcardRead"
952        android:description="@string/permdesc_sdcardRead"
953        android:permissionFlags="softRestricted|immutablyRestricted"
954        android:protectionLevel="dangerous" />
955
956    <!-- Allows an application to write to external storage.
957         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
958         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
959         minSdkVersion}</a> and <a
960         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
961         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
962         grants your app this permission. If you don't need this permission, be sure your <a
963         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
964         targetSdkVersion}</a> is 4 or higher.
965         <p>Starting in API level 19, this permission is <em>not</em> required to
966         read/write files in your application-specific directories returned by
967         {@link android.content.Context#getExternalFilesDir} and
968         {@link android.content.Context#getExternalCacheDir}.
969         <p>If this permission is not allowlisted for an app that targets an API level before
970         {@link android.os.Build.VERSION_CODES#Q} this permission cannot be granted to apps.</p>
971         <p>Protection level: dangerous</p>
972    -->
973    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
974        android:permissionGroup="android.permission-group.UNDEFINED"
975        android:label="@string/permlab_sdcardWrite"
976        android:description="@string/permdesc_sdcardWrite"
977        android:permissionFlags="softRestricted|immutablyRestricted"
978        android:protectionLevel="dangerous" />
979
980    <!-- Allows an application to access any geographic locations persisted in the
981         user's shared collection.
982         <p>Protection level: dangerous -->
983    <permission android:name="android.permission.ACCESS_MEDIA_LOCATION"
984        android:permissionGroup="android.permission-group.UNDEFINED"
985        android:label="@string/permlab_mediaLocation"
986        android:description="@string/permdesc_mediaLocation"
987        android:protectionLevel="dangerous" />
988
989    <!-- @hide @SystemApi @TestApi
990         Allows an application to modify OBB files visible to other apps. -->
991    <permission android:name="android.permission.WRITE_OBB"
992        android:protectionLevel="signature|privileged" />
993
994    <!-- Allows an application a broad access to external storage in scoped storage.
995         Intended to be used by few apps that need to manage files on behalf of the users.
996         <p>Protection level: signature|appop|preinstalled -->
997    <permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"
998        android:permissionGroup="android.permission-group.UNDEFINED"
999        android:protectionLevel="signature|appop|preinstalled" />
1000
1001    <!-- Allows an application to modify and delete media files on this device or any connected
1002         storage device without user confirmation. Applications must already be granted the
1003         {@link #READ_EXTERNAL_STORAGE} or {@link #MANAGE_EXTERNAL_STORAGE}} permissions for this
1004         permission to take effect.
1005         <p>Even if applications are granted this permission, if applications want to modify or
1006         delete media files, they also must get the access by calling
1007         {@link android.provider.MediaStore#createWriteRequest(ContentResolver, Collection)},
1008         {@link android.provider.MediaStore#createDeleteRequest(ContentResolver, Collection)}, or
1009         {@link android.provider.MediaStore#createTrashRequest(ContentResolver, Collection, boolean)}.
1010         <p>This permission doesn't give read or write access directly. It only prevents the user
1011         confirmation dialog for these requests.
1012         <p>If applications are not granted {@link #ACCESS_MEDIA_LOCATION}, the system also pops up
1013         the user confirmation dialog for the write request.
1014         <p>Protection level: signature|appop|preinstalled -->
1015    <permission android:name="android.permission.MANAGE_MEDIA"
1016        android:protectionLevel="signature|appop|preinstalled" />
1017
1018    <!-- ====================================================================== -->
1019    <!-- Permissions for accessing the device location                          -->
1020    <!-- ====================================================================== -->
1021    <eat-comment />
1022
1023    <!-- Used for permissions that allow accessing the device location. -->
1024    <permission-group android:name="android.permission-group.LOCATION"
1025        android:icon="@drawable/perm_group_location"
1026        android:label="@string/permgrouplab_location"
1027        android:description="@string/permgroupdesc_location"
1028        android:priority="400" />
1029
1030    <!-- Allows an app to access precise location.
1031         Alternatively, you might want {@link #ACCESS_COARSE_LOCATION}.
1032         <p>Protection level: dangerous
1033    -->
1034    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
1035        android:permissionGroup="android.permission-group.UNDEFINED"
1036        android:label="@string/permlab_accessFineLocation"
1037        android:description="@string/permdesc_accessFineLocation"
1038        android:backgroundPermission="android.permission.ACCESS_BACKGROUND_LOCATION"
1039        android:protectionLevel="dangerous|instant" />
1040
1041    <!-- Allows an app to access approximate location.
1042         Alternatively, you might want {@link #ACCESS_FINE_LOCATION}.
1043         <p>Protection level: dangerous
1044    -->
1045    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
1046        android:permissionGroup="android.permission-group.UNDEFINED"
1047        android:label="@string/permlab_accessCoarseLocation"
1048        android:description="@string/permdesc_accessCoarseLocation"
1049        android:backgroundPermission="android.permission.ACCESS_BACKGROUND_LOCATION"
1050        android:protectionLevel="dangerous|instant" />
1051
1052    <!-- Allows an app to access location in the background. If you're requesting this permission,
1053         you must also request either {@link #ACCESS_COARSE_LOCATION} or
1054         {@link #ACCESS_FINE_LOCATION}. Requesting this permission by itself doesn't give you
1055         location access.
1056         <p>Protection level: dangerous
1057
1058         <p> This is a hard restricted permission which cannot be held by an app until
1059         the installer on record whitelists the permission. For more details see
1060         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
1061    -->
1062    <permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"
1063        android:permissionGroup="android.permission-group.UNDEFINED"
1064        android:label="@string/permlab_accessBackgroundLocation"
1065        android:permissionFlags="hardRestricted"
1066        android:description="@string/permdesc_accessBackgroundLocation"
1067        android:protectionLevel="dangerous|instant" />
1068
1069    <!-- ====================================================================== -->
1070    <!-- Permissions for accessing the call log                                 -->
1071    <!-- ====================================================================== -->
1072    <eat-comment />
1073
1074    <!-- Used for permissions that are associated telephony features. -->
1075    <permission-group android:name="android.permission-group.CALL_LOG"
1076        android:icon="@drawable/perm_group_call_log"
1077        android:label="@string/permgrouplab_calllog"
1078        android:description="@string/permgroupdesc_calllog"
1079        android:priority="450" />
1080
1081    <!-- Allows an application to access the IMS call service: making and
1082         modifying a call
1083        <p>Protection level: signature|privileged
1084        @hide
1085    -->
1086    <permission android:name="android.permission.ACCESS_IMS_CALL_SERVICE"
1087        android:label="@string/permlab_accessImsCallService"
1088        android:description="@string/permdesc_accessImsCallService"
1089        android:protectionLevel="signature|privileged" />
1090
1091    <!-- @SystemApi @hide Allows an application to perform IMS Single Registration related actions.
1092         Only granted if the application is a system app AND is in the Default SMS Role.
1093         The permission is revoked when the app is taken out of the Default SMS Role.
1094        <p>Protection level: internal|role
1095    -->
1096    <permission android:name="android.permission.PERFORM_IMS_SINGLE_REGISTRATION"
1097        android:protectionLevel="internal|role" />
1098
1099    <!-- Allows an application to read the user's call log.
1100         <p class="note"><strong>Note:</strong> If your app uses the
1101         {@link #READ_CONTACTS} permission and <em>both</em> your <a
1102         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1103         minSdkVersion}</a> and <a
1104         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1105         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
1106         grants your app this permission. If you don't need this permission, be sure your <a
1107         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1108         targetSdkVersion}</a> is 16 or higher.</p>
1109         <p>Protection level: dangerous
1110
1111         <p> This is a hard restricted permission which cannot be held by an app until
1112         the installer on record whitelists the permission. For more details see
1113         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
1114    -->
1115    <permission android:name="android.permission.READ_CALL_LOG"
1116        android:permissionGroup="android.permission-group.UNDEFINED"
1117        android:label="@string/permlab_readCallLog"
1118        android:description="@string/permdesc_readCallLog"
1119        android:permissionFlags="hardRestricted"
1120        android:protectionLevel="dangerous" />
1121
1122    <!-- Allows an application to write (but not read) the user's
1123         call log data.
1124         <p class="note"><strong>Note:</strong> If your app uses the
1125         {@link #WRITE_CONTACTS} permission and <em>both</em> your <a
1126         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1127         minSdkVersion}</a> and <a
1128         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1129         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
1130         grants your app this permission. If you don't need this permission, be sure your <a
1131         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1132         targetSdkVersion}</a> is 16 or higher.</p>
1133         <p>Protection level: dangerous
1134
1135         <p> This is a hard restricted permission which cannot be held by an app until
1136         the installer on record whitelists the permission. For more details see
1137         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
1138    -->
1139    <permission android:name="android.permission.WRITE_CALL_LOG"
1140        android:permissionGroup="android.permission-group.UNDEFINED"
1141        android:label="@string/permlab_writeCallLog"
1142        android:description="@string/permdesc_writeCallLog"
1143        android:permissionFlags="hardRestricted"
1144        android:protectionLevel="dangerous" />
1145
1146    <!-- Allows an application to see the number being dialed during an outgoing
1147         call with the option to redirect the call to a different number or
1148         abort the call altogether.
1149         <p>Protection level: dangerous
1150
1151         <p> This is a hard restricted permission which cannot be held by an app until
1152         the installer on record whitelists the permission. For more details see
1153         {@link android.content.pm.PackageInstaller.SessionParams#setWhitelistedRestrictedPermissions(Set)}.
1154
1155         @deprecated Applications should use {@link android.telecom.CallRedirectionService} instead
1156         of the {@link android.content.Intent#ACTION_NEW_OUTGOING_CALL} broadcast.
1157    -->
1158    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
1159        android:permissionGroup="android.permission-group.UNDEFINED"
1160        android:label="@string/permlab_processOutgoingCalls"
1161        android:description="@string/permdesc_processOutgoingCalls"
1162        android:permissionFlags="hardRestricted"
1163        android:protectionLevel="dangerous" />
1164
1165    <!-- ====================================================================== -->
1166    <!-- Permissions for accessing the device telephony                         -->
1167    <!-- ====================================================================== -->
1168    <eat-comment />
1169
1170    <!-- Used for permissions that are associated telephony features. -->
1171    <permission-group android:name="android.permission-group.PHONE"
1172        android:icon="@drawable/perm_group_phone_calls"
1173        android:label="@string/permgrouplab_phone"
1174        android:description="@string/permgroupdesc_phone"
1175        android:priority="500" />
1176
1177    <!-- Allows read only access to phone state, including the current cellular network information,
1178         the status of any ongoing calls, and a list of any {@link android.telecom.PhoneAccount}s
1179         registered on the device.
1180         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1181         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1182         minSdkVersion}</a> and <a
1183         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1184         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1185         grants your app this permission. If you don't need this permission, be sure your <a
1186         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1187         targetSdkVersion}</a> is 4 or higher.
1188         <p>Protection level: dangerous
1189    -->
1190    <permission android:name="android.permission.READ_PHONE_STATE"
1191        android:permissionGroup="android.permission-group.UNDEFINED"
1192        android:label="@string/permlab_readPhoneState"
1193        android:description="@string/permdesc_readPhoneState"
1194        android:protectionLevel="dangerous" />
1195
1196    <!-- Allows read access to the device's phone number(s). This is a subset of the capabilities
1197         granted by {@link #READ_PHONE_STATE} but is exposed to instant applications.
1198         <p>Protection level: dangerous-->
1199    <permission android:name="android.permission.READ_PHONE_NUMBERS"
1200        android:permissionGroup="android.permission-group.UNDEFINED"
1201        android:label="@string/permlab_readPhoneNumbers"
1202        android:description="@string/permdesc_readPhoneNumbers"
1203        android:protectionLevel="dangerous|instant" />
1204
1205    <!-- Allows an application to initiate a phone call without going through
1206        the Dialer user interface for the user to confirm the call.
1207        <p>Protection level: dangerous
1208    -->
1209    <permission android:name="android.permission.CALL_PHONE"
1210        android:permissionGroup="android.permission-group.UNDEFINED"
1211        android:permissionFlags="costsMoney"
1212        android:label="@string/permlab_callPhone"
1213        android:description="@string/permdesc_callPhone"
1214        android:protectionLevel="dangerous" />
1215
1216    <!-- Allows an application to add voicemails into the system.
1217         <p>Protection level: dangerous
1218    -->
1219    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
1220        android:permissionGroup="android.permission-group.UNDEFINED"
1221        android:label="@string/permlab_addVoicemail"
1222        android:description="@string/permdesc_addVoicemail"
1223        android:protectionLevel="dangerous" />
1224
1225    <!-- Allows an application to use SIP service.
1226         <p>Protection level: dangerous
1227    -->
1228    <permission android:name="android.permission.USE_SIP"
1229        android:permissionGroup="android.permission-group.UNDEFINED"
1230        android:description="@string/permdesc_use_sip"
1231        android:label="@string/permlab_use_sip"
1232        android:protectionLevel="dangerous"/>
1233
1234    <!-- Allows the app to answer an incoming phone call.
1235         <p>Protection level: dangerous
1236    -->
1237    <permission android:name="android.permission.ANSWER_PHONE_CALLS"
1238        android:permissionGroup="android.permission-group.UNDEFINED"
1239        android:label="@string/permlab_answerPhoneCalls"
1240        android:description="@string/permdesc_answerPhoneCalls"
1241        android:protectionLevel="dangerous|runtime" />
1242
1243    <!-- Allows a calling application which manages its own calls through the self-managed
1244         {@link android.telecom.ConnectionService} APIs.  See
1245         {@link android.telecom.PhoneAccount#CAPABILITY_SELF_MANAGED} for more information on the
1246         self-managed ConnectionService APIs.
1247         <p>Protection level: normal
1248    -->
1249    <permission android:name="android.permission.MANAGE_OWN_CALLS"
1250                android:label="@string/permlab_manageOwnCalls"
1251                android:description="@string/permdesc_manageOwnCalls"
1252                android:protectionLevel="normal" />
1253
1254    <!--Allows an app which implements the
1255        {@link android.telecom.InCallService InCallService} API to be eligible to be enabled as a
1256        calling companion app. This means that the Telecom framework will bind to the app's
1257        InCallService implementation when there are calls active. The app can use the InCallService
1258        API to view information about calls on the system and control these calls.
1259        <p>Protection level: normal
1260    -->
1261    <permission android:name="android.permission.CALL_COMPANION_APP"
1262                android:label="@string/permlab_callCompanionApp"
1263                android:description="@string/permdesc_callCompanionApp"
1264                android:protectionLevel="normal" />
1265
1266    <!-- Exempt this uid from restrictions to background audio recoding
1267     <p>Protection level: signature|privileged
1268     @hide
1269     @SystemApi
1270    -->
1271    <permission android:name="android.permission.EXEMPT_FROM_AUDIO_RECORD_RESTRICTIONS"
1272                android:label="@string/permlab_exemptFromAudioRecordRestrictions"
1273                android:description="@string/permdesc_exemptFromAudioRecordRestrictions"
1274                android:protectionLevel="signature|privileged|role" />
1275
1276    <!-- Allows a calling app to continue a call which was started in another app.  An example is a
1277         video calling app that wants to continue a voice call on the user's mobile network.<p>
1278         When the handover of a call from one app to another takes place, there are two devices
1279         which are involved in the handover; the initiating and receiving devices.  The initiating
1280         device is where the request to handover the call was started, and the receiving device is
1281         where the handover request is confirmed by the other party.<p>
1282         This permission protects access to the
1283         {@link android.telecom.TelecomManager#acceptHandover(Uri, int, PhoneAccountHandle)} which
1284         the receiving side of the handover uses to accept a handover.
1285         <p>Protection level: dangerous
1286    -->
1287    <permission android:name="android.permission.ACCEPT_HANDOVER"
1288                android:permissionGroup="android.permission-group.UNDEFINED"
1289                android.label="@string/permlab_acceptHandover"
1290                android:description="@string/permdesc_acceptHandovers"
1291                android:protectionLevel="dangerous" />
1292
1293    <!-- ====================================================================== -->
1294    <!-- Permissions for accessing the device microphone                        -->
1295    <!-- ====================================================================== -->
1296    <eat-comment />
1297
1298    <!-- Used for permissions that are associated with accessing
1299         microphone audio from the device. Note that phone calls also capture audio
1300         but are in a separate (more visible) permission group. -->
1301    <permission-group android:name="android.permission-group.MICROPHONE"
1302        android:icon="@drawable/perm_group_microphone"
1303        android:label="@string/permgrouplab_microphone"
1304        android:description="@string/permgroupdesc_microphone"
1305        android:priority="600" />
1306
1307    <!-- Allows an application to record audio.
1308         <p>Protection level: dangerous
1309    -->
1310    <permission android:name="android.permission.RECORD_AUDIO"
1311        android:permissionGroup="android.permission-group.UNDEFINED"
1312        android:label="@string/permlab_recordAudio"
1313        android:description="@string/permdesc_recordAudio"
1314        android:backgroundPermission="android.permission.RECORD_BACKGROUND_AUDIO"
1315        android:protectionLevel="dangerous|instant" />
1316
1317    <!-- @SystemApi @TestApi Allows an application to record audio while in the background.
1318         This permission is not intended to be held by apps.
1319         <p>Protection level: internal
1320        @hide -->
1321    <permission android:name="android.permission.RECORD_BACKGROUND_AUDIO"
1322        android:permissionGroup="android.permission-group.UNDEFINED"
1323        android:label="@string/permlab_recordBackgroundAudio"
1324        android:description="@string/permdesc_recordBackgroundAudio"
1325        android:protectionLevel="internal|role" />
1326
1327    <!-- ====================================================================== -->
1328    <!-- Permissions for activity recognition                        -->
1329    <!-- ====================================================================== -->
1330    <eat-comment />
1331
1332    <!-- Used for permissions that are associated with activity recognition. -->
1333    <permission-group android:name="android.permission-group.ACTIVITY_RECOGNITION"
1334        android:icon="@drawable/perm_group_activity_recognition"
1335        android:label="@string/permgrouplab_activityRecognition"
1336        android:description="@string/permgroupdesc_activityRecognition"
1337        android:priority="1000" />
1338
1339    <!-- Allows an application to recognize physical activity.
1340         <p>Protection level: dangerous
1341    -->
1342    <permission android:name="android.permission.ACTIVITY_RECOGNITION"
1343        android:permissionGroup="android.permission-group.UNDEFINED"
1344        android:label="@string/permlab_activityRecognition"
1345        android:description="@string/permdesc_activityRecognition"
1346        android:protectionLevel="dangerous|instant" />
1347
1348    <!-- ====================================================================== -->
1349    <!-- Permissions for accessing the vendor UCE Service                              -->
1350    <!-- ====================================================================== -->
1351
1352    <!-- @hide Allows an application to Access UCE-Presence.
1353         <p>Protection level: signature|privileged
1354         @deprecated Framework should no longer use this permission to access the vendor UCE service
1355         using AIDL, it is instead implemented by RcsCapabilityExchangeImplBase
1356    -->
1357    <permission android:name="android.permission.ACCESS_UCE_PRESENCE_SERVICE"
1358        android:permissionGroup="android.permission-group.PHONE"
1359        android:protectionLevel="signature|privileged"/>
1360
1361    <!-- @hide Allows an application to Access UCE-OPTIONS.
1362         <p>Protection level: signature|privileged
1363         @deprecated Framework should no longer use this permission to access the vendor UCE service
1364         using AIDL, it is instead implemented by RcsCapabilityExchangeImplBase
1365    -->
1366    <permission android:name="android.permission.ACCESS_UCE_OPTIONS_SERVICE"
1367        android:permissionGroup="android.permission-group.PHONE"
1368        android:protectionLevel="signature|privileged"/>
1369
1370
1371
1372    <!-- ====================================================================== -->
1373    <!-- Permissions for accessing the device camera                            -->
1374    <!-- ====================================================================== -->
1375    <eat-comment />
1376
1377    <!-- Used for permissions that are associated with accessing
1378     camera or capturing images/video from the device. -->
1379    <permission-group android:name="android.permission-group.CAMERA"
1380        android:icon="@drawable/perm_group_camera"
1381        android:label="@string/permgrouplab_camera"
1382        android:description="@string/permgroupdesc_camera"
1383        android:priority="700" />
1384
1385    <!-- Required to be able to access the camera device.
1386         <p>This will automatically enforce the
1387         <a href="{@docRoot}guide/topics/manifest/uses-feature-element.html">
1388         uses-feature</a> manifest element for <em>all</em> camera features.
1389         If you do not require all camera features or can properly operate if a camera
1390         is not available, then you must modify your manifest as appropriate in order to
1391         install on devices that don't support all camera features.</p>
1392         <p>Protection level: dangerous
1393    -->
1394    <permission android:name="android.permission.CAMERA"
1395        android:permissionGroup="android.permission-group.UNDEFINED"
1396        android:label="@string/permlab_camera"
1397        android:description="@string/permdesc_camera"
1398        android:backgroundPermission="android.permission.BACKGROUND_CAMERA"
1399        android:protectionLevel="dangerous|instant" />
1400
1401    <!-- Required to be able to discover and connect to nearby Bluetooth devices.
1402         <p>Protection level: dangerous -->
1403    <permission-group android:name="android.permission-group.NEARBY_DEVICES"
1404        android:icon="@drawable/perm_group_nearby_devices"
1405        android:label="@string/permgrouplab_nearby_devices"
1406        android:description="@string/permgroupdesc_nearby_devices"
1407        android:priority="750" />
1408
1409    <!-- @SystemApi @TestApi Required to be able to access the camera device in the background.
1410         This permission is not intended to be held by apps.
1411         <p>Protection level: internal
1412        @hide -->
1413    <permission android:name="android.permission.BACKGROUND_CAMERA"
1414            android:permissionGroup="android.permission-group.UNDEFINED"
1415            android:label="@string/permlab_backgroundCamera"
1416            android:description="@string/permdesc_backgroundCamera"
1417            android:protectionLevel="internal|role" />
1418
1419    <!-- @SystemApi Required in addition to android.permission.CAMERA to be able to access
1420           system only camera devices.
1421           <p>Protection level: system|signature|role
1422           @hide -->
1423    <permission android:name="android.permission.SYSTEM_CAMERA"
1424        android:permissionGroup="android.permission-group.UNDEFINED"
1425        android:label="@string/permlab_systemCamera"
1426        android:description="@string/permdesc_systemCamera"
1427        android:protectionLevel="system|signature|role" />
1428
1429    <!-- @SystemApi Allows receiving the camera service notifications when a camera is opened
1430            (by a certain application package) or closed.
1431        @hide -->
1432    <permission android:name="android.permission.CAMERA_OPEN_CLOSE_LISTENER"
1433        android:permissionGroup="android.permission-group.UNDEFINED"
1434        android:label="@string/permlab_cameraOpenCloseListener"
1435        android:description="@string/permdesc_cameraOpenCloseListener"
1436        android:protectionLevel="signature" />
1437
1438    <!-- ====================================================================== -->
1439    <!-- Permissions for accessing the device sensors                           -->
1440    <!-- ====================================================================== -->
1441    <eat-comment />
1442
1443    <!-- Used for permissions that are associated with accessing
1444         body or environmental sensors. -->
1445    <permission-group android:name="android.permission-group.SENSORS"
1446        android:icon="@drawable/perm_group_sensors"
1447        android:label="@string/permgrouplab_sensors"
1448        android:description="@string/permgroupdesc_sensors"
1449        android:priority="800" />
1450
1451    <!-- Allows an app to access sensor data with a sampling rate greater than 200 Hz.
1452        <p>Protection level: normal
1453    -->
1454    <permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS"
1455                android:permissionGroup="android.permission-group.SENSORS"
1456                android:label="@string/permlab_highSamplingRateSensors"
1457                android:description="@string/permdesc_highSamplingRateSensors"
1458                android:protectionLevel="normal" />
1459
1460    <!-- Allows an application to access data from sensors that the user uses to
1461         measure what is happening inside their body, such as heart rate.
1462         <p>Protection level: dangerous -->
1463    <permission android:name="android.permission.BODY_SENSORS"
1464        android:permissionGroup="android.permission-group.UNDEFINED"
1465        android:label="@string/permlab_bodySensors"
1466        android:description="@string/permdesc_bodySensors"
1467        android:protectionLevel="dangerous" />
1468
1469    <!-- Allows an app to use fingerprint hardware.
1470         <p>Protection level: normal
1471         @deprecated Applications should request {@link
1472         android.Manifest.permission#USE_BIOMETRIC} instead
1473    -->
1474    <permission android:name="android.permission.USE_FINGERPRINT"
1475        android:permissionGroup="android.permission-group.SENSORS"
1476        android:label="@string/permlab_useFingerprint"
1477        android:description="@string/permdesc_useFingerprint"
1478        android:protectionLevel="normal" />
1479
1480    <!-- Allows an app to use device supported biometric modalities.
1481         <p>Protection level: normal
1482    -->
1483    <permission android:name="android.permission.USE_BIOMETRIC"
1484        android:permissionGroup="android.permission-group.SENSORS"
1485        android:label="@string/permlab_useBiometric"
1486        android:description="@string/permdesc_useBiometric"
1487        android:protectionLevel="normal" />
1488
1489    <!-- ====================================================================== -->
1490    <!-- REMOVED PERMISSIONS                                                    -->
1491    <!-- ====================================================================== -->
1492
1493    <!-- @hide We need to keep this around for backwards compatibility -->
1494    <permission android:name="android.permission.READ_PROFILE"
1495        android:protectionLevel="normal"
1496        android:permissionFlags="removed"/>
1497
1498    <!-- @hide We need to keep this around for backwards compatibility -->
1499    <permission android:name="android.permission.WRITE_PROFILE"
1500        android:protectionLevel="normal"
1501        android:permissionFlags="removed"/>
1502
1503    <!-- @hide We need to keep this around for backwards compatibility -->
1504    <permission android:name="android.permission.READ_SOCIAL_STREAM"
1505        android:protectionLevel="normal"
1506        android:permissionFlags="removed"/>
1507
1508    <!-- @hide We need to keep this around for backwards compatibility -->
1509    <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
1510        android:protectionLevel="normal"
1511        android:permissionFlags="removed"/>
1512
1513    <!-- @hide We need to keep this around for backwards compatibility -->
1514    <permission android:name="android.permission.READ_USER_DICTIONARY"
1515        android:protectionLevel="normal"
1516        android:permissionFlags="removed"/>
1517
1518    <!-- @hide We need to keep this around for backwards compatibility -->
1519    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
1520        android:protectionLevel="normal"
1521        android:permissionFlags="removed"/>
1522
1523    <!-- @hide We need to keep this around for backwards compatibility -->
1524    <permission android:name="android.permission.WRITE_SMS"
1525        android:protectionLevel="normal"
1526        android:permissionFlags="removed"/>
1527
1528    <!-- @hide We need to keep this around for backwards compatibility -->
1529    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
1530        android:protectionLevel="normal"
1531        android:permissionFlags="removed"/>
1532
1533    <!-- @hide We need to keep this around for backwards compatibility -->
1534    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
1535        android:protectionLevel="normal"
1536        android:permissionFlags="removed"/>
1537
1538    <!-- @hide We need to keep this around for backwards compatibility -->
1539    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
1540        android:protectionLevel="normal"
1541        android:permissionFlags="removed"/>
1542
1543    <!-- @hide We need to keep this around for backwards compatibility -->
1544    <permission android:name="android.permission.MANAGE_ACCOUNTS"
1545        android:protectionLevel="normal"
1546        android:permissionFlags="removed"/>
1547
1548    <!-- @hide We need to keep this around for backwards compatibility -->
1549    <permission android:name="android.permission.USE_CREDENTIALS"
1550        android:protectionLevel="normal"
1551        android:permissionFlags="removed"/>
1552
1553    <!-- @hide We need to keep this around for backwards compatibility -->
1554    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
1555        android:protectionLevel="normal"
1556        android:permissionFlags="removed"/>
1557
1558    <!-- @hide We need to keep this around for backwards compatibility -->
1559    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
1560        android:protectionLevel="normal"
1561        android:permissionFlags="removed"/>
1562
1563    <!-- @hide We need to keep this around for backwards compatibility -->
1564    <permission android:name="android.permission.FLASHLIGHT"
1565        android:protectionLevel="normal"
1566        android:permissionFlags="removed"/>
1567
1568    <!-- ====================================================================== -->
1569    <!-- INSTALL PERMISSIONS                                                    -->
1570    <!-- ====================================================================== -->
1571
1572    <!-- ================================== -->
1573    <!-- Permissions for accessing messages -->
1574    <!-- ================================== -->
1575    <eat-comment />
1576
1577    <!-- Allows an application (Phone) to send a request to other applications
1578         to handle the respond-via-message action during incoming calls.
1579         <p>Not for use by third-party applications. -->
1580    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
1581        android:protectionLevel="signature|privileged" />
1582
1583    <!-- @SystemApi Allows an application to send SMS to premium shortcodes without user permission.
1584         <p>Not for use by third-party applications.
1585         @hide -->
1586    <permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"
1587        android:protectionLevel="signature|privileged" />
1588
1589    <!-- Allows an application to filter carrier specific sms.
1590         @hide -->
1591    <permission android:name="android.permission.CARRIER_FILTER_SMS"
1592        android:protectionLevel="signature|privileged" />
1593
1594    <!-- @SystemApi Allows an application to receive emergency cell broadcast messages,
1595         to record or display them to the user.
1596         <p>Not for use by third-party applications.
1597         @hide -->
1598    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
1599        android:protectionLevel="signature|privileged" />
1600
1601    <!-- Allows an application to monitor incoming Bluetooth MAP messages, to record
1602         or perform processing on them. -->
1603    <!-- @hide -->
1604    <permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"
1605        android:protectionLevel="signature|privileged" />
1606
1607    <!-- @SystemApi @hide Allows an application to execute contacts directory search.
1608         This should only be used by ContactsProvider.
1609         <p>Not for use by third-party applications. -->
1610    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
1611        android:protectionLevel="signature|privileged" />
1612
1613    <!-- @SystemApi @hide Allows an application to modify the cell broadcasts configuration
1614         (i.e. enable or disable channels).
1615         <p>Not for use by third-party applications. -->
1616    <permission android:name="android.permission.MODIFY_CELL_BROADCASTS"
1617                android:protectionLevel="signature|privileged" />
1618
1619    <!-- =============================================================== -->
1620    <!-- Permissions for setting the device alarm                        -->
1621    <!-- =============================================================== -->
1622    <eat-comment />
1623
1624    <!-- Allows an application to broadcast an Intent to set an alarm for the user.
1625         <p>Protection level: normal
1626    -->
1627    <permission android:name="com.android.alarm.permission.SET_ALARM"
1628        android:label="@string/permlab_setAlarm"
1629        android:description="@string/permdesc_setAlarm"
1630        android:protectionLevel="normal" />
1631
1632    <!-- =============================================================== -->
1633    <!-- Permissions for accessing the user voicemail                    -->
1634    <!-- =============================================================== -->
1635    <eat-comment />
1636
1637    <!-- Allows an application to modify and remove existing voicemails in the system.
1638        <p>Protection level: signature|privileged|role
1639    -->
1640    <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
1641        android:protectionLevel="signature|privileged|role" />
1642
1643    <!-- Allows an application to read voicemails in the system.
1644         <p>Protection level: signature|privileged|role
1645    -->
1646    <permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"
1647        android:protectionLevel="signature|privileged|role" />
1648
1649    <!-- ======================================= -->
1650    <!-- Permissions for accessing location info -->
1651    <!-- ======================================= -->
1652    <eat-comment />
1653
1654    <!-- Allows an application to access extra location provider commands.
1655         <p>Protection level: normal
1656    -->
1657    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
1658        android:label="@string/permlab_accessLocationExtraCommands"
1659        android:description="@string/permdesc_accessLocationExtraCommands"
1660        android:protectionLevel="normal" />
1661
1662    <!-- Allows an application to install a location provider into the Location Manager.
1663    <p>Not for use by third-party applications. -->
1664    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
1665        android:protectionLevel="signature|privileged" />
1666
1667    <!-- @SystemApi @hide Allows an application to provide location-based time zone suggestions to
1668         the system server. This is needed because the system server discovers time zone providers
1669         by exposed intent actions and metadata, without it any app could potentially register
1670         itself as time zone provider. The system server checks for this permission.
1671         <p>Not for use by third-party applications.
1672    -->
1673    <permission android:name="android.permission.INSTALL_LOCATION_TIME_ZONE_PROVIDER_SERVICE"
1674        android:protectionLevel="signature|privileged" />
1675
1676    <!-- @SystemApi @hide Allows an application to bind to a android.service.TimeZoneProviderService
1677         for the purpose of detecting the device's time zone. This prevents arbitrary clients
1678         connecting to the time zone provider service. The system server checks that the provider's
1679         intent service explicitly sets this permission via the android:permission attribute of the
1680         service.
1681         This is only expected to be possessed by the system server outside of tests.
1682         <p>Not for use by third-party applications.
1683    -->
1684    <permission android:name="android.permission.BIND_TIME_ZONE_PROVIDER_SERVICE"
1685        android:protectionLevel="signature" />
1686
1687    <!-- @SystemApi @hide Allows HDMI-CEC service to access device and configuration files.
1688         This should only be used by HDMI-CEC service.
1689    -->
1690    <permission android:name="android.permission.HDMI_CEC"
1691        android:protectionLevel="signature|privileged|vendorPrivileged" />
1692
1693    <!-- Allows an application to use location features in hardware,
1694         such as the geofencing api.
1695         <p>Not for use by third-party applications. -->
1696    <permission android:name="android.permission.LOCATION_HARDWARE"
1697        android:protectionLevel="signature|privileged|role" />
1698    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>
1699
1700    <!-- @SystemApi Allows an application to use the Context Hub.
1701         <p>Not for use by third-party applications.
1702         @hide
1703    -->
1704    <permission android:name="android.permission.ACCESS_CONTEXT_HUB"
1705        android:protectionLevel="signature|privileged" />
1706    <uses-permission android:name="android.permission.ACCESS_CONTEXT_HUB"/>
1707
1708    <!-- @SystemApi Allows an application to create mock location providers for testing.
1709         <p>Protection level: signature
1710         @hide
1711    -->
1712    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
1713        android:protectionLevel="signature" />
1714
1715    <!-- ======================================= -->
1716    <!-- Permissions for accessing networks -->
1717    <!-- ======================================= -->
1718    <eat-comment />
1719
1720    <!-- Allows applications to open network sockets.
1721         <p>Protection level: normal
1722    -->
1723    <permission android:name="android.permission.INTERNET"
1724        android:description="@string/permdesc_createNetworkSockets"
1725        android:label="@string/permlab_createNetworkSockets"
1726        android:protectionLevel="normal|instant" />
1727
1728    <!-- Allows applications to access information about networks.
1729         <p>Protection level: normal
1730    -->
1731    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
1732        android:description="@string/permdesc_accessNetworkState"
1733        android:label="@string/permlab_accessNetworkState"
1734        android:protectionLevel="normal|instant" />
1735
1736    <!-- Allows applications to access information about Wi-Fi networks.
1737         <p>Protection level: normal
1738    -->
1739    <permission android:name="android.permission.ACCESS_WIFI_STATE"
1740        android:description="@string/permdesc_accessWifiState"
1741        android:label="@string/permlab_accessWifiState"
1742        android:protectionLevel="normal" />
1743
1744    <!-- Allows applications to change Wi-Fi connectivity state.
1745         <p>Protection level: normal
1746    -->
1747    <permission android:name="android.permission.CHANGE_WIFI_STATE"
1748        android:description="@string/permdesc_changeWifiState"
1749        android:label="@string/permlab_changeWifiState"
1750        android:protectionLevel="normal" />
1751
1752    <!-- @SystemApi @hide Allows apps to create and manage IPsec tunnels.
1753         <p>Only granted to applications that are currently bound by the
1754         system for creating and managing IPsec-based interfaces.
1755    -->
1756    <permission android:name="android.permission.MANAGE_IPSEC_TUNNELS"
1757        android:protectionLevel="signature|appop" />
1758
1759    <!-- @SystemApi @hide Allows apps to create and manage Test Networks.
1760         <p>Granted only to shell. CTS tests will use
1761         UiAutomation.AdoptShellPermissionIdentity() to gain access.
1762    -->
1763    <permission android:name="android.permission.MANAGE_TEST_NETWORKS"
1764        android:protectionLevel="signature" />
1765
1766    <!-- @SystemApi @hide Allows applications to read Wi-Fi credential.
1767         <p>Not for use by third-party applications. -->
1768    <permission android:name="android.permission.READ_WIFI_CREDENTIAL"
1769        android:protectionLevel="signature|privileged" />
1770
1771    <!-- @SystemApi @hide Allows applications to change tether state and run
1772         tether carrier provisioning.
1773         <p>Not for use by third-party applications. -->
1774    <permission android:name="android.permission.TETHER_PRIVILEGED"
1775        android:protectionLevel="signature|privileged" />
1776
1777    <!-- @SystemApi @hide Allow system apps to receive broadcast
1778         when a wifi network credential is changed.
1779         <p>Not for use by third-party applications. -->
1780    <permission android:name="android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE"
1781        android:protectionLevel="signature|privileged" />
1782
1783    <!-- @SystemApi @hide Allows an application to modify any wifi configuration, even if created
1784     by another application. Once reconfigured the original creator cannot make any further
1785     modifications.
1786     <p>Not for use by third-party applications. -->
1787    <permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"
1788        android:protectionLevel="signature|privileged" />
1789
1790    <!-- Allows applications to act as network scorers. @hide @SystemApi-->
1791    <permission android:name="android.permission.SCORE_NETWORKS"
1792        android:protectionLevel="signature|privileged" />
1793
1794    <!-- Allows applications to request network
1795         recommendations and scores from the NetworkScoreService.
1796         @SystemApi
1797         <p>Not for use by third-party applications. @hide -->
1798    <permission android:name="android.permission.REQUEST_NETWORK_SCORES"
1799        android:protectionLevel="signature|setup" />
1800
1801    <!-- Allows applications to restart the Wi-Fi subsystem.
1802     @SystemApi
1803     <p>Not for use by third-party applications. @hide -->
1804    <permission android:name="android.permission.RESTART_WIFI_SUBSYSTEM"
1805                android:protectionLevel="signature|privileged" />
1806
1807    <!-- @SystemApi @hide Allows applications to toggle airplane mode.
1808         <p>Not for use by third-party or privileged applications.
1809    -->
1810    <permission android:name="android.permission.NETWORK_AIRPLANE_MODE"
1811        android:protectionLevel="signature" />
1812
1813    <!-- Allows network stack services (Connectivity and Wifi) to coordinate
1814         <p>Not for use by third-party or privileged applications.
1815         @SystemApi @TestApi
1816         @hide This should only be used by Connectivity and Wifi Services.
1817    -->
1818    <permission android:name="android.permission.NETWORK_STACK"
1819        android:protectionLevel="signature" />
1820
1821    <!-- @SystemApi @hide Allows an application to observe network policy changes. -->
1822    <permission android:name="android.permission.OBSERVE_NETWORK_POLICY"
1823                android:protectionLevel="signature" />
1824
1825    <!-- @SystemApi @hide Allows applications to register network factory or agent -->
1826    <permission android:name="android.permission.NETWORK_FACTORY"
1827                android:protectionLevel="signature" />
1828
1829    <!-- @SystemApi @hide Allows applications to access network stats provider -->
1830    <permission android:name="android.permission.NETWORK_STATS_PROVIDER"
1831                android:protectionLevel="signature" />
1832
1833    <!-- Allows Settings and SystemUI to call methods in Networking services
1834         <p>Not for use by third-party or privileged applications.
1835         @SystemApi @TestApi
1836         @hide This should only be used by Settings and SystemUI.
1837    -->
1838    <permission android:name="android.permission.NETWORK_SETTINGS"
1839        android:protectionLevel="signature" />
1840
1841    <!-- Allows holder to request bluetooth/wifi scan bypassing global "use location" setting and
1842         location permissions.
1843         <p>Not for use by third-party or privileged applications.
1844         @SystemApi
1845         @hide
1846    -->
1847    <permission android:name="android.permission.RADIO_SCAN_WITHOUT_LOCATION"
1848                android:protectionLevel="signature|companion" />
1849
1850    <!-- Allows SetupWizard to call methods in Networking services
1851         <p>Not for use by any other third-party or privileged applications.
1852         @SystemApi
1853         @hide This should only be used by SetupWizard.
1854    -->
1855    <permission android:name="android.permission.NETWORK_SETUP_WIZARD"
1856        android:protectionLevel="signature|setup" />
1857
1858    <!-- Allows Managed Provisioning to call methods in Networking services
1859         <p>Not for use by any other third-party or privileged applications.
1860         @SystemApi
1861         @hide This should only be used by ManagedProvisioning app.
1862    -->
1863    <permission android:name="android.permission.NETWORK_MANAGED_PROVISIONING"
1864        android:protectionLevel="signature" />
1865
1866    <!-- Allows Carrier Provisioning to call methods in Networking services
1867         <p>Not for use by any other third-party or privileged applications.
1868         @SystemApi
1869         @hide This should only be used by CarrierProvisioning.
1870    -->
1871    <permission android:name="android.permission.NETWORK_CARRIER_PROVISIONING"
1872        android:protectionLevel="signature|privileged" />
1873
1874    <!-- #SystemApi @hide Allows applications to access information about LoWPAN interfaces.
1875         <p>Not for use by third-party applications. -->
1876    <permission android:name="android.permission.ACCESS_LOWPAN_STATE"
1877        android:protectionLevel="signature|privileged" />
1878
1879    <!-- #SystemApi @hide Allows applications to change LoWPAN connectivity state.
1880         <p>Not for use by third-party applications. -->
1881    <permission android:name="android.permission.CHANGE_LOWPAN_STATE"
1882        android:protectionLevel="signature|privileged" />
1883
1884    <!-- #SystemApi @hide Allows applications to read LoWPAN credential.
1885         <p>Not for use by third-party applications. -->
1886    <permission android:name="android.permission.READ_LOWPAN_CREDENTIAL"
1887        android:protectionLevel="signature|privileged" />
1888
1889    <!-- #SystemApi @hide Allows a service to register or unregister
1890         new LoWPAN interfaces.
1891         <p>Not for use by third-party applications. -->
1892    <permission android:name="android.permission.MANAGE_LOWPAN_INTERFACES"
1893        android:protectionLevel="signature|privileged" />
1894
1895    <!-- #SystemApi @hide Allows an app to bypass Private DNS.
1896         <p>Not for use by third-party applications.
1897         TODO: publish as system API in next API release. -->
1898    <permission android:name="android.permission.NETWORK_BYPASS_PRIVATE_DNS"
1899        android:protectionLevel="signature" />
1900
1901    <!-- @SystemApi @hide Allows device mobility state to be set so that Wifi scan interval can
1902         be increased when the device is stationary in order to save power.
1903         <p>Not for use by third-party applications. -->
1904    <permission android:name="android.permission.WIFI_SET_DEVICE_MOBILITY_STATE"
1905        android:protectionLevel="signature|privileged" />
1906
1907    <!-- @SystemApi @hide Allows privileged system APK to update Wifi usability stats and score.
1908         <p>Not for use by third-party applications. -->
1909    <permission android:name="android.permission.WIFI_UPDATE_USABILITY_STATS_SCORE"
1910        android:protectionLevel="signature|privileged" />
1911
1912    <!-- @SystemApi @hide Allows applications to update Wifi/Cellular coex channels to avoid.
1913             <p>Not for use by third-party applications. -->
1914    <permission android:name="android.permission.WIFI_UPDATE_COEX_UNSAFE_CHANNELS"
1915        android:protectionLevel="signature|role" />
1916
1917    <!-- @SystemApi @hide Allows applications to access Wifi/Cellular coex channels being avoided.
1918         <p>Not for use by third-party applications. -->
1919    <permission android:name="android.permission.WIFI_ACCESS_COEX_UNSAFE_CHANNELS"
1920        android:protectionLevel="signature|role" />
1921
1922    <!-- @SystemApi @hide Allows system APK to manage country code.
1923             <p>Not for use by third-party applications. -->
1924    <permission android:name="android.permission.MANAGE_WIFI_COUNTRY_CODE"
1925        android:protectionLevel="signature" />
1926
1927    <!-- @SystemApi @hide Allows an application to manage an automotive device's application network
1928         preference as it relates to OEM_PAID and OEM_PRIVATE capable networks.
1929         <p>Not for use by third-party or privileged applications. -->
1930    <permission android:name="android.permission.CONTROL_OEM_PAID_NETWORK_PREFERENCE"
1931        android:protectionLevel="signature" />
1932
1933    <!-- ======================================= -->
1934    <!-- Permissions for short range, peripheral networks -->
1935    <!-- ======================================= -->
1936    <eat-comment />
1937
1938    <!-- Allows applications to connect to paired bluetooth devices.
1939         <p>Protection level: normal
1940    -->
1941    <permission android:name="android.permission.BLUETOOTH"
1942        android:description="@string/permdesc_bluetooth"
1943        android:label="@string/permlab_bluetooth"
1944        android:protectionLevel="normal" />
1945
1946    <!-- Required to be able to discover and pair nearby Bluetooth devices.
1947         <p>Protection level: dangerous -->
1948    <permission android:name="android.permission.BLUETOOTH_SCAN"
1949        android:permissionGroup="android.permission-group.UNDEFINED"
1950        android:description="@string/permdesc_bluetooth_scan"
1951        android:label="@string/permlab_bluetooth_scan"
1952        android:protectionLevel="dangerous" />
1953
1954    <!-- Required to be able to connect to paired Bluetooth devices.
1955         <p>Protection level: dangerous -->
1956    <permission android:name="android.permission.BLUETOOTH_CONNECT"
1957        android:permissionGroup="android.permission-group.UNDEFINED"
1958        android:description="@string/permdesc_bluetooth_connect"
1959        android:label="@string/permlab_bluetooth_connect"
1960        android:protectionLevel="dangerous" />
1961
1962    <!-- Required to be able to advertise to nearby Bluetooth devices.
1963         <p>Protection level: dangerous -->
1964    <permission android:name="android.permission.BLUETOOTH_ADVERTISE"
1965        android:permissionGroup="android.permission-group.UNDEFINED"
1966        android:description="@string/permdesc_bluetooth_advertise"
1967        android:label="@string/permlab_bluetooth_advertise"
1968        android:protectionLevel="dangerous" />
1969
1970    <!-- Required to be able to range to devices using ultra-wideband.
1971         <p>Protection level: dangerous -->
1972    <permission android:name="android.permission.UWB_RANGING"
1973        android:permissionGroup="android.permission-group.UNDEFINED"
1974        android:description="@string/permdesc_uwb_ranging"
1975        android:label="@string/permlab_uwb_ranging"
1976        android:protectionLevel="dangerous" />
1977
1978    <!-- @SystemApi @TestApi Allows an application to suspend other apps, which will prevent the
1979         user from using them until they are unsuspended.
1980         @hide
1981    -->
1982    <permission android:name="android.permission.SUSPEND_APPS"
1983        android:protectionLevel="signature|role" />
1984
1985    <!-- Allows applications to discover and pair bluetooth devices.
1986         <p>Protection level: normal
1987    -->
1988    <permission android:name="android.permission.BLUETOOTH_ADMIN"
1989        android:description="@string/permdesc_bluetoothAdmin"
1990        android:label="@string/permlab_bluetoothAdmin"
1991        android:protectionLevel="normal" />
1992
1993    <!-- Allows applications to pair bluetooth devices without user interaction, and to
1994         allow or disallow phonebook access or message access.
1995         <p>Not for use by third-party applications. -->
1996    <permission android:name="android.permission.BLUETOOTH_PRIVILEGED"
1997        android:protectionLevel="signature|privileged" />
1998
1999    <!-- Control access to email providers exclusively for Bluetooth
2000         @hide
2001    -->
2002    <permission android:name="android.permission.BLUETOOTH_MAP"
2003        android:protectionLevel="signature" />
2004
2005    <!-- Allows bluetooth stack to access files
2006         @hide This should only be used by Bluetooth apk.
2007    -->
2008    <permission android:name="android.permission.BLUETOOTH_STACK"
2009        android:protectionLevel="signature" />
2010
2011    <!-- Allows uhid write access for creating virtual input devices
2012         @hide
2013    -->
2014    <permission android:name="android.permission.VIRTUAL_INPUT_DEVICE"
2015        android:protectionLevel="signature" />
2016
2017    <!-- Allows applications to perform I/O operations over NFC.
2018         <p>Protection level: normal
2019    -->
2020    <permission android:name="android.permission.NFC"
2021        android:description="@string/permdesc_nfc"
2022        android:label="@string/permlab_nfc"
2023        android:protectionLevel="normal" />
2024
2025    <!-- Allows applications to receive NFC transaction events.
2026         <p>Protection level: normal
2027    -->
2028    <permission android:name="android.permission.NFC_TRANSACTION_EVENT"
2029      android:protectionLevel="normal" />
2030
2031    <!-- Allows applications to receive NFC preferred payment service information.
2032         <p>Protection level: normal
2033    -->
2034    <permission android:name="android.permission.NFC_PREFERRED_PAYMENT_INFO"
2035        android:description="@string/permdesc_preferredPaymentInfo"
2036        android:label="@string/permlab_preferredPaymentInfo"
2037        android:protectionLevel="normal" />
2038
2039    <!-- @SystemApi Allows access to set NFC controller always on states.
2040         <p>Protection level: signature|privileged
2041         @hide -->
2042    <permission android:name="android.permission.NFC_SET_CONTROLLER_ALWAYS_ON"
2043        android:protectionLevel="signature|privileged" />
2044
2045    <!-- @SystemApi Allows an internal user to use privileged SecureElement APIs.
2046         Applications holding this permission can access OMAPI reset system API
2047         and bypass OMAPI AccessControlEnforcer.
2048         <p>Not for use by third-party applications.
2049         @hide -->
2050    <permission android:name="android.permission.SECURE_ELEMENT_PRIVILEGED_OPERATION"
2051        android:protectionLevel="signature|privileged" />
2052
2053    <!-- @deprecated This permission used to allow too broad access to sensitive methods and all its
2054         uses have been replaced by a more appropriate permission. Most uses have been replaced with
2055         a NETWORK_STACK or NETWORK_SETTINGS check. Please look up the documentation of the
2056         individual functions to figure out what permission now protects the individual function.
2057         @SystemApi Allows an internal user to use privileged ConnectivityManager APIs.
2058         @hide -->
2059    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
2060        android:protectionLevel="signature|privileged" />
2061
2062    <!-- @SystemApi Allows an internal user to use restricted Networks.
2063         @hide -->
2064    <permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"
2065        android:protectionLevel="signature|privileged" />
2066    <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"/>
2067
2068    <!-- @SystemApi Allows an internal user to set signal strength in NetworkRequest. This kind of
2069         request will wake up device when signal strength meets the given value.
2070         @hide -->
2071    <permission android:name="android.permission.NETWORK_SIGNAL_STRENGTH_WAKEUP"
2072                android:protectionLevel="signature|privileged" />
2073
2074    <!-- @SystemApi Allows a system application to access hardware packet offload capabilities.
2075         @hide -->
2076    <permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"
2077        android:protectionLevel="signature|privileged" />
2078
2079    <!-- @SystemApi
2080         @hide -->
2081    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
2082        android:protectionLevel="signature|privileged" />
2083
2084    <!-- @SystemApi Allows access to the loop radio (Android@Home mesh network) device.
2085         @hide -->
2086    <permission android:name="android.permission.LOOP_RADIO"
2087        android:protectionLevel="signature|privileged" />
2088
2089    <!-- Allows sending and receiving handover transfer status from Wifi and Bluetooth
2090         @hide -->
2091    <permission android:name="android.permission.NFC_HANDOVER_STATUS"
2092        android:protectionLevel="signature|privileged" />
2093
2094    <!-- @hide Allows internal management of Bluetooth state when on wireless consent mode.
2095         <p>Not for use by third-party applications. -->
2096    <permission android:name="android.permission.MANAGE_BLUETOOTH_WHEN_WIRELESS_CONSENT_REQUIRED"
2097        android:protectionLevel="signature" />
2098
2099    <!-- @hide Allows the device to be reset, clearing all data and enables Test Harness Mode. -->
2100    <permission android:name="android.permission.ENABLE_TEST_HARNESS_MODE"
2101        android:protectionLevel="signature" />
2102
2103    <!-- @SystemApi Allows access to ultra wideband device.
2104     <p>Not for use by third-party applications.
2105     @hide -->
2106    <permission android:name="android.permission.UWB_PRIVILEGED"
2107                android:protectionLevel="signature|privileged" />
2108
2109    <!-- ================================== -->
2110    <!-- Permissions for accessing accounts -->
2111    <!-- ================================== -->
2112    <eat-comment />
2113
2114    <!-- Allows access to the list of accounts in the Accounts Service.
2115
2116    <p class="note"><strong>Note:</strong> Beginning with Android 6.0 (API level
2117    23), if an app shares the signature of the authenticator that manages an
2118    account, it does not need <code>"GET_ACCOUNTS"</code> permission to read
2119    information about that account. On Android 5.1 and lower, all apps need
2120    <code>"GET_ACCOUNTS"</code> permission to read information about any
2121    account.</p>
2122
2123    <p>Protection level: dangerous
2124    -->
2125    <permission android:name="android.permission.GET_ACCOUNTS"
2126        android:permissionGroup="android.permission-group.UNDEFINED"
2127        android:protectionLevel="dangerous"
2128        android:description="@string/permdesc_getAccounts"
2129        android:label="@string/permlab_getAccounts" />
2130    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
2131
2132    <!-- Allows applications to call into AccountAuthenticators.
2133    <p>Not for use by third-party applications. -->
2134    <permission android:name="android.permission.ACCOUNT_MANAGER"
2135        android:protectionLevel="signature" />
2136
2137    <!-- ================================== -->
2138    <!-- Permissions for accessing hardware that may effect battery life-->
2139    <!-- ================================== -->
2140    <eat-comment />
2141
2142    <!-- Allows applications to enter Wi-Fi Multicast mode.
2143         <p>Protection level: normal
2144    -->
2145    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
2146        android:description="@string/permdesc_changeWifiMulticastState"
2147        android:label="@string/permlab_changeWifiMulticastState"
2148        android:protectionLevel="normal" />
2149
2150    <!-- Allows access to the vibrator.
2151         <p>Protection level: normal
2152    -->
2153    <permission android:name="android.permission.VIBRATE"
2154        android:label="@string/permlab_vibrate"
2155        android:description="@string/permdesc_vibrate"
2156        android:protectionLevel="normal|instant" />
2157
2158    <!-- Allows access to the vibrator always-on settings.
2159         <p>Protection level: signature
2160         @hide
2161    -->
2162    <permission android:name="android.permission.VIBRATE_ALWAYS_ON"
2163        android:protectionLevel="signature" />
2164
2165    <!-- @SystemApi Allows access to the vibrator state.
2166         <p>Protection level: signature
2167         @hide
2168    -->
2169    <permission android:name="android.permission.ACCESS_VIBRATOR_STATE"
2170        android:label="@string/permdesc_vibrator_state"
2171        android:description="@string/permdesc_vibrator_state"
2172        android:protectionLevel="signature|privileged" />
2173
2174    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
2175         from dimming.
2176         <p>Protection level: normal
2177    -->
2178    <permission android:name="android.permission.WAKE_LOCK"
2179        android:label="@string/permlab_wakeLock"
2180        android:description="@string/permdesc_wakeLock"
2181        android:protectionLevel="normal|instant" />
2182
2183    <!-- Allows using the device's IR transmitter, if available.
2184         <p>Protection level: normal
2185    -->
2186    <permission android:name="android.permission.TRANSMIT_IR"
2187        android:label="@string/permlab_transmitIr"
2188        android:description="@string/permdesc_transmitIr"
2189        android:protectionLevel="normal" />
2190
2191    <!-- ==================================================== -->
2192    <!-- Permissions related to changing audio settings   -->
2193    <!-- ==================================================== -->
2194    <eat-comment />
2195
2196    <!-- Allows an application to modify global audio settings.
2197         <p>Protection level: normal
2198    -->
2199    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
2200        android:label="@string/permlab_modifyAudioSettings"
2201        android:description="@string/permdesc_modifyAudioSettings"
2202        android:protectionLevel="normal" />
2203
2204    <!-- ======================================== -->
2205    <!-- Permissions for factory reset protection -->
2206    <!-- ======================================== -->
2207    <eat-comment />
2208
2209    <!-- @SystemApi Allows an application to set a factory reset protection (FRP) policy.
2210         <p>Not for use by third-party applications.
2211         @hide
2212    -->
2213    <permission android:name="android.permission.MANAGE_FACTORY_RESET_PROTECTION"
2214        android:protectionLevel="signature|privileged"/>
2215
2216    <!-- ================================== -->
2217    <!-- Permissions for accessing hardware -->
2218    <!-- ================================== -->
2219    <eat-comment />
2220
2221    <!-- @SystemApi Allows an application to manage preferences and permissions for USB devices
2222         @hide -->
2223    <permission android:name="android.permission.MANAGE_USB"
2224        android:protectionLevel="signature|privileged" />
2225
2226    <!-- @SystemApi Allows an application to manage Android Debug Bridge settings.
2227         <p>Not for use by third-party applications.
2228         @hide -->
2229    <permission android:name="android.permission.MANAGE_DEBUGGING"
2230        android:protectionLevel="signature|privileged" />
2231
2232    <!-- @SystemApi Allows an application to access the MTP USB kernel driver.
2233         For use only by the device side MTP implementation.
2234         @hide -->
2235    <permission android:name="android.permission.ACCESS_MTP"
2236        android:protectionLevel="signature|privileged" />
2237
2238    <!-- @SystemApi Allows access to hardware peripherals.  Intended only for hardware testing.
2239         <p>Not for use by third-party applications.
2240         @hide
2241    -->
2242    <permission android:name="android.permission.HARDWARE_TEST"
2243        android:protectionLevel="signature" />
2244
2245    <!-- @hide Allows an application to manage DynamicSystem image -->
2246    <permission android:name="android.permission.MANAGE_DYNAMIC_SYSTEM"
2247        android:protectionLevel="signature" />
2248
2249    <!-- @SystemApi Allows an application to install a DynamicSystem image and get status updates.
2250         @hide -->
2251    <permission android:name="android.permission.INSTALL_DYNAMIC_SYSTEM"
2252        android:protectionLevel="signature|privileged" />
2253
2254    <!-- @SystemApi Allows access to Broadcast Radio
2255         @hide This is not a third-party API (intended for system apps).-->
2256    <permission android:name="android.permission.ACCESS_BROADCAST_RADIO"
2257        android:protectionLevel="signature|privileged" />
2258
2259    <!-- @deprecated @SystemApi Allows access to FM
2260         @hide This is not a third-party API (intended for system apps).-->
2261    <permission android:name="android.permission.ACCESS_FM_RADIO"
2262        android:protectionLevel="signature|privileged" />
2263
2264    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
2265         @hide -->
2266    <permission android:name="android.permission.NET_ADMIN"
2267        android:protectionLevel="signature" />
2268
2269    <!-- Allows registration for remote audio playback. @hide -->
2270    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
2271        android:protectionLevel="signature" />
2272
2273    <!-- Allows TvInputService to access underlying TV input hardware such as
2274         built-in tuners and HDMI-in's.
2275         <p>This should only be used by OEM's TvInputService's.
2276         @hide @SystemApi -->
2277    <permission android:name="android.permission.TV_INPUT_HARDWARE"
2278        android:protectionLevel="signature|privileged|vendorPrivileged" />
2279
2280    <!-- Allows to capture a frame of TV input hardware such as
2281         built-in tuners and HDMI-in's.
2282         <p>Not for use by third-party applications.
2283         @hide @SystemApi -->
2284    <permission android:name="android.permission.CAPTURE_TV_INPUT"
2285        android:protectionLevel="signature|privileged" />
2286
2287    <!-- @hide Allows TvInputService to access DVB device.
2288   <p>Not for use by third-party applications. -->
2289    <permission android:name="android.permission.DVB_DEVICE"
2290        android:protectionLevel="signature|privileged" />
2291
2292    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by carrier state
2293         @hide <p>Not for use by third-party applications. -->
2294    <permission android:name="android.permission.MANAGE_CARRIER_OEM_UNLOCK_STATE"
2295        android:protectionLevel="signature|privileged" />
2296
2297    <!-- @SystemApi Allows reading and enabling/disabling the OEM unlock allowed by user state
2298         @hide <p>Not for use by third-party applications. -->
2299    <permission android:name="android.permission.MANAGE_USER_OEM_UNLOCK_STATE"
2300        android:protectionLevel="signature|privileged" />
2301
2302    <!-- @SystemApi Allows reading the OEM unlock state
2303         @hide <p>Not for use by third-party applications. -->
2304    <permission android:name="android.permission.READ_OEM_UNLOCK_STATE"
2305        android:protectionLevel="signature|privileged" />
2306
2307    <!-- @hide Allows enabling/disabling OEM unlock
2308   <p>Not for use by third-party applications. -->
2309    <permission android:name="android.permission.OEM_UNLOCK_STATE"
2310        android:protectionLevel="signature" />
2311
2312    <!-- @hide Allows querying state of PersistentDataBlock
2313   <p>Not for use by third-party applications. -->
2314    <permission android:name="android.permission.ACCESS_PDB_STATE"
2315        android:protectionLevel="signature" />
2316
2317    <!-- Allows testing if a passwords is forbidden by the admins.
2318         @hide <p>Not for use by third-party applications. -->
2319    <permission android:name="android.permission.TEST_BLACKLISTED_PASSWORD"
2320        android:protectionLevel="signature" />
2321
2322    <!-- @hide Allows system update service to notify device owner about pending updates.
2323   <p>Not for use by third-party applications. -->
2324    <permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE"
2325        android:protectionLevel="signature|privileged" />
2326
2327    <!-- =========================================== -->
2328    <!-- Permissions associated with camera and image capture -->
2329    <!-- =========================================== -->
2330    <eat-comment />
2331
2332    <!-- @SystemApi Allows disabling the transmit-indicator LED that is normally on when
2333         a camera is in use by an application.
2334         @hide -->
2335    <permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"
2336        android:protectionLevel="signature|privileged" />
2337
2338    <!-- Allows sending the camera service notifications about system-wide events.
2339        @hide -->
2340    <permission android:name="android.permission.CAMERA_SEND_SYSTEM_EVENTS"
2341        android:protectionLevel="signature|privileged" />
2342
2343    <!-- Allows injecting the external camera to replace the internal camera.
2344        @hide -->
2345    <permission android:name="android.permission.CAMERA_INJECT_EXTERNAL_CAMERA"
2346        android:protectionLevel="signature" />
2347
2348    <!-- =========================================== -->
2349    <!-- Permissions associated with telephony state -->
2350    <!-- =========================================== -->
2351    <eat-comment />
2352
2353    <!-- @SystemApi Allows granting runtime permissions to telephony related components.
2354         @hide -->
2355    <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS"
2356        android:protectionLevel="signature" />
2357
2358    <!-- Allows modification of the telephony state - power on, mmi, etc.
2359         Does not include placing calls.
2360         <p>Not for use by third-party applications. -->
2361    <permission android:name="android.permission.MODIFY_PHONE_STATE"
2362        android:protectionLevel="signature|privileged|role" />
2363
2364    <!-- Allows read only access to precise phone state.
2365         Allows reading of detailed information about phone state for special-use applications
2366         such as dialers, carrier applications, or ims applications. -->
2367    <permission android:name="android.permission.READ_PRECISE_PHONE_STATE"
2368        android:protectionLevel="signature|privileged" />
2369
2370    <!-- @SystemApi @TestApi Allows read access to privileged phone state.
2371         @hide Used internally. -->
2372    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
2373        android:protectionLevel="signature|privileged" />
2374
2375    <!-- Allows to read device identifiers and use ICC based authentication like EAP-AKA.
2376         Often required in authentication to access the carrier's server and manage services
2377         of the subscriber.
2378         <p>Protection level: signature|appop -->
2379    <permission android:name="android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER"
2380        android:protectionLevel="signature|appop" />
2381
2382    <!-- @SystemApi Allows read access to emergency number information for ongoing calls or SMS
2383         sessions.
2384         @hide Used internally. -->
2385    <permission android:name="android.permission.READ_ACTIVE_EMERGENCY_SESSION"
2386        android:protectionLevel="signature" />
2387
2388    <!-- Allows listen permission to always reported signal strength.
2389         @hide Used internally. -->
2390    <permission android:name="android.permission.LISTEN_ALWAYS_REPORTED_SIGNAL_STRENGTH"
2391        android:protectionLevel="signature" />
2392
2393    <!-- @SystemApi Protects the ability to register any PhoneAccount with
2394         PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. This capability indicates that the PhoneAccount
2395         corresponds to a device SIM.
2396         @hide -->
2397    <permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"
2398        android:protectionLevel="signature|privileged" />
2399
2400    <!-- @SystemApi Protects the ability to register any PhoneAccount with
2401         PhoneAccount#CAPABILITY_CALL_PROVIDER.
2402         @hide -->
2403    <permission android:name="android.permission.REGISTER_CALL_PROVIDER"
2404        android:protectionLevel="signature|privileged" />
2405
2406    <!-- @SystemApi Protects the ability to register any PhoneAccount with
2407         PhoneAccount#CAPABILITY_CONNECTION_MANAGER
2408         @hide -->
2409    <permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"
2410        android:protectionLevel="signature|privileged" />
2411
2412    <!-- Must be required by a {@link android.telecom.InCallService},
2413         to ensure that only the system can bind to it.
2414         <p>Protection level: signature|privileged
2415    -->
2416    <permission android:name="android.permission.BIND_INCALL_SERVICE"
2417        android:protectionLevel="signature|privileged" />
2418
2419    <!-- Allows to query ongoing call details and manage ongoing calls
2420     <p>Protection level: signature|appop -->
2421    <permission android:name="android.permission.MANAGE_ONGOING_CALLS"
2422        android:protectionLevel="signature|appop"
2423        android:label="@string/permlab_manageOngoingCalls"
2424        android:description="@string/permdesc_manageOngoingCalls" />
2425
2426    <!-- Allows the app to request network scans from telephony.
2427         <p>Not for use by third-party applications.
2428         @SystemApi @hide-->
2429    <permission android:name="android.permission.NETWORK_SCAN"
2430        android:protectionLevel="signature|privileged" />
2431
2432    <!-- Must be required by a link {@link android.telephony.VisualVoicemailService} to ensure that
2433         only the system can bind to it.
2434         <p>Protection level: signature|privileged
2435    -->
2436    <permission
2437      android:name="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
2438      android:protectionLevel="signature|privileged"/>
2439
2440    <!-- Must be required by a {@link android.telecom.CallScreeningService},
2441         to ensure that only the system can bind to it.
2442         <p>Protection level: signature|privileged
2443    -->
2444    <permission android:name="android.permission.BIND_SCREENING_SERVICE"
2445        android:protectionLevel="signature|privileged" />
2446
2447    <!-- Must be required by a {@link android.telecom.PhoneAccountSuggestionService},
2448         to ensure that only the system can bind to it.
2449         <p>Protection level: signature
2450         @SystemApi
2451         @hide
2452    -->
2453    <permission android:name="android.permission.BIND_PHONE_ACCOUNT_SUGGESTION_SERVICE"
2454        android:protectionLevel="signature" />
2455
2456    <!-- Must be required by a {@link android.telecom.CallDiagnosticService},
2457         to ensure that only the system can bind to it.
2458         <p>Protection level: signature
2459         @SystemApi
2460         @hide
2461    -->
2462    <permission android:name="android.permission.BIND_CALL_DIAGNOSTIC_SERVICE"
2463        android:protectionLevel="signature" />
2464
2465    <!-- Must be required by a {@link android.telecom.CallRedirectionService},
2466         to ensure that only the system can bind to it.
2467         <p>Protection level: signature|privileged
2468    -->
2469    <permission android:name="android.permission.BIND_CALL_REDIRECTION_SERVICE"
2470                android:protectionLevel="signature|privileged" />
2471
2472    <!-- Must be required by a {@link android.telecom.ConnectionService},
2473         to ensure that only the system can bind to it.
2474         @deprecated {@link android.telecom.ConnectionService}s should require
2475                 android.permission.BIND_TELECOM_CONNECTION_SERVICE instead.
2476         @SystemApi
2477         @hide -->
2478    <permission android:name="android.permission.BIND_CONNECTION_SERVICE"
2479        android:protectionLevel="signature|privileged" />
2480
2481    <!-- Must be required by a {@link android.telecom.ConnectionService},
2482         to ensure that only the system can bind to it.
2483         <p>Protection level: signature|privileged
2484    -->
2485    <permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"
2486        android:protectionLevel="signature|privileged" />
2487
2488    <!-- @SystemApi Allows an application to control the in-call experience.
2489         @hide -->
2490    <permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"
2491        android:protectionLevel="signature|privileged|role" />
2492
2493    <!-- Allows an application to receive STK related commands.
2494         @hide -->
2495    <permission android:name="android.permission.RECEIVE_STK_COMMANDS"
2496        android:protectionLevel="signature|privileged" />
2497
2498      <!-- Allows an application to send EMBMS download intents to apps
2499           @hide -->
2500    <permission android:name="android.permission.SEND_EMBMS_INTENTS"
2501        android:protectionLevel="signature|privileged" />
2502
2503
2504    <!-- Allows internal management of the sensor framework
2505         @hide -->
2506    <permission android:name="android.permission.MANAGE_SENSORS"
2507        android:protectionLevel="signature" />
2508
2509    <!-- Must be required by an ImsService to ensure that only the
2510         system can bind to it.
2511         <p>Protection level: signature|privileged|vendorPrivileged
2512         @SystemApi
2513         @hide
2514    -->
2515    <permission android:name="android.permission.BIND_IMS_SERVICE"
2516        android:protectionLevel="signature|privileged|vendorPrivileged" />
2517
2518    <!-- Must be required by a telephony data service to ensure that only the
2519         system can bind to it.
2520         <p>Protection level: signature
2521         @SystemApi
2522         @hide
2523    -->
2524    <permission android:name="android.permission.BIND_TELEPHONY_DATA_SERVICE"
2525        android:protectionLevel="signature" />
2526
2527    <!-- Must be required by a NetworkService to ensure that only the
2528         system can bind to it.
2529         <p>Protection level: signature
2530         @SystemApi
2531         @hide
2532    -->
2533    <permission android:name="android.permission.BIND_TELEPHONY_NETWORK_SERVICE"
2534                android:protectionLevel="signature" />
2535
2536    <!-- @SystemApi Allows an application to manage embedded subscriptions (those on a eUICC)
2537         through EuiccManager APIs.
2538         <p>Protection level: signature|privileged|development
2539         @hide
2540    -->
2541    <permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS"
2542                android:protectionLevel="signature|privileged|development" />
2543
2544    <!-- @SystemApi Must be required by an EuiccService to ensure that only the system can bind to
2545         it.
2546         <p>Protection level: signature
2547         @hide
2548    -->
2549    <permission android:name="android.permission.BIND_EUICC_SERVICE"
2550                android:protectionLevel="signature" />
2551
2552    <!-- Required for reading information about carrier apps from SystemConfigManager.
2553         <p>Protection level: signature
2554         @SystemApi
2555         @hide
2556    -->
2557    <permission android:name="android.permission.READ_CARRIER_APP_INFO"
2558        android:protectionLevel="signature" />
2559
2560    <!-- Must be required by an GbaService to ensure that only the
2561         system can bind to it.
2562         <p>Protection level: signature
2563         @SystemApi
2564         @hide
2565    -->
2566    <permission android:name="android.permission.BIND_GBA_SERVICE"
2567        android:protectionLevel="signature" />
2568
2569    <!-- Required for an Application to access APIs related to RCS User Capability Exchange.
2570         <p> This permission is only granted to system applications fulfilling the SMS, Dialer, and
2571         Contacts app roles.
2572         <p>Protection level: internal|role
2573         @SystemApi
2574         @hide -->
2575    <permission android:name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE"
2576        android:protectionLevel="internal|role" />
2577
2578    <!-- ================================== -->
2579    <!-- Permissions for sdcard interaction -->
2580    <!-- ================================== -->
2581    <eat-comment />
2582
2583    <!-- @SystemApi @TestApi Allows an application to write to internal media storage
2584         @deprecated This permission is no longer honored in the system and no longer adds
2585         the media_rw gid as a supplementary gid to the holder. Use the
2586         android.permission.MANAGE_EXTERNAL_STORAGE instead.
2587         @hide  -->
2588    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
2589        android:protectionLevel="signature|privileged" />
2590
2591    <!-- Allows an application to manage access to documents, usually as part
2592         of a document picker.
2593         <p>This permission should <em>only</em> be requested by the platform
2594         document management app.  This permission cannot be granted to
2595         third-party apps.
2596    -->
2597    <permission android:name="android.permission.MANAGE_DOCUMENTS"
2598        android:protectionLevel="signature|documenter" />
2599
2600    <!-- Allows an application to manage access to crates, usually as part
2601         of a crates picker.
2602         <p>This permission should <em>only</em> be requested by the platform
2603         management app.  This permission cannot be granted to
2604         third-party apps.
2605         @hide
2606         @TestApi
2607    -->
2608    <permission android:name="android.permission.MANAGE_CRATES"
2609                android:protectionLevel="signature" />
2610
2611    <!-- @hide Allows an application to cache content.
2612         <p>Not for use by third-party applications.
2613    -->
2614    <permission android:name="android.permission.CACHE_CONTENT"
2615        android:protectionLevel="signature|documenter" />
2616
2617    <!-- @SystemApi @hide
2618         Allows an application to aggressively allocate disk space.
2619         <p>Not for use by third-party applications.
2620    -->
2621    <permission android:name="android.permission.ALLOCATE_AGGRESSIVE"
2622        android:protectionLevel="signature|privileged" />
2623
2624    <!-- @SystemApi @hide
2625         Allows an application to use reserved disk space.
2626         <p>Not for use by third-party applications.  Should only be requested by
2627         apps that provide core system functionality, to ensure system stability
2628         when disk is otherwise completely full.
2629    -->
2630    <permission android:name="android.permission.USE_RESERVED_DISK"
2631        android:protectionLevel="signature|privileged" />
2632
2633    <!-- ================================== -->
2634    <!-- Permissions for screenlock         -->
2635    <!-- ================================== -->
2636    <eat-comment />
2637
2638    <!-- Allows applications to disable the keyguard if it is not secure.
2639         <p>Protection level: normal
2640    -->
2641    <permission android:name="android.permission.DISABLE_KEYGUARD"
2642        android:description="@string/permdesc_disableKeyguard"
2643        android:label="@string/permlab_disableKeyguard"
2644        android:protectionLevel="normal" />
2645
2646    <!-- Allows an application to request the screen lock complexity and prompt users to update the
2647     screen lock to a certain complexity level.
2648     <p>Protection level: normal
2649    -->
2650    <permission android:name="android.permission.REQUEST_PASSWORD_COMPLEXITY"
2651                android:label="@string/permlab_requestPasswordComplexity"
2652                android:description="@string/permdesc_requestPasswordComplexity"
2653                android:protectionLevel="normal" />
2654
2655    <!-- ================================== -->
2656    <!-- Permissions to access other installed applications  -->
2657    <!-- ================================== -->
2658    <eat-comment />
2659
2660    <!-- @deprecated No longer enforced. -->
2661    <permission android:name="android.permission.GET_TASKS"
2662        android:label="@string/permlab_getTasks"
2663        android:description="@string/permdesc_getTasks"
2664        android:protectionLevel="normal" />
2665
2666    <!-- New version of GET_TASKS that apps can request, since GET_TASKS doesn't really
2667         give access to task information.  We need this new one because there are
2668         many existing apps that use add libraries and such that have validation
2669         code to ensure the app has requested the GET_TASKS permission by seeing
2670         if it has been granted the permission...  if it hasn't, it kills the app
2671         with a message about being upset.  So we need to have it continue to look
2672         like the app is getting that permission, even though it will never be
2673         checked, and new privileged apps can now request this one for real access.
2674         @hide
2675         @SystemApi -->
2676    <permission android:name="android.permission.REAL_GET_TASKS"
2677        android:protectionLevel="signature|privileged" />
2678
2679    <!-- @TestApi Allows an application to start a task from a ActivityManager#RecentTaskInfo.
2680         @hide -->
2681    <permission android:name="android.permission.START_TASKS_FROM_RECENTS"
2682        android:protectionLevel="signature|privileged|recents" />
2683
2684    <!-- @SystemApi @hide Allows an application to call APIs that allow it to do interactions
2685         across the users on the device, using singleton services and
2686         user-targeted broadcasts.  This permission is not available to
2687         third party applications. -->
2688    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
2689        android:protectionLevel="signature|privileged|development" />
2690
2691    <!-- @SystemApi Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
2692         that removes restrictions on where broadcasts can be sent and allows other
2693         types of interactions
2694         @hide -->
2695    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
2696        android:protectionLevel="signature|installer" />
2697    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
2698
2699    <!-- Allows interaction across profiles in the same profile group. -->
2700    <permission android:name="android.permission.INTERACT_ACROSS_PROFILES"
2701        android:protectionLevel="signature|appop" />
2702
2703    <!-- Allows configuring apps to have the INTERACT_ACROSS_PROFILES permission so that they can
2704         interact across profiles in the same profile group.
2705         @hide -->
2706    <permission android:name="android.permission.CONFIGURE_INTERACT_ACROSS_PROFILES"
2707        android:protectionLevel="signature" />
2708
2709    <!-- @SystemApi @hide Allows an application to call APIs that allow it to query and manage
2710         users on the device. This permission is not available to
2711         third party applications. -->
2712    <permission android:name="android.permission.MANAGE_USERS"
2713        android:protectionLevel="signature|privileged" />
2714
2715    <!-- @SystemApi @hide Allows an application to create, remove users and get the list of
2716         users on the device. Applications holding this permission can create users (including
2717         normal, restricted, guest, managed, and demo users) and can optionally endow them with the
2718         ephemeral property. For creating users with other kinds of properties,
2719         {@link android.Manifest.permission#MANAGE_USERS} is needed.
2720         This permission is not available to third party applications. -->
2721    <permission android:name="android.permission.CREATE_USERS"
2722        android:protectionLevel="signature" />
2723
2724    <!-- Allows an application to access data blobs across users. -->
2725    <permission android:name="android.permission.ACCESS_BLOBS_ACROSS_USERS"
2726        android:protectionLevel="signature|privileged|development|role" />
2727
2728    <!-- @hide Allows an application to set the profile owners and the device owner.
2729         This permission is not available to third party applications.-->
2730    <permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"
2731        android:protectionLevel="signature"
2732        android:label="@string/permlab_manageProfileAndDeviceOwners"
2733        android:description="@string/permdesc_manageProfileAndDeviceOwners" />
2734
2735    <!-- @TestApi @hide Allows an application to reset the record of previous system update freeze
2736         periods. -->
2737    <permission android:name="android.permission.CLEAR_FREEZE_PERIOD"
2738                android:protectionLevel="signature" />
2739
2740    <!-- @TestApi @hide Allows an application to force available DevicePolicyManager logs to
2741         DPC. -->
2742    <permission android:name="android.permission.FORCE_DEVICE_POLICY_MANAGER_LOGS"
2743                android:protectionLevel="signature" />
2744
2745    <!-- Allows an application to get full detailed information about
2746         recently running tasks, with full fidelity to the real state.
2747         @hide -->
2748    <permission android:name="android.permission.GET_DETAILED_TASKS"
2749        android:protectionLevel="signature" />
2750
2751    <!-- Allows an application to change the Z-order of tasks.
2752         <p>Protection level: normal
2753    -->
2754    <permission android:name="android.permission.REORDER_TASKS"
2755        android:label="@string/permlab_reorderTasks"
2756        android:description="@string/permdesc_reorderTasks"
2757        android:protectionLevel="normal" />
2758
2759    <!-- @SystemApi @TestApi @hide Allows an application to change to remove/kill tasks -->
2760    <permission android:name="android.permission.REMOVE_TASKS"
2761        android:protectionLevel="signature|documenter|recents" />
2762
2763    <!-- @deprecated Use MANAGE_ACTIVITY_TASKS instead.
2764         @SystemApi @TestApi @hide Allows an application to create/manage/remove stacks -->
2765    <permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"
2766        android:protectionLevel="signature" />
2767
2768    <!-- @SystemApi @TestApi @hide Allows an application to create/manage/remove tasks -->
2769    <permission android:name="android.permission.MANAGE_ACTIVITY_TASKS"
2770        android:protectionLevel="signature|recents" />
2771
2772    <!-- @SystemApi @TestApi @hide Allows an application to embed other activities -->
2773    <permission android:name="android.permission.ACTIVITY_EMBEDDING"
2774                android:protectionLevel="signature|privileged" />
2775
2776    <!-- Allows an application to start any activity, regardless of permission
2777         protection or exported state.
2778         @hide -->
2779    <permission android:name="android.permission.START_ANY_ACTIVITY"
2780        android:protectionLevel="signature" />
2781
2782    <!-- @SystemApi @hide Allows an application to start activities from background -->
2783    <permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND"
2784        android:protectionLevel="signature|privileged|vendorPrivileged|oem|verifier" />
2785
2786    <!-- Allows an application to start foreground services from the background at any time.
2787         <em>This permission is not for use by third-party applications</em>,
2788         with the only exception being if the app is the default SMS app.
2789         Otherwise, it's only usable by privileged apps, app verifier app, and apps with
2790         any of the EMERGENCY or SYSTEM GALLERY roles.
2791         -->
2792    <permission android:name="android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND"
2793                android:protectionLevel="signature|privileged|vendorPrivileged|oem|verifier|role"/>
2794
2795    <!-- @SystemApi Must be required by activities that handle the intent action
2796         {@link Intent#ACTION_SEND_SHOW_SUSPENDED_APP_DETAILS}. This is for use by apps that
2797         hold {@link Manifest.permission#SUSPEND_APPS} to interact with the system.
2798         <p>Not for use by third-party applications.
2799         @hide -->
2800    <permission android:name="android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS"
2801                android:protectionLevel="signature" />
2802    <uses-permission android:name="android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS" />
2803
2804    <!-- Allows an application to start an activity as another app, provided that app has been
2805         granted a permissionToken from the ActivityManagerService.
2806         @hide -->
2807    <permission android:name="android.permission.START_ACTIVITY_AS_CALLER"
2808        android:protectionLevel="signature" />
2809
2810    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
2811        API is no longer supported. -->
2812    <permission android:name="android.permission.RESTART_PACKAGES"
2813        android:label="@string/permlab_killBackgroundProcesses"
2814        android:description="@string/permdesc_killBackgroundProcesses"
2815        android:protectionLevel="normal" />
2816
2817    <!-- Allows an application to call
2818        {@link android.app.ActivityManager#killBackgroundProcesses}.
2819         <p>Protection level: normal
2820    -->
2821    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
2822        android:label="@string/permlab_killBackgroundProcesses"
2823        android:description="@string/permdesc_killBackgroundProcesses"
2824        android:protectionLevel="normal" />
2825
2826    <!-- @SystemApi @hide Allows an application to query process states and current
2827         OOM adjustment scores.
2828         <p>Not for use by third-party applications. -->
2829    <permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE"
2830        android:protectionLevel="signature|privileged|development" />
2831
2832    <!-- Allows use of PendingIntent.getIntent(), .
2833         @hide @SystemApi(client=android.annotation.SystemApi.Client.MODULE_LIBRARIES)
2834         -->
2835    <permission android:name="android.permission.GET_INTENT_SENDER_INTENT"
2836        android:protectionLevel="signature" />
2837
2838    <!-- ================================== -->
2839    <!-- Permissions affecting the display of other applications  -->
2840    <!-- ================================== -->
2841    <eat-comment />
2842
2843    <!-- Allows an app to create windows using the type
2844         {@link android.view.WindowManager.LayoutParams#TYPE_APPLICATION_OVERLAY},
2845         shown on top of all other apps.  Very few apps
2846         should use this permission; these windows are intended for
2847         system-level interaction with the user.
2848
2849         <p class="note"><strong>Note:</strong> If the app
2850         targets API level 23 or higher, the app user must explicitly grant
2851         this permission to the app through a permission management screen. The app requests
2852         the user's approval by sending an intent with action
2853         {@link android.provider.Settings#ACTION_MANAGE_OVERLAY_PERMISSION}.
2854         The app can check whether it has this authorization by calling
2855         {@link android.provider.Settings#canDrawOverlays
2856         Settings.canDrawOverlays()}.
2857         <p>Protection level: signature|setup|appop|installer|pre23|development -->
2858    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
2859        android:label="@string/permlab_systemAlertWindow"
2860        android:description="@string/permdesc_systemAlertWindow"
2861        android:protectionLevel="signature|setup|appop|installer|pre23|development" />
2862
2863    <!-- @SystemApi @hide Allows an application to create windows using the type
2864         {@link android.view.WindowManager.LayoutParams#TYPE_APPLICATION_OVERLAY},
2865         shown on top of all other apps.
2866
2867         Allows an application to use
2868         {@link android.view.WindowManager.LayoutsParams#setSystemApplicationOverlay(boolean)}
2869         to create overlays that will stay visible, even if another window is requesting overlays to
2870         be hidden through {@link android.view.Window#setHideOverlayWindows(boolean)}.
2871
2872         <p>Not for use by third-party applications. -->
2873    <permission android:name="android.permission.SYSTEM_APPLICATION_OVERLAY"
2874                android:protectionLevel="signature|recents|role"/>
2875
2876    <!-- @deprecated Use {@link android.Manifest.permission#REQUEST_COMPANION_RUN_IN_BACKGROUND}
2877         @hide
2878    -->
2879    <permission android:name="android.permission.RUN_IN_BACKGROUND"
2880        android:label="@string/permlab_runInBackground"
2881        android:description="@string/permdesc_runInBackground"
2882        android:protectionLevel="signature" />
2883
2884    <!-- @deprecated Use
2885        {@link android.Manifest.permission#REQUEST_COMPANION_USE_DATA_IN_BACKGROUND}
2886         @hide
2887    -->
2888    <permission android:name="android.permission.USE_DATA_IN_BACKGROUND"
2889        android:label="@string/permlab_useDataInBackground"
2890        android:description="@string/permdesc_useDataInBackground"
2891        android:protectionLevel="signature" />
2892
2893    <!-- @hide Allows an application to set display offsets for the screen.
2894         This permission is not available to third party applications. -->
2895    <permission android:name="android.permission.SET_DISPLAY_OFFSET"
2896        android:protectionLevel="signature|privileged" />
2897
2898    <!-- Allows a companion app to run in the background. This permission implies
2899         {@link android.Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND},
2900         and allows to start a foreground service from the background.
2901         If an app does not have to run in the background, but only needs to start a foreground
2902         service from the background, consider using
2903         {@link android.Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND},
2904         which is less powerful.
2905         <p>Protection level: normal
2906    -->
2907    <permission android:name="android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND"
2908                android:label="@string/permlab_runInBackground"
2909                android:description="@string/permdesc_runInBackground"
2910                android:protectionLevel="normal" />
2911
2912    <!-- Allows a companion app to start a foreground service from the background.
2913         {@see android.Manifest.permission#REQUEST_COMPANION_RUN_IN_BACKGROUND}
2914         <p>Protection level: normal
2915         -->
2916    <permission android:name="android.permission.REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND"
2917        android:protectionLevel="normal"/>
2918
2919    <!-- Allows a companion app to use data in the background.
2920         <p>Protection level: normal
2921    -->
2922    <permission android:name="android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND"
2923                android:label="@string/permlab_useDataInBackground"
2924                android:description="@string/permdesc_useDataInBackground"
2925                android:protectionLevel="normal" />
2926
2927    <!-- Allows app to request to be associated with a device via
2928         {@link android.companion.CompanionDeviceManager}
2929         as a "watch"
2930         <p>Protection level: normal
2931     -->
2932    <permission android:name="android.permission.REQUEST_COMPANION_PROFILE_WATCH"
2933                android:protectionLevel="normal" />
2934
2935    <!-- Allows a companion app to associate to Wi-Fi.
2936         <p>Only for use by a single pre-approved app.
2937         @hide
2938         @SystemApi
2939    -->
2940    <permission android:name="android.permission.COMPANION_APPROVE_WIFI_CONNECTIONS"
2941                android:protectionLevel="signature|privileged" />
2942
2943    <!-- Allows an app to read and listen to projection state.
2944         @hide
2945         @SystemApi
2946    -->
2947    <permission android:name="android.permission.READ_PROJECTION_STATE"
2948                android:protectionLevel="signature" />
2949
2950    <!-- Allows an app to set and release automotive projection.
2951         <p>Once permissions can be granted via role-only, this needs to be changed to
2952          protectionLevel="role" and added to the SYSTEM_AUTOMOTIVE_PROJECTION role.
2953         @hide
2954         @SystemApi
2955    -->
2956    <permission android:name="android.permission.TOGGLE_AUTOMOTIVE_PROJECTION"
2957                android:protectionLevel="signature|privileged" />
2958
2959    <!-- Allows an app to prevent non-system-overlay windows from being drawn on top of it -->
2960    <permission android:name="android.permission.HIDE_OVERLAY_WINDOWS"
2961                android:protectionLevel="normal" />
2962
2963    <!-- ================================== -->
2964    <!-- Permissions affecting the system wallpaper -->
2965    <!-- ================================== -->
2966    <eat-comment />
2967
2968    <!-- Allows applications to set the wallpaper.
2969         <p>Protection level: normal
2970     -->
2971    <permission android:name="android.permission.SET_WALLPAPER"
2972        android:label="@string/permlab_setWallpaper"
2973        android:description="@string/permdesc_setWallpaper"
2974        android:protectionLevel="normal" />
2975
2976    <!-- Allows applications to set the wallpaper hints.
2977         <p>Protection level: normal
2978    -->
2979    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
2980        android:label="@string/permlab_setWallpaperHints"
2981        android:description="@string/permdesc_setWallpaperHints"
2982        android:protectionLevel="normal" />
2983
2984    <!-- Allow the app to read the system wallpaper image without
2985        holding the READ_EXTERNAL_STORAGE permission.
2986        <p>Not for use by third-party applications.
2987        @hide
2988        @SystemApi
2989    -->
2990    <permission android:name="android.permission.READ_WALLPAPER_INTERNAL"
2991        android:protectionLevel="signature|privileged" />
2992
2993    <!-- ===================================================== -->
2994    <!-- Permissions for changing the system clock / time zone -->
2995    <!-- ===================================================== -->
2996    <eat-comment />
2997
2998    <!-- Allows applications to set the system time directly.
2999         <p>Not for use by third-party applications. -->
3000    <permission android:name="android.permission.SET_TIME"
3001        android:protectionLevel="signature|privileged" />
3002
3003    <!-- Allows applications to set the system time zone directly.
3004         <p>Not for use by third-party applications.
3005    -->
3006    <permission android:name="android.permission.SET_TIME_ZONE"
3007        android:label="@string/permlab_setTimeZone"
3008        android:description="@string/permdesc_setTimeZone"
3009        android:protectionLevel="signature|privileged" />
3010
3011    <!-- Allows telephony to suggest the time / time zone.
3012         <p>Not for use by third-party applications.
3013         @hide
3014     -->
3015    <permission android:name="android.permission.SUGGEST_TELEPHONY_TIME_AND_ZONE"
3016        android:protectionLevel="signature" />
3017
3018    <!-- Allows applications like settings to suggest the user's manually chosen time / time zone.
3019         <p>Not for use by third-party applications.
3020         @hide
3021    -->
3022    <permission android:name="android.permission.SUGGEST_MANUAL_TIME_AND_ZONE"
3023        android:protectionLevel="signature" />
3024
3025    <!-- Allows system clock time suggestions from an external clock / time source to be made.
3026         The nature of "external" could be highly form-factor specific. Example, times
3027         obtained via the VHAL for Android Auto OS.
3028         <p>Not for use by third-party applications.
3029         @SystemApi @hide
3030    -->
3031    <permission android:name="android.permission.SUGGEST_EXTERNAL_TIME"
3032        android:protectionLevel="signature|privileged" />
3033
3034    <!-- Allows applications like settings to manage configuration associated with automatic time
3035         and time zone detection.
3036         <p>Not for use by third-party applications.
3037         @SystemApi @hide
3038    -->
3039    <permission android:name="android.permission.MANAGE_TIME_AND_ZONE_DETECTION"
3040        android:protectionLevel="signature|privileged" />
3041
3042    <!-- ==================================================== -->
3043    <!-- Permissions related to changing status bar   -->
3044    <!-- ==================================================== -->
3045    <eat-comment />
3046
3047    <!-- Allows an application to expand or collapse the status bar.
3048         <p>Protection level: normal
3049    -->
3050    <permission android:name="android.permission.EXPAND_STATUS_BAR"
3051        android:label="@string/permlab_expandStatusBar"
3052        android:description="@string/permdesc_expandStatusBar"
3053        android:protectionLevel="normal" />
3054
3055    <!-- ============================================================== -->
3056    <!-- Permissions related to adding/removing shortcuts from Launcher -->
3057    <!-- ============================================================== -->
3058    <eat-comment />
3059
3060    <!-- Allows an application to install a shortcut in Launcher.
3061         <p>In Android O (API level 26) and higher, the <code>INSTALL_SHORTCUT</code> broadcast no
3062         longer has any effect on your app because it's a private, implicit
3063         broadcast. Instead, you should create an app shortcut by using the
3064         {@link android.content.pm.ShortcutManager#requestPinShortcut requestPinShortcut()}
3065         method from the {@link android.content.pm.ShortcutManager} class.
3066         <p>Protection level: normal
3067    -->
3068    <permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
3069        android:label="@string/permlab_install_shortcut"
3070        android:description="@string/permdesc_install_shortcut"
3071        android:protectionLevel="normal"/>
3072
3073    <!-- <p class="caution"><strong>Don't use this permission in your app.</strong><br>This
3074         permission is no longer supported.
3075    -->
3076    <permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"
3077        android:label="@string/permlab_uninstall_shortcut"
3078        android:description="@string/permdesc_uninstall_shortcut"
3079        android:protectionLevel="normal"/>
3080
3081    <!-- ==================================================== -->
3082    <!-- Permissions related to accessing sync settings   -->
3083    <!-- ==================================================== -->
3084    <eat-comment />
3085
3086    <!-- Allows applications to read the sync settings.
3087         <p>Protection level: normal
3088    -->
3089    <permission android:name="android.permission.READ_SYNC_SETTINGS"
3090        android:description="@string/permdesc_readSyncSettings"
3091        android:label="@string/permlab_readSyncSettings"
3092        android:protectionLevel="normal" />
3093
3094    <!-- Allows applications to write the sync settings.
3095         <p>Protection level: normal
3096    -->
3097    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
3098        android:description="@string/permdesc_writeSyncSettings"
3099        android:label="@string/permlab_writeSyncSettings"
3100        android:protectionLevel="normal" />
3101
3102    <!-- Allows applications to read the sync stats.
3103         <p>Protection level: normal
3104    -->
3105    <permission android:name="android.permission.READ_SYNC_STATS"
3106        android:description="@string/permdesc_readSyncStats"
3107        android:label="@string/permlab_readSyncStats"
3108        android:protectionLevel="normal" />
3109
3110    <!-- ============================================ -->
3111    <!-- Permissions for low-level system interaction -->
3112    <!-- ============================================ -->
3113    <eat-comment />
3114
3115    <!-- @SystemApi @hide Change the screen compatibility mode of applications -->
3116    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
3117        android:protectionLevel="signature" />
3118
3119    <!-- Allows an application to modify the current configuration, such
3120         as locale.
3121         <p>Protection level: signature|privileged|development -->
3122    <permission android:name="android.permission.CHANGE_CONFIGURATION"
3123        android:protectionLevel="signature|privileged|development" />
3124
3125    <!-- Allows an application to read or write the system settings.
3126
3127        <p class="note"><strong>Note:</strong> If the app targets API level 23
3128        or higher, the app user
3129        must explicitly grant this permission to the app through a permission management screen.
3130        The app requests the user's approval by sending an intent with action
3131        {@link android.provider.Settings#ACTION_MANAGE_WRITE_SETTINGS}. The app
3132        can check whether it has this authorization by calling {@link
3133        android.provider.Settings.System#canWrite Settings.System.canWrite()}.
3134
3135        <p>Protection level: signature|preinstalled|appop|pre23
3136    -->
3137    <permission android:name="android.permission.WRITE_SETTINGS"
3138        android:label="@string/permlab_writeSettings"
3139        android:description="@string/permdesc_writeSettings"
3140        android:protectionLevel="signature|preinstalled|appop|pre23" />
3141
3142    <!-- Allows an application to modify the Google service map.
3143    <p>Not for use by third-party applications. -->
3144    <permission android:name="android.permission.WRITE_GSERVICES"
3145        android:protectionLevel="signature|privileged" />
3146
3147    <!-- @SystemApi @TestApi @hide Allows an application to modify config settings.
3148    <p>Not for use by third-party applications. -->
3149    <permission android:name="android.permission.WRITE_DEVICE_CONFIG"
3150        android:protectionLevel="signature|verifier|configurator"/>
3151
3152    <!-- @SystemApi @hide Allows an application to read config settings.
3153    <p>Not for use by third-party applications. -->
3154    <permission android:name="android.permission.READ_DEVICE_CONFIG"
3155        android:protectionLevel="signature|preinstalled" />
3156
3157    <!-- @hide Allows an application to monitor {@link android.provider.Settings.Config} access.
3158    <p>Not for use by third-party applications. -->
3159    <permission android:name="android.permission.MONITOR_DEVICE_CONFIG_ACCESS"
3160        android:protectionLevel="signature"/>
3161
3162    <!-- @SystemApi @TestApi Allows an application to call
3163        {@link android.app.ActivityManager#forceStopPackage}.
3164        @hide -->
3165    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
3166        android:protectionLevel="signature|privileged" />
3167
3168    <!-- @SystemApi @hide Allows an application to retrieve the content of the active window
3169         An active window is the window that has fired an accessibility event. -->
3170    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
3171        android:protectionLevel="signature|privileged" />
3172
3173    <!-- Modify the global animation scaling factor.
3174    <p>Not for use by third-party applications. -->
3175    <permission android:name="android.permission.SET_ANIMATION_SCALE"
3176        android:protectionLevel="signature|privileged|development" />
3177
3178    <!-- @deprecated This functionality will be removed in the future; please do
3179         not use. Allow an application to make its activities persistent. -->
3180    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
3181        android:label="@string/permlab_persistentActivity"
3182        android:description="@string/permdesc_persistentActivity"
3183        android:protectionLevel="normal" />
3184
3185    <!-- Allows an application to find out the space used by any package.
3186         <p>Protection level: normal
3187    -->
3188    <permission android:name="android.permission.GET_PACKAGE_SIZE"
3189        android:label="@string/permlab_getPackageSize"
3190        android:description="@string/permdesc_getPackageSize"
3191        android:protectionLevel="normal" />
3192
3193    <!-- @deprecated No longer useful, see
3194         {@link android.content.pm.PackageManager#addPackageToPreferred}
3195         for details. -->
3196    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
3197        android:protectionLevel="signature|installer|verifier" />
3198
3199    <!-- Allows an application to receive the
3200         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
3201         broadcast after the system finishes booting.  If you don't
3202         request this permission, you will not receive the broadcast at
3203         that time.  Though holding this permission does not have any
3204         security implications, it can have a negative impact on the
3205         user experience by increasing the amount of time it takes the
3206         system to start and allowing applications to have themselves
3207         running without the user being aware of them.  As such, you must
3208         explicitly declare your use of this facility to make that visible
3209         to the user.
3210         <p>Protection level: normal
3211    -->
3212    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
3213        android:label="@string/permlab_receiveBootCompleted"
3214        android:description="@string/permdesc_receiveBootCompleted"
3215        android:protectionLevel="normal" />
3216
3217    <!-- Allows an application to broadcast sticky intents.  These are
3218         broadcasts whose data is held by the system after being finished,
3219         so that clients can quickly retrieve that data without having
3220         to wait for the next broadcast.
3221         <p>Protection level: normal
3222    -->
3223    <permission android:name="android.permission.BROADCAST_STICKY"
3224        android:label="@string/permlab_broadcastSticky"
3225        android:description="@string/permdesc_broadcastSticky"
3226        android:protectionLevel="normal" />
3227
3228    <!-- Allows mounting and unmounting file systems for removable storage.
3229    <p>Not for use by third-party applications.-->
3230    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
3231        android:protectionLevel="signature|privileged" />
3232
3233    <!-- Allows formatting file systems for removable storage.
3234    <p>Not for use by third-party applications. -->
3235    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
3236        android:protectionLevel="signature|privileged" />
3237
3238    <!-- @hide -->
3239    <permission android:name="android.permission.STORAGE_INTERNAL"
3240        android:protectionLevel="signature" />
3241
3242    <!-- Allows access to ASEC non-destructive API calls
3243         @hide  -->
3244    <permission android:name="android.permission.ASEC_ACCESS"
3245        android:protectionLevel="signature" />
3246
3247    <!-- Allows creation of ASEC volumes
3248         @hide  -->
3249    <permission android:name="android.permission.ASEC_CREATE"
3250        android:protectionLevel="signature" />
3251
3252    <!-- Allows destruction of ASEC volumes
3253         @hide  -->
3254    <permission android:name="android.permission.ASEC_DESTROY"
3255        android:protectionLevel="signature" />
3256
3257    <!-- Allows mount / unmount of ASEC volumes
3258         @hide  -->
3259    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
3260        android:protectionLevel="signature" />
3261
3262    <!-- Allows rename of ASEC volumes
3263         @hide  -->
3264    <permission android:name="android.permission.ASEC_RENAME"
3265        android:protectionLevel="signature" />
3266
3267    <!-- Allows applications to write the apn settings and read sensitive fields of
3268         an existing apn settings like user and password.
3269    <p>Not for use by third-party applications. -->
3270    <permission android:name="android.permission.WRITE_APN_SETTINGS"
3271        android:protectionLevel="signature|privileged" />
3272
3273    <!-- Allows applications to change network connectivity state.
3274         <p>Protection level: normal
3275    -->
3276    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
3277        android:description="@string/permdesc_changeNetworkState"
3278        android:label="@string/permlab_changeNetworkState"
3279        android:protectionLevel="normal" />
3280
3281    <!-- Allows an application to clear the caches of all installed
3282         applications on the device.
3283         <p>Protection level: signature|privileged
3284    -->
3285    <permission android:name="android.permission.CLEAR_APP_CACHE"
3286        android:protectionLevel="signature|privileged" />
3287
3288    <!-- @SystemApi Allows an application to use any media decoder when decoding for playback
3289         @hide -->
3290    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
3291        android:protectionLevel="signature|privileged" />
3292
3293    <!-- @SystemApi Allows an application to install and/or uninstall CA certificates on
3294         behalf of the user.
3295         @hide -->
3296    <permission android:name="android.permission.MANAGE_CA_CERTIFICATES"
3297        android:protectionLevel="signature|privileged" />
3298
3299    <!-- @SystemApi Allows an application to do certain operations needed for
3300         interacting with the recovery (system update) system.
3301         @hide -->
3302    <permission android:name="android.permission.RECOVERY"
3303        android:protectionLevel="signature|privileged" />
3304
3305    <!-- @SystemApi Allows an application to do certain operations needed for
3306         resume on reboot feature.
3307         @hide -->
3308    <permission android:name="android.permission.BIND_RESUME_ON_REBOOT_SERVICE"
3309        android:protectionLevel="signature" />
3310
3311    <!-- @SystemApi Allows an application to read system update info.
3312         @hide -->
3313    <permission android:name="android.permission.READ_SYSTEM_UPDATE_INFO"
3314        android:protectionLevel="signature|privileged" />
3315
3316    <!-- Allows the system to bind to an application's task services
3317         @hide -->
3318    <permission android:name="android.permission.BIND_JOB_SERVICE"
3319        android:protectionLevel="signature" />
3320    <uses-permission android:name="android.permission.BIND_JOB_SERVICE"/>
3321
3322    <!-- Allows an application to initiate configuration updates
3323         <p>An application requesting this permission is responsible for
3324         verifying the source and integrity of any update before passing
3325         it off to the various individual installer components
3326         @hide -->
3327    <permission android:name="android.permission.UPDATE_CONFIG"
3328        android:protectionLevel="signature|privileged" />
3329
3330    <!-- Allows an application to query the current time zone rules state
3331         on device.
3332         @SystemApi @hide -->
3333    <permission android:name="android.permission.QUERY_TIME_ZONE_RULES"
3334                android:protectionLevel="signature|privileged" />
3335
3336    <!-- Allows a time zone rule updater application to request
3337         the system installs / uninstalls timezone rules.
3338         <p>An application requesting this permission is responsible for
3339         verifying the source and integrity of the update before passing
3340         it off to the installer components.
3341         @SystemApi @hide -->
3342    <permission android:name="android.permission.UPDATE_TIME_ZONE_RULES"
3343        android:protectionLevel="signature|privileged" />
3344
3345    <!-- Must be required by a time zone rule updater application,
3346         to ensure that only the system can trigger it.
3347         @hide -->
3348    <permission android:name="android.permission.TRIGGER_TIME_ZONE_RULES_CHECK"
3349        android:protectionLevel="signature" />
3350    <uses-permission android:name="android.permission.TRIGGER_TIME_ZONE_RULES_CHECK"/>
3351
3352    <!-- Allows the system to reset throttling in shortcut manager.
3353         @hide -->
3354    <permission android:name="android.permission.RESET_SHORTCUT_MANAGER_THROTTLING"
3355        android:protectionLevel="signature" />
3356
3357    <!-- Allows the system to bind to the discovered Network Recommendation Service.
3358         @SystemApi @hide -->
3359    <permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"
3360        android:protectionLevel="signature" />
3361    <uses-permission android:name="android.permission.BIND_NETWORK_RECOMMENDATION_SERVICE"/>
3362
3363    <!-- Allows an application to enable, disable and change priority of
3364         runtime resource overlays.
3365         @hide -->
3366    <permission android:name="android.permission.CHANGE_OVERLAY_PACKAGES"
3367        android:protectionLevel="signature|privileged" />
3368
3369    <!-- Allows an application to set, update and remove the credential management app.
3370         @hide -->
3371    <permission android:name="android.permission.MANAGE_CREDENTIAL_MANAGEMENT_APP"
3372        android:protectionLevel="signature" />
3373
3374    <!-- Allows a font updater application to request that the system installs/uninstalls/updates
3375         font files. @SystemApi @hide -->
3376    <permission android:name="android.permission.UPDATE_FONTS"
3377        android:protectionLevel="signature|privileged" />
3378
3379    <!-- ========================================= -->
3380    <!-- Permissions for special development tools -->
3381    <!-- ========================================= -->
3382    <eat-comment />
3383
3384    <!-- Allows an application to read or write the secure system settings.
3385    <p>Not for use by third-party applications. -->
3386    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
3387        android:protectionLevel="signature|privileged|development" />
3388
3389    <!-- Allows an application to retrieve state dump information from system services.
3390    <p>Not for use by third-party applications. -->
3391    <permission android:name="android.permission.DUMP"
3392        android:protectionLevel="signature|privileged|development" />
3393
3394    <!-- Allows an application to start tracing for InputMethod and WindowManager.
3395    <p>Not for use by third-party applications.
3396    @hide -->
3397    <permission android:name="android.permission.CONTROL_UI_TRACING"
3398        android:protectionLevel="signature|privileged|development" />
3399
3400    <!-- Allows an application to read the low-level system log files.
3401    <p>Not for use by third-party applications, because
3402    Log entries can contain the user's private information. -->
3403    <permission android:name="android.permission.READ_LOGS"
3404        android:protectionLevel="signature|privileged|development" />
3405
3406    <!-- Configure an application for debugging.
3407    <p>Not for use by third-party applications. -->
3408    <permission android:name="android.permission.SET_DEBUG_APP"
3409        android:protectionLevel="signature|privileged|development" />
3410
3411    <!-- Allows an application to set the maximum number of (not needed)
3412         application processes that can be running.
3413         <p>Not for use by third-party applications. -->
3414    <permission android:name="android.permission.SET_PROCESS_LIMIT"
3415        android:protectionLevel="signature|privileged|development" />
3416
3417    <!-- Allows an application to control whether activities are immediately
3418         finished when put in the background.
3419         <p>Not for use by third-party applications. -->
3420    <permission android:name="android.permission.SET_ALWAYS_FINISH"
3421        android:protectionLevel="signature|privileged|development" />
3422
3423    <!-- Allow an application to request that a signal be sent to all persistent processes.
3424    <p>Not for use by third-party applications. -->
3425    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
3426        android:protectionLevel="signature|privileged|development" />
3427
3428    <!-- @hide @SystemApi @TestApi
3429         Allow an application to approve incident and bug reports to be
3430         shared off-device.  There can be only one application installed on the
3431         device with this permission, and since this is a privileged permission, it
3432         must be in priv-app.
3433        <p>Not for use by third-party applications. -->
3434    <permission android:name="android.permission.APPROVE_INCIDENT_REPORTS"
3435        android:protectionLevel="signature|incidentReportApprover" />
3436
3437    <!-- @hide Allow an application to approve an incident or bug report approval from
3438        the system. -->
3439    <permission android:name="android.permission.REQUEST_INCIDENT_REPORT_APPROVAL"
3440        android:protectionLevel="signature|privileged" />
3441
3442    <!-- ==================================== -->
3443    <!-- Private permissions                  -->
3444    <!-- ==================================== -->
3445    <eat-comment />
3446
3447    <!-- Allows access to the list of accounts in the Accounts Service.
3448         <p>Protection level: signature|privileged -->
3449    <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"
3450        android:protectionLevel="signature|privileged" />
3451
3452    <!-- Allows but does not guarantee access to user passwords at the conclusion of add account
3453    @hide -->
3454    <permission android:name="android.permission.GET_PASSWORD"
3455        android:protectionLevel="signature" />
3456
3457    <!-- Allows applications to RW to diagnostic resources.
3458    <p>Not for use by third-party applications. -->
3459    <permission android:name="android.permission.DIAGNOSTIC"
3460        android:protectionLevel="signature" />
3461
3462    <!-- Allows an application to open, close, or disable the status bar
3463         and its icons.
3464         <p>Not for use by third-party applications. -->
3465    <permission android:name="android.permission.STATUS_BAR"
3466        android:protectionLevel="signature|privileged|recents" />
3467
3468    <!-- Allows an application to trigger bugreport via shell using the bugreport API.
3469        <p>Not for use by third-party applications.
3470        @hide
3471    -->
3472    <permission android:name="android.permission.TRIGGER_SHELL_BUGREPORT"
3473        android:protectionLevel="signature" />
3474
3475    <!-- Allows an application to trigger profcollect report upload via shell.
3476        <p>Not for use by third-party applications.
3477        @hide
3478    -->
3479    <permission android:name="android.permission.TRIGGER_SHELL_PROFCOLLECT_UPLOAD"
3480        android:protectionLevel="signature" />
3481
3482    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
3483        @hide
3484        @SystemApi -->
3485    <permission android:name="android.permission.STATUS_BAR_SERVICE"
3486        android:protectionLevel="signature" />
3487
3488    <!-- Allows an application to bind to third party quick settings tiles.
3489         <p>Should only be requested by the System, should be required by
3490         TileService declarations.-->
3491    <permission android:name="android.permission.BIND_QUICK_SETTINGS_TILE"
3492        android:protectionLevel="signature" />
3493
3494    <!-- Allows SystemUI to request third party controls.
3495         <p>Should only be requested by the System and required by
3496         {@link android.service.controls.ControlsProviderService} declarations.
3497    -->
3498    <permission android:name="android.permission.BIND_CONTROLS"
3499        android:protectionLevel="signature" />
3500
3501    <!-- @SystemApi Allows an application to force a BACK operation on whatever is the
3502         top activity.
3503         <p>Not for use by third-party applications.
3504         @hide
3505    -->
3506    <permission android:name="android.permission.FORCE_BACK"
3507        android:protectionLevel="signature" />
3508
3509    <!-- Allows an application to update device statistics.
3510    <p>Not for use by third-party applications. -->
3511    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
3512        android:protectionLevel="signature|privileged|role" />
3513
3514    <!-- @SystemApi @hide Allows an application to collect application operation statistics.
3515         Not for use by third party apps. -->
3516    <permission android:name="android.permission.GET_APP_OPS_STATS"
3517        android:protectionLevel="signature|privileged|development" />
3518
3519    <!-- @SystemApi Allows an application to update application operation statistics. Not for
3520         use by third party apps.
3521         @hide -->
3522    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
3523        android:protectionLevel="signature|privileged|installer|role" />
3524
3525    <!-- @SystemApi Allows an application to update the user app op restrictions.
3526         Not for use by third party apps.
3527         @hide -->
3528    <permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"
3529        android:protectionLevel="signature|installer" />
3530
3531    <!-- Allows an application to update the user app op modes.
3532         Not for use by third party apps.
3533         @hide -->
3534    <permission android:name="android.permission.MANAGE_APP_OPS_MODES"
3535        android:protectionLevel="signature|installer|verifier" />
3536
3537    <!-- @SystemApi Allows an application to open windows that are for use by parts
3538         of the system user interface.
3539         <p>Not for use by third-party applications.
3540         @hide
3541    -->
3542    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
3543        android:protectionLevel="signature" />
3544
3545    <!-- Allows an application to avoid all toast rate limiting restrictions.
3546         <p>Not for use by third-party applications.
3547         @hide
3548    -->
3549    <permission android:name="android.permission.UNLIMITED_TOASTS"
3550                android:protectionLevel="signature" />
3551    <uses-permission android:name="android.permission.UNLIMITED_TOASTS" />
3552
3553    <!-- @SystemApi Allows an application to use
3554         {@link android.view.WindowManager.LayoutsParams#SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS}
3555         to hide non-system-overlay windows.
3556         <p>Not for use by third-party applications.
3557         @deprecated Use {@link android.Manifest.permission#HIDE_OVERLAY_WINDOWS} instead
3558         @hide
3559    -->
3560    <permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"
3561                android:protectionLevel="signature|preinstalled" />
3562
3563    <!-- @SystemApi Allows an application to manage (create, destroy,
3564         Z-order) application tokens in the window manager.
3565         <p>Not for use by third-party applications.
3566         @hide
3567    -->
3568    <permission android:name="android.permission.MANAGE_APP_TOKENS"
3569        android:protectionLevel="signature" />
3570
3571    <!-- Allows System UI to register listeners for events from Window Manager.
3572         @hide -->
3573    <permission android:name="android.permission.REGISTER_WINDOW_MANAGER_LISTENERS"
3574        android:protectionLevel="signature" />
3575
3576    <!-- @hide Allows the application to temporarily freeze the screen for a
3577         full-screen transition. -->
3578    <permission android:name="android.permission.FREEZE_SCREEN"
3579        android:protectionLevel="signature" />
3580
3581    <!-- @SystemApi Allows an application to inject user events (keys, touch, trackball)
3582         into the event stream and deliver them to ANY window.  Without this
3583         permission, you can only deliver events to windows in your own process.
3584         <p>Not for use by third-party applications.
3585         @hide
3586    -->
3587    <permission android:name="android.permission.INJECT_EVENTS"
3588        android:protectionLevel="signature" />
3589
3590    <!-- @hide Allows an application to register an input filter which filters the stream
3591         of user events (keys, touch, trackball) before they are dispatched to any window. -->
3592    <permission android:name="android.permission.FILTER_EVENTS"
3593        android:protectionLevel="signature" />
3594
3595    <!-- @hide Allows an application to retrieve the window token from the accessibility manager. -->
3596    <permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"
3597        android:protectionLevel="signature" />
3598
3599    <!-- @hide Allows an application to modify accessibility information from another app. -->
3600    <permission android:name="android.permission.MODIFY_ACCESSIBILITY_DATA"
3601                android:protectionLevel="signature" />
3602
3603    <!-- @hide Allows an application to perform accessibility operations (e.g. send events) on
3604         behalf of another package. -->
3605    <permission android:name="android.permission.ACT_AS_PACKAGE_FOR_ACCESSIBILITY"
3606                android:protectionLevel="signature" />
3607
3608    <!-- @hide Allows an application to change the accessibility volume. -->
3609    <permission android:name="android.permission.CHANGE_ACCESSIBILITY_VOLUME"
3610                android:protectionLevel="signature" />
3611
3612    <!-- @hide Allows an application to collect frame statistics -->
3613    <permission android:name="android.permission.FRAME_STATS"
3614         android:protectionLevel="signature" />
3615
3616    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
3617    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
3618        android:protectionLevel="signature" />
3619
3620    <!-- @SystemApi Allows an application to launch detail settings activity of a particular
3621         accessibility service.
3622         <p>Not for use by third-party applications.
3623         @hide -->
3624    <permission android:name="android.permission.OPEN_ACCESSIBILITY_DETAILS_SETTINGS"
3625        android:protectionLevel="signature|installer" />
3626
3627    <!-- @SystemApi Allows an application to watch and control how activities are
3628         started globally in the system.  Only for is in debugging
3629         (usually the monkey command).
3630         <p>Not for use by third-party applications.
3631         @hide
3632    -->
3633    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
3634        android:protectionLevel="signature" />
3635
3636    <!-- @SystemApi Allows an application to call the activity manager shutdown() API
3637         to put the higher-level system there into a shutdown state.
3638         @hide -->
3639    <permission android:name="android.permission.SHUTDOWN"
3640        android:protectionLevel="signature|privileged" />
3641
3642    <!-- @SystemApi Allows an application to tell the activity manager to temporarily
3643         stop application switches, putting it into a special mode that
3644         prevents applications from immediately switching away from some
3645         critical UI such as the home screen.
3646         @hide -->
3647    <permission android:name="android.permission.STOP_APP_SWITCHES"
3648        android:protectionLevel="signature|privileged|recents" />
3649
3650    <!-- @SystemApi Allows an application to retrieve private information about
3651         the current top activity, such as any assist context it can provide.
3652         <p>Not for use by third-party applications.
3653         @hide
3654    -->
3655    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
3656        android:protectionLevel="signature|recents" />
3657
3658    <!-- Allows an application to retrieve the current state of keys and
3659         switches.
3660         <p>Not for use by third-party applications.
3661         @deprecated The API that used this permission has been removed. -->
3662    <permission android:name="android.permission.READ_INPUT_STATE"
3663        android:protectionLevel="signature" />
3664
3665    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
3666         to ensure that only the system can bind to it.
3667         <p>Protection level: signature
3668    -->
3669    <permission android:name="android.permission.BIND_INPUT_METHOD"
3670        android:protectionLevel="signature" />
3671
3672    <!-- Must be required by an {@link android.media.midi.MidiDeviceService},
3673         to ensure that only the system can bind to it.
3674         <p>Protection level: signature
3675    -->
3676    <permission android:name="android.permission.BIND_MIDI_DEVICE_SERVICE"
3677        android:protectionLevel="signature" />
3678
3679    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
3680         to ensure that only the system can bind to it.
3681         <p>Protection level: signature
3682    -->
3683    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
3684        android:protectionLevel="signature" />
3685
3686    <!-- Must be required by a {@link android.printservice.PrintService},
3687         to ensure that only the system can bind to it.
3688         <p>Protection level: signature
3689    -->
3690    <permission android:name="android.permission.BIND_PRINT_SERVICE"
3691        android:protectionLevel="signature" />
3692
3693    <!-- Must be required by a {@link android.printservice.recommendation.RecommendationService},
3694     to ensure that only the system can bind to it.
3695     @hide
3696     @SystemApi
3697     <p>Protection level: signature
3698    -->
3699    <permission android:name="android.permission.BIND_PRINT_RECOMMENDATION_SERVICE"
3700            android:protectionLevel="signature" />
3701
3702    <!-- Allows applications to get the installed and enabled print services.
3703         @hide
3704         @SystemApi
3705         <p>Protection level: signature|preinstalled
3706    -->
3707    <permission android:name="android.permission.READ_PRINT_SERVICES"
3708        android:protectionLevel="signature|preinstalled" />
3709
3710    <!-- Allows applications to get the currently recommended print services for printers.
3711         @hide
3712         @SystemApi
3713         <p>Protection level: signature|preinstalled
3714    -->
3715    <permission android:name="android.permission.READ_PRINT_SERVICE_RECOMMENDATIONS"
3716        android:protectionLevel="signature|preinstalled" />
3717
3718    <!-- Must be required by a {@link android.nfc.cardemulation.HostApduService}
3719         or {@link android.nfc.cardemulation.OffHostApduService} to ensure that only
3720         the system can bind to it.
3721         <p>Protection level: signature
3722    -->
3723    <permission android:name="android.permission.BIND_NFC_SERVICE"
3724        android:protectionLevel="signature" />
3725
3726    <!-- Must be required by a {@link android.service.quickaccesswallet.QuickAccessWalletService}
3727         to ensure that only the system can bind to it.
3728         <p>Protection level: signature
3729    -->
3730    <permission android:name="android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE"
3731                android:protectionLevel="signature" />
3732
3733    <!-- Must be required by the PrintSpooler to ensure that only the system can bind to it.
3734         @hide -->
3735    <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
3736        android:protectionLevel="signature" />
3737
3738    <!-- Must be required by the CompanionDeviceManager to ensure that only the system can bind to it.
3739         @hide -->
3740    <permission android:name="android.permission.BIND_COMPANION_DEVICE_MANAGER_SERVICE"
3741        android:protectionLevel="signature" />
3742
3743    <!-- Must be required by any
3744         {@link android.companion.CompanionDeviceService}s
3745         to ensure that only the system can bind to it. -->
3746    <permission android:name="android.permission.BIND_COMPANION_DEVICE_SERVICE"
3747                android:protectionLevel="signature" />
3748
3749    <!-- @SystemApi Must be required by the RuntimePermissionPresenterService to ensure
3750         that only the system can bind to it.
3751         @hide -->
3752    <permission android:name="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE"
3753        android:protectionLevel="signature" />
3754
3755    <!-- Must be required by a TextService (e.g. SpellCheckerService)
3756         to ensure that only the system can bind to it.
3757         <p>Protection level: signature
3758    -->
3759    <permission android:name="android.permission.BIND_TEXT_SERVICE"
3760        android:protectionLevel="signature" />
3761
3762    <!-- @SystemApi Must be required by a AttentionService
3763         to ensure that only the system can bind to it.
3764         <p>Protection level: signature
3765         @hide
3766    -->
3767    <permission android:name="android.permission.BIND_ATTENTION_SERVICE"
3768                android:protectionLevel="signature" />
3769    <uses-permission android:name="android.permission.BIND_ATTENTION_SERVICE" />
3770
3771    <!-- @SystemApi Must be required by a RotationResolverService
3772         to ensure that only the system can bind to it.
3773         <p>Protection level: signature
3774         @hide
3775    -->
3776    <permission android:name="android.permission.BIND_ROTATION_RESOLVER_SERVICE"
3777        android:protectionLevel="signature" />
3778    <uses-permission android:name="android.permission.BIND_ROTATION_RESOLVER_SERVICE" />
3779
3780    <!-- Must be required by a {@link android.net.VpnService},
3781         to ensure that only the system can bind to it.
3782         <p>Protection level: signature
3783    -->
3784    <permission android:name="android.permission.BIND_VPN_SERVICE"
3785        android:protectionLevel="signature" />
3786
3787    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
3788         to ensure that only the system can bind to it.
3789         <p>Protection level: signature|privileged
3790    -->
3791    <permission android:name="android.permission.BIND_WALLPAPER"
3792        android:protectionLevel="signature|privileged" />
3793
3794    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService},
3795         to ensure that only the system can bind to it.
3796         <p>Protection level: signature
3797    -->
3798    <permission android:name="android.permission.BIND_VOICE_INTERACTION"
3799        android:protectionLevel="signature" />
3800
3801    <!-- @SystemApi Must be required by a {@link android.service.voice.HotwordDetectionService},
3802         to ensure that only the system can bind to it.
3803         <p>Protection level: signature
3804         @hide This is not a third-party API (intended for OEMs and system apps).
3805    -->
3806    <permission android:name="android.permission.BIND_HOTWORD_DETECTION_SERVICE"
3807        android:protectionLevel="signature" />
3808
3809    <!-- @SystemApi Allows an application to manage hotword detection on the device.
3810         <p>Protection level: internal|preinstalled
3811         @hide This is not a third-party API (intended for OEMs and system apps).
3812    -->
3813    <permission android:name="android.permission.MANAGE_HOTWORD_DETECTION"
3814                android:protectionLevel="internal|preinstalled" />
3815
3816    <!-- Must be required by a {@link android.service.autofill.AutofillService},
3817         to ensure that only the system can bind to it.
3818         <p>Protection level: signature
3819    -->
3820    <permission android:name="android.permission.BIND_AUTOFILL_SERVICE"
3821        android:protectionLevel="signature" />
3822
3823   <!-- Alternative version of android.permission.BIND_AUTOFILL_FIELD_CLASSIFICATION_SERVICE.
3824        This permission was renamed during the O previews but it was supported on the final O
3825        release, so we need to carry it over.
3826        <p>Protection level: signature
3827        @hide
3828    -->
3829    <permission android:name="android.permission.BIND_AUTOFILL"
3830        android:protectionLevel="signature" />
3831
3832    <!-- Must be required by an {@link android.service.autofill.AutofillFieldClassificationService}
3833         to ensure that only the system can bind to it.
3834         @hide This is not a third-party API (intended for OEMs and system apps).
3835    -->
3836    <permission android:name="android.permission.BIND_AUTOFILL_FIELD_CLASSIFICATION_SERVICE"
3837                android:protectionLevel="signature" />
3838
3839    <!-- Must be required by an {@link android.service.autofill.InlineSuggestionRenderService}
3840         to ensure that only the system can bind to it.
3841         @hide This is not a third-party API (intended for OEMs and system apps).
3842    -->
3843    <permission android:name="android.permission.BIND_INLINE_SUGGESTION_RENDER_SERVICE"
3844                android:protectionLevel="signature" />
3845
3846    <!-- Must be required by a android.service.textclassifier.TextClassifierService,
3847         to ensure that only the system can bind to it.
3848         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3849         <p>Protection level: signature
3850    -->
3851    <permission android:name="android.permission.BIND_TEXTCLASSIFIER_SERVICE"
3852                android:protectionLevel="signature" />
3853
3854    <!-- Must be required by a android.service.contentcapture.ContentCaptureService,
3855         to ensure that only the system can bind to it.
3856         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3857         <p>Protection level: signature
3858    -->
3859    <permission android:name="android.permission.BIND_CONTENT_CAPTURE_SERVICE"
3860                android:protectionLevel="signature" />
3861
3862    <!-- Must be required by a android.service.translation.TranslationService,
3863         to ensure that only the system can bind to it.
3864         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3865         <p>Protection level: signature
3866     -->
3867    <permission android:name="android.permission.BIND_TRANSLATION_SERVICE"
3868                android:protectionLevel="signature" />
3869
3870    <!-- @SystemApi Allows apps to use ui translation functions.
3871         <p>Protection level: signature|privileged
3872         @hide Not for use by third-party applications.
3873    -->
3874    <permission android:name="android.permission.MANAGE_UI_TRANSLATION"
3875                android:protectionLevel="signature|privileged|role" />
3876
3877    <!-- Must be required by a android.service.contentsuggestions.ContentSuggestionsService,
3878         to ensure that only the system can bind to it.
3879         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3880         <p>Protection level: signature
3881    -->
3882    <permission android:name="android.permission.BIND_CONTENT_SUGGESTIONS_SERVICE"
3883                android:protectionLevel="signature" />
3884
3885    <!-- Must be declared by a android.service.musicrecognition.MusicRecognitionService,
3886         to ensure that only the system can bind to it.
3887         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3888         <p>Protection level: signature
3889    -->
3890    <permission android:name="android.permission.BIND_MUSIC_RECOGNITION_SERVICE"
3891        android:protectionLevel="signature" />
3892
3893    <!-- Must be required by a android.service.autofill.augmented.AugmentedAutofillService,
3894         to ensure that only the system can bind to it.
3895         @SystemApi @hide This is not a third-party API (intended for OEMs and system apps).
3896         <p>Protection level: signature
3897    -->
3898    <permission android:name="android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE"
3899                android:protectionLevel="signature" />
3900
3901    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService} implementation
3902         to enroll its own sound models. This is a more restrictive permission than the higher-level
3903         permission KEYPHRASE_ENROLLMENT_APPLICATION. For the caller to enroll sound models with
3904         this permission, it must hold the permission and be the active VoiceInteractionService in
3905         the system.
3906         {@see Settings.Secure.VOICE_INTERACTION_SERVICE}
3907         @hide -->
3908    <permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"
3909        android:protectionLevel="signature|privileged" />
3910
3911    <!-- Must be required by a keyphrase enrollment application, to enroll sound models. This is
3912         treated as a higher-level permission to MANAGE_VOICE_KEYPHRASES as a caller can enroll
3913         sound models at any time. This permission should be reserved for system enrollment
3914         applications detected by {@link android.hardware.soundtrigger.KeyphraseEnrollmentInfo}
3915         only.
3916         @hide <p>Not for use by third-party applications.</p> -->
3917    <permission android:name="android.permission.KEYPHRASE_ENROLLMENT_APPLICATION"
3918        android:protectionLevel="signature|privileged" />
3919
3920    <!-- Must be required by a {@link com.android.media.remotedisplay.RemoteDisplayProvider},
3921         to ensure that only the system can bind to it.
3922         @hide -->
3923    <permission android:name="android.permission.BIND_REMOTE_DISPLAY"
3924        android:protectionLevel="signature" />
3925
3926    <!-- Must be required by a {@link android.media.tv.TvInputService}
3927         to ensure that only the system can bind to it.
3928         <p>Protection level: signature|privileged
3929    -->
3930    <permission android:name="android.permission.BIND_TV_INPUT"
3931        android:protectionLevel="signature|privileged" />
3932
3933    <!-- @SystemApi
3934         Must be required by a {@link com.android.media.tv.remoteprovider.TvRemoteProvider}
3935         to ensure that only the system can bind to it.
3936         <p>Protection level: signature|privileged
3937         <p>Not for use by third-party applications. </p>
3938         @hide  -->
3939    <permission android:name="android.permission.BIND_TV_REMOTE_SERVICE"
3940        android:protectionLevel="signature|privileged" />
3941
3942    <!-- @SystemApi
3943         Must be required for a virtual remote controller for TV.
3944         <p>Protection level: signature|privileged
3945         <p>Not for use by third-party applications. </p>
3946         @hide  -->
3947    <permission android:name="android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"
3948        android:protectionLevel="signature|privileged" />
3949
3950    <!-- Allows an application to change HDMI CEC active source.
3951         <p>Not for use by third-party applications.
3952         @hide -->
3953    <permission android:name="android.permission.CHANGE_HDMI_CEC_ACTIVE_SOURCE"
3954        android:protectionLevel="signature|privileged" />
3955
3956    <!-- @SystemApi Allows an application to modify parental controls
3957         <p>Not for use by third-party applications.
3958         @hide -->
3959    <permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"
3960        android:protectionLevel="signature|privileged" />
3961
3962    <!-- @SystemApi Allows an application to read TvContentRatingSystemInfo
3963         <p>Not for use by third-party applications.
3964         @hide -->
3965    <permission android:name="android.permission.READ_CONTENT_RATING_SYSTEMS"
3966        android:protectionLevel="signature|privileged" />
3967
3968    <!-- Allows an application to notify TV inputs by sending broadcasts.
3969         <p>Protection level: signature|privileged
3970         <p>Not for use by third-party applications.
3971         @hide @SystemApi -->
3972    <permission android:name="android.permission.NOTIFY_TV_INPUTS"
3973         android:protectionLevel="signature|privileged" />
3974
3975    <!-- This permission is required among systems services when accessing
3976         tuner resource management related APIs or information.
3977         <p>Protection level: signature|privileged|vendorPrivileged
3978         <p>This should only be used by the OEM TvInputService.
3979         @hide -->
3980    <permission android:name="android.permission.TUNER_RESOURCE_ACCESS"
3981         android:protectionLevel="signature|privileged|vendorPrivileged" />
3982
3983    <!-- This permission is required by Media Resource Manager Service when
3984         accessing its overridePid Api.
3985         <p>Protection level: signature
3986         <p>Not for use by third-party applications.
3987         @hide -->
3988    <permission android:name="android.permission.MEDIA_RESOURCE_OVERRIDE_PID"
3989         android:protectionLevel="signature" />
3990    <uses-permission android:name="android.permission.MEDIA_RESOURCE_OVERRIDE_PID" />
3991
3992    <!-- This permission is required by Media Resource Observer Service when
3993         accessing its registerObserver Api.
3994         <p>Protection level: signature|privileged
3995         <p>Not for use by third-party applications.
3996         @hide -->
3997    <permission android:name="android.permission.REGISTER_MEDIA_RESOURCE_OBSERVER"
3998         android:protectionLevel="signature|privileged" />
3999
4000    <!-- Must be required by a {@link android.media.routing.MediaRouteService}
4001         to ensure that only the system can interact with it.
4002         @hide -->
4003    <permission android:name="android.permission.BIND_ROUTE_PROVIDER"
4004        android:protectionLevel="signature" />
4005
4006    <!-- Must be required by device administration receiver, to ensure that only the
4007         system can interact with it.
4008         <p>Protection level: signature
4009    -->
4010    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
4011        android:protectionLevel="signature" />
4012
4013    <!-- @SystemApi Required to add or remove another application as a device admin.
4014         <p>Not for use by third-party applications.
4015         @hide
4016         @removed -->
4017    <permission android:name="android.permission.MANAGE_DEVICE_ADMINS"
4018        android:protectionLevel="signature" />
4019
4020    <!-- @SystemApi Allows an app to reset the device password.
4021         <p>Not for use by third-party applications.
4022         @hide -->
4023    <permission android:name="android.permission.RESET_PASSWORD"
4024        android:protectionLevel="signature|privileged" />
4025
4026    <!-- @SystemApi Allows an app to lock the device.
4027         <p>Not for use by third-party applications.
4028         @hide -->
4029    <permission android:name="android.permission.LOCK_DEVICE"
4030        android:protectionLevel="signature|privileged" />
4031
4032    <!-- @SystemApi Allows low-level access to setting the orientation (actually
4033         rotation) of the screen.
4034         <p>Not for use by third-party applications.
4035         @hide
4036    -->
4037    <permission android:name="android.permission.SET_ORIENTATION"
4038        android:protectionLevel="signature|recents" />
4039
4040    <!-- @SystemApi Allows low-level access to setting the pointer speed.
4041         <p>Not for use by third-party applications.
4042         @hide
4043    -->
4044    <permission android:name="android.permission.SET_POINTER_SPEED"
4045        android:protectionLevel="signature" />
4046
4047    <!-- Allows low-level access to setting input device calibration.
4048         <p>Not for use by normal applications.
4049         @hide -->
4050    <permission android:name="android.permission.SET_INPUT_CALIBRATION"
4051        android:protectionLevel="signature" />
4052
4053    <!-- Allows low-level access to setting the keyboard layout.
4054         <p>Not for use by third-party applications.
4055         @hide -->
4056    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
4057        android:protectionLevel="signature" />
4058
4059    <!-- Allows an app to schedule a prioritized alarm that can be used to perform
4060         background work even when the device is in doze.
4061         <p>Not for use by third-party applications.
4062         @hide
4063         @SystemApi
4064     -->
4065    <permission android:name="android.permission.SCHEDULE_PRIORITIZED_ALARM"
4066                android:protectionLevel="signature|privileged"/>
4067
4068    <!-- Allows applications to use exact alarm APIs.
4069         <p>Exact alarms should only be used for user-facing features.
4070         For more details, see <a
4071         href="{@docRoot}about/versions/12/behavior-changes-12#exact-alarm-permission">
4072         Exact alarm permission</a>.
4073         <p>Apps who hold this permission and target API level 31 or above, always stay in the
4074         {@link android.app.usage.UsageStatsManager#STANDBY_BUCKET_WORKING_SET WORKING_SET} or
4075         lower standby bucket.
4076         Applications targeting API level 30 or below do not need this permission to use
4077         exact alarm APIs.
4078     -->
4079    <permission android:name="android.permission.SCHEDULE_EXACT_ALARM"
4080        android:protectionLevel="normal|appop"/>
4081
4082    <!-- Allows an application to query tablet mode state and monitor changes
4083         in it.
4084         <p>Not for use by third-party applications.
4085         @hide -->
4086    <permission android:name="android.permission.TABLET_MODE"
4087        android:protectionLevel="signature" />
4088
4089    <!-- Allows an application to request installing packages. Apps
4090         targeting APIs greater than 25 must hold this permission in
4091         order to use {@link android.content.Intent#ACTION_INSTALL_PACKAGE}.
4092         <p>Protection level: signature
4093    -->
4094    <permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"
4095        android:label="@string/permlab_requestInstallPackages"
4096        android:description="@string/permdesc_requestInstallPackages"
4097        android:protectionLevel="signature|appop" />
4098
4099    <!-- Allows an application to request deleting packages. Apps
4100         targeting APIs {@link android.os.Build.VERSION_CODES#P} or greater must hold this
4101         permission in order to use {@link android.content.Intent#ACTION_UNINSTALL_PACKAGE} or
4102         {@link android.content.pm.PackageInstaller#uninstall}.
4103         <p>Protection level: normal
4104    -->
4105    <permission android:name="android.permission.REQUEST_DELETE_PACKAGES"
4106        android:label="@string/permlab_requestDeletePackages"
4107        android:description="@string/permdesc_requestDeletePackages"
4108        android:protectionLevel="normal" />
4109
4110    <!-- Allows an application to install packages.
4111    <p>Not for use by third-party applications. -->
4112    <permission android:name="android.permission.INSTALL_PACKAGES"
4113      android:protectionLevel="signature|privileged" />
4114
4115    <!-- @SystemApi Allows an application to install self updates. This is a limited version
4116         of {@link android.Manifest.permission#INSTALL_PACKAGES}.
4117        <p>Not for use by third-party applications.
4118        @hide
4119    -->
4120    <permission android:name="android.permission.INSTALL_SELF_UPDATES"
4121        android:protectionLevel="signature|privileged" />
4122
4123    <!-- @SystemApi Allows an application to install updates. This is a limited version
4124         of {@link android.Manifest.permission#INSTALL_PACKAGES}.
4125        <p>Not for use by third-party applications.
4126        @hide
4127    -->
4128    <permission android:name="android.permission.INSTALL_PACKAGE_UPDATES"
4129        android:protectionLevel="signature|privileged" />
4130
4131    <!-- Allows an application to install existing system packages. This is a limited
4132         version of {@link android.Manifest.permission#INSTALL_PACKAGES}.
4133         <p>Not for use by third-party applications.
4134         TODO(b/80204953): remove this permission once we have a long-term solution.
4135         @hide
4136    -->
4137    <permission android:name="com.android.permission.INSTALL_EXISTING_PACKAGES"
4138        android:protectionLevel="signature|privileged" />
4139
4140    <!-- Allows an application to use the package installer v2 APIs.
4141         <p>The package installer v2 APIs are still a work in progress and we're
4142         currently validating they work in all scenarios.
4143         <p>Not for use by third-party applications.
4144         @hide
4145    -->
4146    <permission android:name="com.android.permission.USE_INSTALLER_V2"
4147        android:protectionLevel="signature|privileged" />
4148
4149    <!-- @TestApi Allows a testOnly application to get installed.
4150        <p>Not for use by third-party applications.
4151        @hide
4152    -->
4153    <permission android:name="android.permission.INSTALL_TEST_ONLY_PACKAGE"
4154                android:protectionLevel="signature" />
4155
4156    <!-- Allows an application to use System Data Loaders.
4157         <p>Not for use by third-party applications.
4158         @hide
4159    -->
4160    <permission android:name="com.android.permission.USE_SYSTEM_DATA_LOADERS"
4161                android:protectionLevel="signature" />
4162
4163    <!-- @SystemApi @TestApi Allows an application to clear user data.
4164         <p>Not for use by third-party applications
4165         @hide
4166    -->
4167    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
4168        android:protectionLevel="signature|installer" />
4169
4170    <!-- @hide Allows an application to get the URI permissions
4171         granted to another application.
4172         <p>Not for use by third-party applications
4173    -->
4174    <permission android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS"
4175        android:protectionLevel="signature" />
4176
4177    <!-- @hide Allows an application to clear the URI permissions
4178         granted to another application.
4179         <p>Not for use by third-party applications
4180    -->
4181    <permission
4182        android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS"
4183        android:protectionLevel="signature" />
4184
4185    <!-- @hide
4186         Allows an application to change the status of Scoped Access Directory requests granted or
4187         rejected by the user.
4188         <p>This permission should <em>only</em> be requested by the platform
4189         settings app.  This permission cannot be granted to third-party apps.
4190         <p>Protection level: signature
4191    -->
4192    <permission
4193         android:name="android.permission.MANAGE_SCOPED_ACCESS_DIRECTORY_PERMISSIONS"
4194         android:protectionLevel="signature" />
4195
4196    <!-- @hide
4197         Allows an application to change the status of a persistable URI permission granted
4198         to another application.
4199         <p>This permission should <em>only</em> be requested by the platform
4200         settings app.  This permission cannot be granted to third-party apps.
4201         <p>Protection level: signature
4202    -->
4203    <permission android:name="android.permission.FORCE_PERSISTABLE_URI_PERMISSIONS"
4204        android:protectionLevel="signature" />
4205
4206    <!-- Old permission for deleting an app's cache files, no longer used,
4207         but signals for us to quietly ignore calls instead of throwing an exception.
4208         <p>Protection level: signature|privileged -->
4209    <permission android:name="android.permission.DELETE_CACHE_FILES"
4210        android:protectionLevel="signature|privileged" />
4211
4212    <!-- Allows an application to delete cache files.
4213         @hide -->
4214    <permission android:name="android.permission.INTERNAL_DELETE_CACHE_FILES"
4215        android:protectionLevel="signature" />
4216
4217    <!-- Allows an application to delete packages.
4218         <p>Not for use by third-party applications.
4219         <p>Starting in {@link android.os.Build.VERSION_CODES#N}, user confirmation is requested
4220         when the application deleting the package is not the same application that installed the
4221         package. -->
4222    <permission android:name="android.permission.DELETE_PACKAGES"
4223        android:protectionLevel="signature|privileged" />
4224
4225    <!-- @SystemApi Allows an application to move location of installed package.
4226         @hide -->
4227    <permission android:name="android.permission.MOVE_PACKAGE"
4228        android:protectionLevel="signature|privileged" />
4229
4230    <!-- @TestApi Allows an application to keep uninstalled packages as apks.
4231         @hide -->
4232    <permission android:name="android.permission.KEEP_UNINSTALLED_PACKAGES"
4233        android:protectionLevel="signature" />
4234
4235    <!-- Allows an application to change whether an application component (other than its own) is
4236         enabled or not.
4237         <p>Not for use by third-party applications. -->
4238    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
4239        android:protectionLevel="signature|privileged" />
4240
4241    <!-- @SystemApi Allows an application to grant specific permissions.
4242         @hide -->
4243    <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"
4244        android:protectionLevel="signature|installer|verifier" />
4245
4246    <!-- @SystemApi Allows an app that has this permission and the permissions to install packages
4247         to request certain runtime permissions to be granted at installation.
4248         @hide -->
4249    <permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"
4250        android:protectionLevel="signature|installer|verifier" />
4251
4252    <!-- @SystemApi Allows an application to revoke specific permissions.
4253        @hide -->
4254    <permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"
4255         android:protectionLevel="signature|installer|verifier" />
4256
4257    <!-- @SystemApi Allows the system to read runtime permission state.
4258        @hide -->
4259    <permission android:name="android.permission.GET_RUNTIME_PERMISSIONS"
4260                android:protectionLevel="signature" />
4261
4262    <!-- @SystemApi Allows the system to restore runtime permission state. This might grant
4263    permissions, hence this is a more scoped, less powerful variant of GRANT_RUNTIME_PERMISSIONS.
4264    Among other restrictions this cannot override user choices.
4265    @hide -->
4266    <permission android:name="android.permission.RESTORE_RUNTIME_PERMISSIONS"
4267                android:protectionLevel="signature" />
4268
4269    <!-- @SystemApi Allows an application to change policy_fixed permissions.
4270    @hide -->
4271    <permission android:name="android.permission.ADJUST_RUNTIME_PERMISSIONS_POLICY"
4272                android:protectionLevel="signature|installer" />
4273
4274    <!-- @SystemApi @TestApi Allows an application to upgrade runtime permissions.
4275    @hide -->
4276    <permission android:name="android.permission.UPGRADE_RUNTIME_PERMISSIONS"
4277                android:protectionLevel="signature" />
4278
4279    <!-- @SystemApi Allows an application to allowlist restricted permissions
4280         on any of the whitelists.
4281    @hide -->
4282    <permission android:name="android.permission.WHITELIST_RESTRICTED_PERMISSIONS"
4283                android:protectionLevel="signature|installer" />
4284
4285    <!-- @SystemApi Allows an application to an exempt an app from having its permission be
4286        auto-revoked when unused for an extended period of time.
4287        @hide -->
4288    <permission android:name="android.permission.WHITELIST_AUTO_REVOKE_PERMISSIONS"
4289        android:protectionLevel="signature|installer" />
4290
4291    <!-- @hide Allows an application to observe permission changes. -->
4292    <permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS"
4293        android:protectionLevel="signature|privileged" />
4294
4295    <!-- @SystemApi Allows an application to start and stop one time permission sessions
4296    @hide -->
4297    <permission android:name="android.permission.MANAGE_ONE_TIME_PERMISSION_SESSIONS"
4298                android:protectionLevel="signature|installer" />
4299
4300    <!-- @SystemApi Allows an application to manage the holders of a role.
4301         @hide -->
4302    <permission android:name="android.permission.MANAGE_ROLE_HOLDERS"
4303                android:protectionLevel="signature|installer" />
4304
4305    <!-- @SystemApi Allows an application to bypass role qualification. This allows switching role
4306         holders to otherwise non eligible holders. Only the shell is allowed to do this, the
4307         qualification for the shell role itself cannot be bypassed, and each role needs to
4308         explicitly allow bypassing qualification in its definition. The bypass state will not be
4309         persisted across reboot.
4310     @hide -->
4311    <permission android:name="android.permission.BYPASS_ROLE_QUALIFICATION"
4312                android:protectionLevel="internal|role" />
4313
4314    <!-- @SystemApi Allows an application to observe role holder changes.
4315         @hide -->
4316    <permission android:name="android.permission.OBSERVE_ROLE_HOLDERS"
4317                android:protectionLevel="signature|installer" />
4318
4319    <!-- Allows an application to manage the companion devices.
4320         @hide -->
4321    <permission android:name="android.permission.MANAGE_COMPANION_DEVICES"
4322                android:protectionLevel="signature" />
4323
4324    <!-- Allows an application to subscribe to notifications about the presence status change
4325         of their associated companion device
4326         -->
4327    <permission android:name="android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE"
4328                android:protectionLevel="normal" />
4329
4330    <!-- Allows an application to create new companion device associations.
4331         @SystemApi
4332         @hide -->
4333    <permission android:name="android.permission.ASSOCIATE_COMPANION_DEVICES"
4334        android:protectionLevel="internal|role" />
4335
4336    <!-- @SystemApi Allows an application to use SurfaceFlinger's low level features.
4337         <p>Not for use by third-party applications.
4338         @hide
4339    -->
4340    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
4341        android:protectionLevel="signature" />
4342
4343    <!-- @SystemApi Allows an application to rotate a surface by arbitrary degree.
4344         This is a sub-feature of ACCESS_SURFACE_FLINGER and can be granted in a more concrete way.
4345         <p>Not for use by third-party applications.
4346         @hide
4347    -->
4348    <permission android:name="android.permission.ROTATE_SURFACE_FLINGER"
4349        android:protectionLevel="signature|recents" />
4350
4351    <!-- Allows an application to take screen shots and more generally
4352         get access to the frame buffer data.
4353         <p>Not for use by third-party applications.
4354          @hide
4355          @removed -->
4356    <permission android:name="android.permission.READ_FRAME_BUFFER"
4357        android:protectionLevel="signature|recents" />
4358
4359    <!-- Allows an application to use InputFlinger's low level features.
4360         @hide -->
4361    <permission android:name="android.permission.ACCESS_INPUT_FLINGER"
4362        android:protectionLevel="signature" />
4363
4364    <!-- Allows an application to disable/enable input devices.
4365         Could be used to prevent unwanted touch events
4366         on a touchscreen, for example during swimming or rain.
4367         @hide -->
4368    <permission android:name="android.permission.DISABLE_INPUT_DEVICE"
4369        android:protectionLevel="signature" />
4370
4371    <!-- Allows an application to configure and connect to Wifi displays
4372         @hide
4373         @SystemApi -->
4374    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
4375        android:protectionLevel="signature" />
4376
4377    <!-- Allows an application to control low-level features of Wifi displays
4378         such as opening an RTSP socket.  This permission should only be used
4379         by the display manager.
4380         @hide -->
4381    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
4382        android:protectionLevel="signature" />
4383
4384    <!-- Allows an application to control the color modes set for displays system-wide.
4385         <p>Not for use by third-party applications.</p>
4386         @hide -->
4387    <permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_MODE"
4388        android:protectionLevel="signature" />
4389
4390    <!-- Allows an application to control the lights on the device.
4391         @hide
4392         @SystemApi
4393         @TestApi -->
4394    <permission android:name="android.permission.CONTROL_DEVICE_LIGHTS"
4395        android:protectionLevel="signature|privileged" />
4396
4397    <!-- Allows an application to control the color saturation of the display.
4398         @hide
4399         @SystemApi -->
4400    <permission android:name="android.permission.CONTROL_DISPLAY_SATURATION"
4401        android:protectionLevel="signature|privileged" />
4402
4403    <!-- Allows an application to control display color transformations.
4404         <p>Not for use by third-party applications.</p>
4405         @hide
4406         @SystemApi -->
4407    <permission android:name="android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"
4408        android:protectionLevel="signature|privileged" />
4409
4410    <!-- Allows an application to collect usage infomation about brightness slider changes.
4411         <p>Not for use by third-party applications.</p>
4412         @hide
4413         @SystemApi
4414         @TestApi -->
4415    <permission android:name="android.permission.BRIGHTNESS_SLIDER_USAGE"
4416        android:protectionLevel="signature|privileged|development" />
4417
4418    <!-- Allows an application to collect ambient light stats.
4419         <p>Not for use by third party applications.</p>
4420         @hide
4421         @SystemApi -->
4422    <permission android:name="android.permission.ACCESS_AMBIENT_LIGHT_STATS"
4423        android:protectionLevel="signature|privileged|development" />
4424
4425    <!-- Allows an application to modify the display brightness configuration
4426         @hide
4427         @SystemApi
4428         @TestApi -->
4429    <permission android:name="android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"
4430        android:protectionLevel="signature|privileged|development" />
4431
4432    <!-- Allows an application to control the system's display brightness
4433         @hide -->
4434    <permission android:name="android.permission.CONTROL_DISPLAY_BRIGHTNESS"
4435        android:protectionLevel="signature" />
4436
4437    <!-- Allows an application to override the display mode requests
4438         so the app requested mode will be selected and user settings and display
4439         policies will be ignored.
4440         @hide
4441         @TestApi -->
4442    <permission android:name="android.permission.OVERRIDE_DISPLAY_MODE_REQUESTS"
4443                android:protectionLevel="signature" />
4444
4445    <!-- Allows an application to modify the refresh rate switching type. This
4446         matches Setting.Secure.MATCH_CONTENT_FRAME_RATE.
4447         @hide
4448         @TestApi -->
4449    <permission android:name="android.permission.MODIFY_REFRESH_RATE_SWITCHING_TYPE"
4450                android:protectionLevel="signature" />
4451
4452    <!-- @SystemApi Allows an application to control VPN.
4453         <p>Not for use by third-party applications.</p>
4454         @hide -->
4455    <permission android:name="android.permission.CONTROL_VPN"
4456        android:protectionLevel="signature|privileged" />
4457    <uses-permission android:name="android.permission.CONTROL_VPN" />
4458
4459    <!-- Allows an application to access and modify always-on VPN configuration.
4460         <p>Not for use by third-party or privileged applications.
4461         @hide -->
4462    <permission android:name="android.permission.CONTROL_ALWAYS_ON_VPN"
4463        android:protectionLevel="signature" />
4464
4465    <!-- @SystemApi Allows an application to capture the audio from tuner input devices types,
4466     such as FM_TUNER.
4467
4468     <p>Not for use by third-party applications.</p>
4469     @hide -->
4470    <permission android:name="android.permission.CAPTURE_TUNER_AUDIO_INPUT"
4471                android:protectionLevel="signature|privileged" />
4472
4473    <!-- Allows an application to capture audio output.
4474         Use the {@code CAPTURE_MEDIA_OUTPUT} permission if only the {@code USAGE_UNKNOWN}),
4475         {@code USAGE_MEDIA}) or {@code USAGE_GAME}) usages are intended to be captured.
4476         <p>Not for use by third-party applications.</p> -->
4477    <permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
4478        android:protectionLevel="signature|privileged|role" />
4479
4480    <!-- @SystemApi Allows an application to capture the audio played by other apps
4481         that have set an allow capture policy of
4482         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_SYSTEM}.
4483
4484         Without this permission, only audio with an allow capture policy of
4485         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_ALL} can be used.
4486
4487         There are strong restriction listed at
4488         {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_SYSTEM}
4489         on what an app can do with the captured audio.
4490
4491         See {@code CAPTURE_AUDIO_OUTPUT} for capturing audio use cases other than media playback.
4492
4493         <p>Not for use by third-party applications.</p>
4494         @hide -->
4495    <permission android:name="android.permission.CAPTURE_MEDIA_OUTPUT"
4496        android:protectionLevel="signature|privileged|role" />
4497
4498    <!-- @SystemApi Allows an application to capture the audio played by other apps
4499        with the {@code USAGE_VOICE_COMMUNICATION} usage.
4500
4501        The application may opt out of capturing by setting an allow capture policy of
4502        {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_NONE}.
4503
4504        There are strong restriction listed at
4505        {@link android.media.AudioAttributes#ALLOW_CAPTURE_BY_SYSTEM}
4506        on what an app can do with the captured audio.
4507
4508        See {@code CAPTURE_AUDIO_OUTPUT} and {@code CAPTURE_MEDIA_OUTPUT} for capturing
4509        audio use cases other than voice communication playback.
4510
4511        <p>Not for use by third-party applications.</p>
4512        @hide -->
4513    <permission android:name="android.permission.CAPTURE_VOICE_COMMUNICATION_OUTPUT"
4514        android:protectionLevel="signature|privileged|role" />
4515
4516    <!-- @SystemApi Allows an application to capture audio for hotword detection.
4517         <p>Not for use by third-party applications.</p>
4518         @hide -->
4519    <permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"
4520        android:protectionLevel="signature|privileged|role" />
4521
4522    <!-- Puts an application in the chain of trust for sound trigger
4523         operations. Being in the chain of trust allows an application to
4524         delegate an identity of a separate entity to the sound trigger system
4525         and vouch for the authenticity of this identity.
4526         <p>Not for use by third-party applications.</p>
4527         @hide -->
4528    <permission android:name="android.permission.SOUNDTRIGGER_DELEGATE_IDENTITY"
4529        android:protectionLevel="signature|privileged" />
4530
4531    <!-- @SystemApi Allows an application to modify audio routing and override policy decisions.
4532         <p>Not for use by third-party applications.</p>
4533         @hide -->
4534    <permission android:name="android.permission.MODIFY_AUDIO_ROUTING"
4535        android:protectionLevel="signature|privileged|role" />
4536
4537    <!-- @TestApi Allows an application to query audio related state.
4538         @hide -->
4539    <permission android:name="android.permission.QUERY_AUDIO_STATE"
4540                android:protectionLevel="signature" />
4541
4542    <!-- Allows an application to modify what effects are applied to all audio
4543         (matching certain criteria) from any application.
4544         <p>Not for use by third-party applications.</p>
4545         @hide -->
4546    <permission android:name="android.permission.MODIFY_DEFAULT_AUDIO_EFFECTS"
4547        android:protectionLevel="signature|privileged" />
4548
4549    <!-- @SystemApi Allows an application to disable system sound effects when the user exits one of
4550         the application's activities.
4551         <p>Not for use by third-party applications.</p>
4552         @hide -->
4553    <permission android:name="android.permission.DISABLE_SYSTEM_SOUND_EFFECTS"
4554        android:protectionLevel="signature|privileged" />
4555
4556    <!-- @SystemApi Allows an application to provide remote displays.
4557         <p>Not for use by third-party applications.</p>
4558         @hide -->
4559    <permission android:name="android.permission.REMOTE_DISPLAY_PROVIDER"
4560        android:protectionLevel="signature|privileged" />
4561
4562    <!-- Allows an application to capture video output.
4563         <p>Not for use by third-party applications.</p>
4564          @hide
4565          @removed -->
4566    <permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"
4567        android:protectionLevel="signature" />
4568
4569    <!-- Allows an application to capture secure video output.
4570         <p>Not for use by third-party applications.</p>
4571          @hide
4572          @removed -->
4573    <permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"
4574        android:protectionLevel="signature" />
4575
4576    <!-- Allows an application to know what content is playing and control its playback.
4577         <p>Not for use by third-party applications due to privacy of media consumption</p>  -->
4578    <permission android:name="android.permission.MEDIA_CONTENT_CONTROL"
4579        android:protectionLevel="signature|privileged" />
4580
4581    <!-- @SystemApi @hide Allows an application to set the volume key long-press listener.
4582         <p>When it's set, the application will receive the volume key long-press event
4583         instead of changing volume.</p>
4584         <p>Not for use by third-party applications</p> -->
4585    <permission android:name="android.permission.SET_VOLUME_KEY_LONG_PRESS_LISTENER"
4586        android:protectionLevel="signature|privileged|development" />
4587
4588    <!-- @SystemApi @hide Allows an application to set media key event listener.
4589         <p>When it's set, the application will receive the media key event before
4590         any other media sessions. If the event is handled by the listener, other sessions
4591         cannot get the event.</p>
4592         <p>Not for use by third-party applications</p> -->
4593    <permission android:name="android.permission.SET_MEDIA_KEY_LISTENER"
4594        android:protectionLevel="signature|privileged|development" />
4595
4596    <!-- @SystemApi Required to be able to disable the device (very dangerous!).
4597         <p>Not for use by third-party applications.
4598         @hide
4599    -->
4600    <permission android:name="android.permission.BRICK"
4601        android:protectionLevel="signature" />
4602
4603    <!-- Required to be able to reboot the device.
4604    <p>Not for use by third-party applications. -->
4605    <permission android:name="android.permission.REBOOT"
4606        android:protectionLevel="signature|privileged" />
4607
4608   <!-- @SystemApi Allows low-level access to power management.
4609        <p>Not for use by third-party applications.
4610        @hide
4611    -->
4612   <permission android:name="android.permission.DEVICE_POWER"
4613        android:protectionLevel="signature" />
4614
4615    <!-- Allows toggling battery saver on the system.
4616         Superseded by DEVICE_POWER permission. @hide @SystemApi
4617    -->
4618    <permission android:name="android.permission.POWER_SAVER"
4619        android:protectionLevel="signature|privileged" />
4620
4621    <!-- Allows providing the system with battery predictions.
4622         Superseded by DEVICE_POWER permission. @hide @SystemApi
4623    -->
4624    <permission android:name="android.permission.BATTERY_PREDICTION"
4625        android:protectionLevel="signature|privileged" />
4626
4627   <!-- Allows access to the PowerManager.userActivity function.
4628   <p>Not for use by third-party applications. @hide @SystemApi -->
4629    <permission android:name="android.permission.USER_ACTIVITY"
4630        android:protectionLevel="signature|privileged" />
4631
4632   <!-- @hide Allows low-level access to tun tap driver -->
4633    <permission android:name="android.permission.NET_TUNNELING"
4634        android:protectionLevel="signature" />
4635
4636    <!-- Run as a manufacturer test application, running as the root user.
4637         Only available when the device is running in manufacturer test mode.
4638         <p>Not for use by third-party applications.
4639    -->
4640    <permission android:name="android.permission.FACTORY_TEST"
4641        android:protectionLevel="signature" />
4642
4643    <!-- @hide @TestApi @SystemApi Allows an application to broadcast the intent {@link
4644         android.content.Intent#ACTION_CLOSE_SYSTEM_DIALOGS}.
4645         <p>Not for use by third-party applications.
4646    -->
4647    <permission android:name="android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS"
4648        android:protectionLevel="signature|privileged|recents" />
4649    <uses-permission android:name="android.permission.BROADCAST_CLOSE_SYSTEM_DIALOGS" />
4650
4651    <!-- Allows an application to broadcast a notification that an application
4652         package has been removed.
4653         <p>Not for use by third-party applications.
4654    -->
4655    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
4656        android:protectionLevel="signature" />
4657
4658    <!-- Allows an application to broadcast an SMS receipt notification.
4659         <p>Not for use by third-party applications.
4660    -->
4661    <permission android:name="android.permission.BROADCAST_SMS"
4662        android:protectionLevel="signature" />
4663
4664    <!-- Allows an application to broadcast a WAP PUSH receipt notification.
4665         <p>Not for use by third-party applications.
4666    -->
4667    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
4668        android:protectionLevel="signature" />
4669
4670    <!-- @SystemApi Allows an application to broadcast privileged networking requests.
4671         <p>Not for use by third-party applications.
4672         @hide
4673         @deprecated Use {@link android.Manifest.permission#REQUEST_NETWORK_SCORES} instead
4674    -->
4675    <permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"
4676        android:protectionLevel="signature|privileged" />
4677
4678    <!-- Not for use by third-party applications. -->
4679    <permission android:name="android.permission.MASTER_CLEAR"
4680        android:protectionLevel="signature|privileged" />
4681
4682    <!-- Allows an application to call any phone number, including emergency
4683         numbers, without going through the Dialer user interface for the user
4684         to confirm the call being placed.
4685         <p>Not for use by third-party applications. -->
4686    <permission android:name="android.permission.CALL_PRIVILEGED"
4687        android:protectionLevel="signature|privileged" />
4688
4689    <!-- @SystemApi Allows an application to perform CDMA OTA provisioning @hide -->
4690    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
4691        android:protectionLevel="signature|privileged" />
4692
4693    <!-- @SystemApi Allows an application to perform SIM Activation @hide -->
4694    <permission android:name="android.permission.PERFORM_SIM_ACTIVATION"
4695        android:protectionLevel="signature|privileged" />
4696
4697    <!-- Allows enabling/disabling location update notifications from
4698         the radio.
4699         <p>Not for use by third-party applications. -->
4700    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
4701        android:protectionLevel="signature|privileged" />
4702
4703    <!-- Allows read/write access to the "properties" table in the checkin
4704         database, to change values that get uploaded.
4705         <p>Not for use by third-party applications. -->
4706    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
4707        android:protectionLevel="signature|privileged" />
4708
4709    <!-- Allows an application to collect component usage
4710         statistics
4711         <p>Declaring the permission implies intention to use the API and the user of the
4712         device can grant permission through the Settings application.
4713         <p>Protection level: signature|privileged|development|appop|retailDemo -->
4714    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
4715        android:protectionLevel="signature|privileged|development|appop|retailDemo" />
4716    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
4717
4718    <!-- Allows a data loader to read a package's access logs. The access logs contain the
4719         set of pages referenced over time.
4720         <p>Declaring the permission implies intention to use the API and the user of the
4721         device can grant permission through the Settings application.
4722         <p>Protection level: signature|privileged|appop
4723         <p>A data loader has to be the one which provides data to install an app.
4724         <p>A data loader has to have both permission:LOADER_USAGE_STATS AND
4725         appop:LOADER_USAGE_STATS allowed to be able to access the read logs. -->
4726    <permission android:name="android.permission.LOADER_USAGE_STATS"
4727        android:protectionLevel="signature|privileged|appop" />
4728    <uses-permission android:name="android.permission.LOADER_USAGE_STATS" />
4729
4730    <!-- @hide @SystemApi Allows an application to observe usage time of apps. The app can register
4731         for callbacks when apps reach a certain usage time limit, etc. -->
4732    <permission android:name="android.permission.OBSERVE_APP_USAGE"
4733        android:protectionLevel="signature|privileged" />
4734
4735    <!-- @hide @TestApi @SystemApi Allows an application to change the app idle state of an app.
4736         <p>Not for use by third-party applications. -->
4737    <permission android:name="android.permission.CHANGE_APP_IDLE_STATE"
4738        android:protectionLevel="signature|privileged" />
4739
4740    <!-- @hide @SystemApi Allows an application to temporarily allowlist an inactive app to
4741         access the network and acquire wakelocks.
4742         <p>Not for use by third-party applications. -->
4743    <permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"
4744        android:protectionLevel="signature|privileged" />
4745
4746    <!-- Permission an application must hold in order to use
4747         {@link android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}.
4748         <p>Protection level: normal -->
4749    <permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
4750        android:label="@string/permlab_requestIgnoreBatteryOptimizations"
4751        android:description="@string/permdesc_requestIgnoreBatteryOptimizations"
4752        android:protectionLevel="normal" />
4753
4754    <!-- Allows an application to collect battery statistics
4755         <p>Protection level: signature|privileged|development -->
4756    <permission android:name="android.permission.BATTERY_STATS"
4757        android:protectionLevel="signature|privileged|development" />
4758
4759    <!--Allows an application to manage statscompanion.
4760    <p>Not for use by third-party applications.
4761         @hide -->
4762    <permission android:name="android.permission.STATSCOMPANION"
4763        android:protectionLevel="signature" />
4764
4765    <!--@SystemApi @hide Allows an application to register stats pull atom callbacks.
4766    <p>Not for use by third-party applications.-->
4767    <permission android:name="android.permission.REGISTER_STATS_PULL_ATOM"
4768                android:protectionLevel="signature|privileged" />
4769
4770    <!-- @SystemApi Allows an application to control the backup and restore process.
4771    <p>Not for use by third-party applications.
4772         @hide pending API council -->
4773    <permission android:name="android.permission.BACKUP"
4774        android:protectionLevel="signature|privileged" />
4775
4776    <!-- @SystemApi Allows an application to make modifications to device settings such that these
4777         modifications will be overridden by settings restore..
4778    <p>Not for use by third-party applications.
4779         @hide -->
4780    <permission android:name="android.permission.MODIFY_SETTINGS_OVERRIDEABLE_BY_RESTORE"
4781                android:protectionLevel="signature|setup" />
4782
4783    <!-- @SystemApi Allows application to manage
4784         {@link android.security.keystore.recovery.RecoveryController}.
4785         <p>Not for use by third-party applications.
4786         @hide -->
4787    <permission android:name="android.permission.RECOVER_KEYSTORE"
4788        android:protectionLevel="signature|privileged" />
4789
4790    <!-- Allows a package to launch the secure full-backup confirmation UI.
4791         ONLY the system process may hold this permission.
4792         @hide -->
4793    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
4794        android:protectionLevel="signature" />
4795
4796    <!-- Must be required by a {@link android.widget.RemoteViewsService},
4797         to ensure that only the system can bind to it.
4798         <p>Protection level: signature|privileged -->
4799    <permission android:name="android.permission.BIND_REMOTEVIEWS"
4800        android:protectionLevel="signature|privileged" />
4801
4802    <!-- Allows an application to tell the AppWidget service which application
4803         can access AppWidget's data.  The normal user flow is that a user
4804         picks an AppWidget to go into a particular host, thereby giving that
4805         host application access to the private data from the AppWidget app.
4806         An application that has this permission should honor that contract.
4807         <p>Not for use by third-party applications. -->
4808    <permission android:name="android.permission.BIND_APPWIDGET"
4809        android:protectionLevel="signature|privileged" />
4810
4811    <!-- @hide Allows sysui to manage user grants of slice permissions. -->
4812    <permission android:name="android.permission.MANAGE_SLICE_PERMISSIONS"
4813        android:protectionLevel="signature" />
4814
4815    <!-- @SystemApi Private permission, to restrict who can bring up a dialog to add a new
4816         keyguard widget
4817         @hide -->
4818    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
4819        android:protectionLevel="signature|privileged" />
4820
4821    <!-- @SystemApi Internal permission allowing an application to query/set which
4822         applications can bind AppWidgets.
4823         @hide -->
4824    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
4825        android:protectionLevel="signature|privileged" />
4826
4827    <!-- Allows applications to change the background data setting.
4828    <p>Not for use by third-party applications.
4829         @hide pending API council -->
4830    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
4831        android:protectionLevel="signature" />
4832
4833    <!-- This permission can be used on content providers to allow the global
4834         search system to access their data.  Typically it used when the
4835         provider has some permissions protecting it (which global search
4836         would not be expected to hold), and added as a read-only permission
4837         to the path in the provider where global search queries are
4838         performed.  This permission can not be held by regular applications;
4839         it is used by applications to protect themselves from everyone else
4840         besides global search.
4841         <p>Protection level: signature|privileged -->
4842    <permission android:name="android.permission.GLOBAL_SEARCH"
4843        android:protectionLevel="signature|privileged" />
4844
4845    <!-- Internal permission protecting access to the global search
4846         system: ensures that only the system can access the provider
4847         to perform queries (since this otherwise provides unrestricted
4848         access to a variety of content providers), and to write the
4849         search statistics (to keep applications from gaming the source
4850         ranking).
4851         @hide -->
4852    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
4853        android:protectionLevel="signature" />
4854
4855    <!-- @SystemApi Internal permission to allows an application to read indexable data.
4856        @hide -->
4857    <permission android:name="android.permission.READ_SEARCH_INDEXABLES"
4858        android:protectionLevel="signature|privileged" />
4859
4860    <!-- @SystemApi Internal permission to allows an application to bind to suggestion service.
4861        @hide -->
4862    <permission android:name="android.permission.BIND_SETTINGS_SUGGESTIONS_SERVICE"
4863                android:protectionLevel="signature" />
4864
4865    <!-- @hide Internal permission to allows an application to access card content provider. -->
4866    <permission android:name="android.permission.WRITE_SETTINGS_HOMEPAGE_DATA"
4867                android:protectionLevel="signature|privileged" />
4868
4869    <!-- An application needs this permission for
4870         {@link android.provider.Settings#ACTION_SETTINGS_EMBED_DEEP_LINK_ACTIVITY} to show its
4871         {@link android.app.Activity} embedded in Settings app. -->
4872    <permission android:name="android.permission.LAUNCH_MULTI_PANE_SETTINGS_DEEP_LINK"
4873                android:protectionLevel="signature|preinstalled" />
4874
4875    <!-- @SystemApi {@link android.app.Activity} should require this permission to ensure that only
4876         the settings app can embed it in a multi pane window.
4877         @hide -->
4878    <permission android:name="android.permission.ALLOW_PLACE_IN_MULTI_PANE_SETTINGS"
4879                android:protectionLevel="signature" />
4880
4881    <!-- @SystemApi Allows applications to set a live wallpaper.
4882         @hide XXX Change to signature once the picker is moved to its
4883         own apk as Ghod Intended. -->
4884    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
4885        android:protectionLevel="signature|privileged" />
4886
4887    <!-- @SystemApi Allows applications to read dream settings and dream state.
4888         @hide -->
4889    <permission android:name="android.permission.READ_DREAM_STATE"
4890        android:protectionLevel="signature|privileged" />
4891
4892    <!-- @SystemApi Allows applications to write dream settings, and start or stop dreaming.
4893         @hide -->
4894    <permission android:name="android.permission.WRITE_DREAM_STATE"
4895        android:protectionLevel="signature|privileged" />
4896
4897    <!-- @hide Allows applications to read whether ambient display is suppressed. -->
4898    <permission android:name="android.permission.READ_DREAM_SUPPRESSION"
4899        android:protectionLevel="signature" />
4900
4901    <!-- @SystemApi Allow an application to read and write the cache partition.
4902         @hide -->
4903    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
4904        android:protectionLevel="signature|privileged" />
4905
4906    <!-- Must be required by default container service so that only
4907         the system can bind to it and use it to copy
4908         protected data to secure containers or files
4909         accessible to the system.
4910         @hide -->
4911    <permission android:name="android.permission.COPY_PROTECTED_DATA"
4912        android:protectionLevel="signature" />
4913
4914    <!-- @SystemApi Internal permission protecting access to the encryption methods
4915        @hide
4916    -->
4917    <permission android:name="android.permission.CRYPT_KEEPER"
4918        android:protectionLevel="signature|privileged" />
4919
4920    <!-- @SystemApi Allows an application to read historical network usage for
4921         specific networks and applications. @hide -->
4922    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
4923        android:protectionLevel="signature|privileged" />
4924
4925    <!-- Allows an application to manage network policies (such as warning and disable
4926         limits) and to define application-specific rules. @hide -->
4927    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
4928        android:protectionLevel="signature" />
4929
4930    <!-- @SystemApi @hide @deprecated use UPDATE_DEVICE_STATS instead -->
4931    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
4932        android:protectionLevel="signature|privileged" />
4933
4934    <!-- @SystemApi @hide Allows an application to manage carrier subscription plans. -->
4935    <permission android:name="android.permission.MANAGE_SUBSCRIPTION_PLANS"
4936        android:protectionLevel="signature|privileged" />
4937
4938    <!-- C2DM permission.
4939         @hide Used internally.
4940     -->
4941    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
4942          android:protectionLevel="signature" />
4943    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
4944
4945    <!-- @SystemApi @hide Package verifier needs to have this permission before the PackageManager will
4946         trust it to verify packages.
4947    -->
4948    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
4949        android:protectionLevel="signature|privileged" />
4950
4951    <!-- Must be required by package verifier receiver, to ensure that only the
4952         system can interact with it.
4953         @hide
4954    -->
4955    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
4956        android:protectionLevel="signature" />
4957
4958    <!-- @hide Rollback manager needs to have this permission before the PackageManager will
4959         trust it to enable rollback.
4960    -->
4961    <permission android:name="android.permission.PACKAGE_ROLLBACK_AGENT"
4962        android:protectionLevel="signature" />
4963
4964    <!-- @SystemApi @TestApi @hide Allows managing apk level rollbacks. -->
4965    <permission android:name="android.permission.MANAGE_ROLLBACKS"
4966        android:protectionLevel="signature|privileged" />
4967
4968    <!-- @TestApi @hide Allows testing apk level rollbacks. -->
4969    <permission android:name="android.permission.TEST_MANAGE_ROLLBACKS"
4970        android:protectionLevel="signature" />
4971
4972    <!-- @SystemApi @hide Allows an application to mark other applications as harmful -->
4973    <permission android:name="android.permission.SET_HARMFUL_APP_WARNINGS"
4974        android:protectionLevel="signature|verifier" />
4975
4976    <!-- @SystemApi @hide Intent filter verifier needs to have this permission before the
4977         PackageManager will trust it to verify intent filters.
4978    -->
4979    <permission android:name="android.permission.INTENT_FILTER_VERIFICATION_AGENT"
4980        android:protectionLevel="signature|privileged" />
4981
4982    <!-- Must be required by intent filter verifier rintent-filtereceiver, to ensure that only the
4983         system can interact with it.
4984         @hide
4985    -->
4986    <permission android:name="android.permission.BIND_INTENT_FILTER_VERIFIER"
4987        android:protectionLevel="signature" />
4988
4989    <!-- @SystemApi @hide Domain verification agent package needs to have this permission before the
4990         system will trust it to verify domains.
4991
4992         TODO(159952358): STOPSHIP: This must be updated to the new "internal" protectionLevel
4993    -->
4994    <permission android:name="android.permission.DOMAIN_VERIFICATION_AGENT"
4995        android:protectionLevel="internal|privileged" />
4996
4997    <!-- @SystemApi @hide Must be required by the domain verification agent's intent
4998         BroadcastReceiver, to ensure that only the system can interact with it.
4999    -->
5000    <permission android:name="android.permission.BIND_DOMAIN_VERIFICATION_AGENT"
5001        android:protectionLevel="signature" />
5002
5003    <!-- @SystemApi @hide Allows an app like Settings to update the user's grants to what domains
5004         an app is allowed to automatically open.
5005    -->
5006    <permission android:name="android.permission.UPDATE_DOMAIN_VERIFICATION_USER_SELECTION"
5007        android:protectionLevel="signature" />
5008
5009    <!-- @SystemApi Allows applications to access serial ports via the SerialManager.
5010         @hide -->
5011    <permission android:name="android.permission.SERIAL_PORT"
5012        android:protectionLevel="signature|privileged" />
5013
5014    <!-- Allows the holder to access content providers from outside an ApplicationThread.
5015         This permission is enforced by the ActivityManagerService on the corresponding APIs,
5016         in particular ActivityManagerService#getContentProviderExternal(String) and
5017         ActivityManagerService#removeContentProviderExternal(String).
5018         @hide
5019    -->
5020    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
5021        android:protectionLevel="signature" />
5022
5023    <!-- @SystemApi Allows an application to hold an UpdateLock, recommending that a headless
5024         OTA reboot *not* occur while the lock is held.
5025         @hide -->
5026    <permission android:name="android.permission.UPDATE_LOCK"
5027        android:protectionLevel="signature|privileged" />
5028
5029    <!-- @SystemApi Allows an application the opportunity to become a
5030         {@link android.service.notification.NotificationAssistantService}.
5031         User permission is still required before access is granted.
5032         @hide -->
5033    <permission android:name="android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE"
5034                android:protectionLevel="signature|privileged|role" />
5035
5036    <!-- @SystemApi @TestApi Allows an application to read the current set of notifications, including
5037         any metadata and intents attached.
5038         @hide -->
5039    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
5040        android:protectionLevel="signature|privileged|appop" />
5041
5042    <!-- Marker permission for applications that wish to access notification policy. This permission
5043        is not supported on managed profiles.
5044         <p>Protection level: normal
5045    -->
5046    <permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"
5047        android:description="@string/permdesc_access_notification_policy"
5048        android:label="@string/permlab_access_notification_policy"
5049        android:protectionLevel="normal" />
5050
5051    <!-- Allows modification of do not disturb rules and policies. Only allowed for system
5052        processes.
5053        @hide -->
5054    <permission android:name="android.permission.MANAGE_NOTIFICATIONS"
5055                android:protectionLevel="signature" />
5056
5057    <!-- @SystemApi @TestApi Allows adding/removing enabled notification listener components.
5058        @hide -->
5059    <permission android:name="android.permission.MANAGE_NOTIFICATION_LISTENERS"
5060                android:protectionLevel="signature|installer" />
5061    <uses-permission android:name="android.permission.MANAGE_NOTIFICATION_LISTENERS" />
5062
5063    <!-- Allows notifications to be colorized
5064         <p>Not for use by third-party applications. @hide -->
5065    <permission android:name="android.permission.USE_COLORIZED_NOTIFICATIONS"
5066                android:protectionLevel="signature|setup" />
5067
5068    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
5069        @hide -->
5070    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
5071        android:protectionLevel="signature|setup" />
5072
5073    <!-- Allows applications to set the initial lockscreen state.
5074         <p>Not for use by third-party applications. @hide -->
5075    <permission android:name="android.permission.SET_INITIAL_LOCK"
5076        android:protectionLevel="signature|setup"/>
5077
5078    <!-- @TestApi Allows applications to set and verify lockscreen credentials.
5079        @hide -->
5080    <permission android:name="android.permission.SET_AND_VERIFY_LOCKSCREEN_CREDENTIALS"
5081                android:protectionLevel="signature"/>
5082
5083    <!-- Allows managing (adding, removing) fingerprint templates. Reserved for the system. @hide -->
5084    <permission android:name="android.permission.MANAGE_FINGERPRINT"
5085        android:protectionLevel="signature|privileged" />
5086
5087    <!-- Allows an app to reset fingerprint attempt counter. Reserved for the system. @hide -->
5088    <permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT"
5089        android:protectionLevel="signature" />
5090
5091    <!-- Allows access to TestApis for various components in the biometric stack, including
5092         FingerprintService, FaceService, BiometricService. Used by com.android.server.biometrics
5093         CTS tests. @hide @TestApi -->
5094    <permission android:name="android.permission.TEST_BIOMETRIC"
5095        android:protectionLevel="signature" />
5096
5097    <!-- Allows direct access to the <Biometric>Service interfaces. Reserved for the system. @hide -->
5098    <permission android:name="android.permission.MANAGE_BIOMETRIC"
5099        android:protectionLevel="signature" />
5100
5101    <!-- Allows direct access to the <Biometric>Service authentication methods. Reserved for the system. @hide -->
5102    <permission android:name="android.permission.USE_BIOMETRIC_INTERNAL"
5103        android:protectionLevel="signature" />
5104
5105    <!-- Allows the system to control the BiometricDialog (SystemUI). Reserved for the system. @hide -->
5106    <permission android:name="android.permission.MANAGE_BIOMETRIC_DIALOG"
5107        android:protectionLevel="signature" />
5108
5109    <!-- Allows an application to control keyguard.  Only allowed for system processes.
5110        @hide -->
5111    <permission android:name="android.permission.CONTROL_KEYGUARD"
5112        android:protectionLevel="signature" />
5113
5114    <!-- @SystemApi Allows an application to control keyguard features like secure notifications.
5115         @hide -->
5116    <permission android:name="android.permission.CONTROL_KEYGUARD_SECURE_NOTIFICATIONS"
5117        android:protectionLevel="signature|privileged" />
5118
5119    <!-- Allows an application to listen to trust changes.  Only allowed for system processes.
5120        @hide -->
5121    <permission android:name="android.permission.TRUST_LISTENER"
5122        android:protectionLevel="signature" />
5123
5124    <!-- @SystemApi Allows an application to provide a trust agent.
5125         @hide For security reasons, this is a platform-only permission. -->
5126    <permission android:name="android.permission.PROVIDE_TRUST_AGENT"
5127        android:protectionLevel="signature|privileged" />
5128
5129    <!-- @SystemApi Allows an application to show a message
5130         on the keyguard when asking to dismiss it.
5131         @hide For security reasons, this is a platform-only permission. -->
5132    <permission android:name="android.permission.SHOW_KEYGUARD_MESSAGE"
5133        android:protectionLevel="signature|privileged" />
5134
5135    <!-- Allows an application to launch the trust agent settings activity.
5136        @hide -->
5137    <permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"
5138        android:protectionLevel="signature|privileged" />
5139
5140    <!-- @SystemApi Must be required by an {@link
5141        android.service.trust.TrustAgentService},
5142        to ensure that only the system can bind to it.
5143        @hide -->
5144    <permission android:name="android.permission.BIND_TRUST_AGENT"
5145        android:protectionLevel="signature" />
5146
5147    <!-- Must be required by an {@link
5148         android.service.notification.NotificationListenerService},
5149         to ensure that only the system can bind to it.
5150         <p>Protection level: signature
5151    -->
5152    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
5153        android:protectionLevel="signature" />
5154
5155    <!-- @SystemApi Must be required by an {@link
5156         android.service.notification.NotificationAssistantService} to ensure that only the system
5157         can bind to it.
5158         <p>Protection level: signature
5159         @hide
5160    -->
5161    <permission android:name="android.permission.BIND_NOTIFICATION_ASSISTANT_SERVICE"
5162        android:protectionLevel="signature" />
5163
5164    <!-- Must be required by a {@link
5165         android.service.chooser.ChooserTargetService}, to ensure that
5166         only the system can bind to it.
5167         <p>Protection level: signature
5168
5169         @deprecated For publishing direct share targets, please follow the instructions in
5170         https://developer.android.com/training/sharing/receive.html#providing-direct-share-targets
5171         instead.
5172    -->
5173    <permission android:name="android.permission.BIND_CHOOSER_TARGET_SERVICE"
5174        android:protectionLevel="signature" />
5175
5176    <!-- @SystemApi Must be held by services that extend
5177         {@link android.service.resolver.ResolverRankerService}.
5178         <p>Protection level: signature|privileged
5179         @hide
5180    -->
5181    <permission android:name="android.permission.PROVIDE_RESOLVER_RANKER_SERVICE"
5182                android:protectionLevel="signature|privileged" />
5183
5184    <!-- @SystemApi Must be required by services that extend
5185         {@link android.service.resolver.ResolverRankerService}, to ensure that only the system can
5186         bind to them.
5187         <p>Protection level: signature
5188         @hide
5189    -->
5190    <permission android:name="android.permission.BIND_RESOLVER_RANKER_SERVICE"
5191        android:protectionLevel="signature" />
5192
5193    <!-- Must be required by a {@link
5194         android.service.notification.ConditionProviderService},
5195         to ensure that only the system can bind to it.
5196         <p>Protection level: signature
5197         -->
5198    <permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"
5199        android:protectionLevel="signature" />
5200
5201    <!-- Must be required by an {@link android.service.dreams.DreamService},
5202         to ensure that only the system can bind to it.
5203         <p>Protection level: signature
5204    -->
5205    <permission android:name="android.permission.BIND_DREAM_SERVICE"
5206        android:protectionLevel="signature" />
5207
5208    <!-- Must be required by an {@link android.app.usage.CacheQuotaService} to ensure that only the
5209         system can bind to it.
5210         @hide This is not a third-party API (intended for OEMs and system apps).
5211    -->
5212    <permission android:name="android.permission.BIND_CACHE_QUOTA_SERVICE"
5213                android:protectionLevel="signature" />
5214
5215    <!-- @SystemApi Allows an application to call into a carrier setup flow. It is up to the
5216         carrier setup application to enforce that this permission is required
5217         @hide This is not a third-party API (intended for OEMs and system apps). -->
5218    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
5219        android:protectionLevel="signature|privileged" />
5220
5221    <!-- @SystemApi Allows an application to listen for network condition observations.
5222         @hide This is not a third-party API (intended for system apps). -->
5223    <permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"
5224        android:protectionLevel="signature|privileged" />
5225
5226    <!-- @SystemApi Allows an application to provision and access DRM certificates
5227         @hide This is not a third-party API (intended for system apps). -->
5228    <permission android:name="android.permission.ACCESS_DRM_CERTIFICATES"
5229        android:protectionLevel="signature|privileged" />
5230
5231    <!-- Api Allows an application to manage media projection sessions.
5232         @hide This is not a third-party API (intended for system apps). -->
5233    <permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"
5234        android:protectionLevel="signature" />
5235
5236    <!-- @SystemApi Allows an application to read install sessions
5237         @hide This is not a third-party API (intended for system apps). -->
5238    <permission android:name="android.permission.READ_INSTALL_SESSIONS"
5239        android:label="@string/permlab_readInstallSessions"
5240        android:description="@string/permdesc_readInstallSessions"
5241        android:protectionLevel="normal"/>
5242
5243    <!-- @SystemApi Allows an application to remove DRM certificates
5244         @hide This is not a third-party API (intended for system apps). -->
5245    <permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"
5246        android:protectionLevel="signature|privileged" />
5247
5248    <!-- @deprecated Use {@link android.Manifest.permission#BIND_CARRIER_SERVICES} instead -->
5249    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
5250        android:protectionLevel="signature|privileged" />
5251
5252    <!-- Allows an application to interact with the currently active
5253         {@link android.service.voice.VoiceInteractionService}.
5254         @hide -->
5255    <permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"
5256        android:protectionLevel="signature" />
5257
5258    <!-- The system process that is allowed to bind to services in carrier apps will
5259         have this permission. Carrier apps should use this permission to protect
5260         their services that only the system is allowed to bind to.
5261         <p>Protection level: signature|privileged
5262    -->
5263    <permission android:name="android.permission.BIND_CARRIER_SERVICES"
5264        android:label="@string/permlab_bindCarrierServices"
5265        android:description="@string/permdesc_bindCarrierServices"
5266        android:protectionLevel="signature|privileged" />
5267
5268    <!--
5269        Allows the holder to start the permission usage screen for an app.
5270        <p>Protection level: signature|installer
5271    -->
5272    <permission android:name="android.permission.START_VIEW_PERMISSION_USAGE"
5273        android:label="@string/permlab_startViewPermissionUsage"
5274        android:description="@string/permdesc_startViewPermissionUsage"
5275        android:protectionLevel="signature|installer" />
5276
5277    <!-- Allows an application to query whether DO_NOT_ASK_CREDENTIALS_ON_BOOT
5278         flag is set.
5279         @hide -->
5280    <permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"
5281                android:protectionLevel="signature" />
5282
5283    <!-- @SystemApi Allows applications to kill UIDs.
5284        <p>Not for use by third-party applications.
5285         @hide -->
5286    <permission android:name="android.permission.KILL_UID"
5287                android:protectionLevel="signature|installer" />
5288
5289    <!-- @SystemApi Allows applications to read the local WiFi and Bluetooth MAC address.
5290        @hide -->
5291    <permission android:name="android.permission.LOCAL_MAC_ADDRESS"
5292                android:protectionLevel="signature|privileged" />
5293    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS"/>
5294
5295    <!-- @SystemApi Allows access to MAC addresses of WiFi and Bluetooth peer devices.
5296        @hide -->
5297    <permission android:name="android.permission.PEERS_MAC_ADDRESS"
5298                android:protectionLevel="signature|setup" />
5299
5300    <!-- Allows the Nfc stack to dispatch Nfc messages to applications. Applications
5301        can use this permission to ensure incoming Nfc messages are from the Nfc stack
5302        and not simulated by another application.
5303        @hide -->
5304    <permission android:name="android.permission.DISPATCH_NFC_MESSAGE"
5305                android:protectionLevel="signature|privileged" />
5306
5307    <!-- @SystemApi Allows changing day / night mode when system is configured with
5308         config_lockDayNightMode set to true. If requesting app does not have permission,
5309         it will be ignored.
5310        @hide -->
5311    <permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"
5312      android:protectionLevel="signature|privileged" />
5313
5314    <!-- @SystemApi Allows entering or exiting car mode using a specified priority.
5315        This permission is required to use UiModeManager while specifying a priority for the calling
5316        app.  A device manufacturer uses this permission to prioritize the apps which can
5317        potentially request to enter car-mode on a device to help establish the correct behavior
5318        where multiple such apps are active at the same time.
5319        @hide -->
5320    <permission android:name="android.permission.ENTER_CAR_MODE_PRIORITIZED"
5321                android:protectionLevel="signature|privileged" />
5322
5323    <!-- @SystemApi Required to receive ACTION_ENTER_CAR_MODE_PRIVILEGED or
5324        ACTION_EXIT_CAR_MODE_PRIVILEGED.
5325        @hide -->
5326    <permission android:name="android.permission.HANDLE_CAR_MODE_CHANGES"
5327                android:protectionLevel="signature|privileged" />
5328
5329    <!-- @SystemApi Allows the holder to send category_car notifications.
5330        @hide -->
5331    <permission
5332        android:name="android.permission.SEND_CATEGORY_CAR_NOTIFICATIONS"
5333        android:protectionLevel="signature|privileged" />
5334
5335    <!-- The system process is explicitly the only one allowed to launch the
5336         confirmation UI for full backup/restore -->
5337    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
5338
5339    <!-- @SystemApi Allows the holder to access and manage instant applications on the device.
5340         @hide -->
5341    <permission android:name="android.permission.ACCESS_INSTANT_APPS"
5342            android:protectionLevel="signature|installer|verifier|role" />
5343    <uses-permission android:name="android.permission.ACCESS_INSTANT_APPS"/>
5344
5345    <!-- Allows the holder to view the instant applications on the device.
5346    @hide -->
5347    <permission android:name="android.permission.VIEW_INSTANT_APPS"
5348                android:protectionLevel="signature|preinstalled" />
5349
5350    <!-- Allows the holder to manage whether the system can bind to services
5351         provided by instant apps. This permission is intended to protect
5352         test/development fucntionality and should be used only in such cases.
5353    @hide -->
5354    <permission android:name="android.permission.MANAGE_BIND_INSTANT_SERVICE"
5355                android:protectionLevel="signature" />
5356
5357    <!-- Allows receiving the usage of media resource e.g. video/audio codec and
5358         graphic memory.
5359         @hide -->
5360    <permission android:name="android.permission.RECEIVE_MEDIA_RESOURCE_USAGE"
5361                android:protectionLevel="signature|privileged" />
5362
5363    <!-- Must be required by system/priv apps when accessing the sound trigger
5364         APIs given by {@link SoundTriggerManager}.
5365         @hide
5366         @SystemApi -->
5367    <permission android:name="android.permission.MANAGE_SOUND_TRIGGER"
5368        android:protectionLevel="signature|privileged|role" />
5369
5370    <!-- Must be required by system/priv apps to run sound trigger recognition sessions while in
5371         battery saver mode.
5372         @hide
5373         @SystemApi -->
5374    <permission android:name="android.permission.SOUND_TRIGGER_RUN_IN_BATTERY_SAVER"
5375                android:protectionLevel="signature|privileged" />
5376
5377    <!-- Must be required by system/priv apps implementing sound trigger detection services
5378         @hide
5379         @SystemApi -->
5380    <permission android:name="android.permission.BIND_SOUND_TRIGGER_DETECTION_SERVICE"
5381        android:protectionLevel="signature" />
5382
5383    <!-- @SystemApi Allows trusted applications to dispatch managed provisioning message to Managed
5384         Provisioning app. If requesting app does not have permission, it will be ignored.
5385         @hide -->
5386    <permission android:name="android.permission.DISPATCH_PROVISIONING_MESSAGE"
5387                android:protectionLevel="signature|privileged" />
5388
5389    <!-- Allows the holder to read blocked numbers. See
5390         {@link android.provider.BlockedNumberContract}.
5391         @hide -->
5392    <permission android:name="android.permission.READ_BLOCKED_NUMBERS"
5393                android:protectionLevel="signature" />
5394
5395    <!-- Allows the holder to write blocked numbers. See
5396         {@link android.provider.BlockedNumberContract}.
5397         @hide -->
5398    <permission android:name="android.permission.WRITE_BLOCKED_NUMBERS"
5399                android:protectionLevel="signature" />
5400
5401    <!-- Must be required by an {@link android.service.vr.VrListenerService}, to ensure that only
5402         the system can bind to it.
5403         <p>Protection level: signature -->
5404    <permission android:name="android.permission.BIND_VR_LISTENER_SERVICE"
5405        android:protectionLevel="signature" />
5406
5407    <!-- Must be required by system apps when accessing restricted VR APIs.
5408         @hide
5409         @SystemApi
5410         <p>Protection level: signature -->
5411    <permission android:name="android.permission.RESTRICTED_VR_ACCESS"
5412        android:protectionLevel="signature|preinstalled" />
5413
5414    <!-- Required to make calls to {@link android.service.vr.IVrManager}.
5415         @hide -->
5416    <permission android:name="android.permission.ACCESS_VR_MANAGER"
5417            android:protectionLevel="signature" />
5418
5419    <!-- Required to access VR-Mode state and state change events via {android.app.VrStateCallback}
5420         @hide -->
5421    <permission android:name="android.permission.ACCESS_VR_STATE"
5422        android:protectionLevel="signature|preinstalled" />
5423
5424    <!-- Allows an application to allowlist tasks during lock task mode
5425         @hide <p>Not for use by third-party applications.</p> -->
5426    <permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES"
5427        android:protectionLevel="signature|setup" />
5428
5429    <!-- @SystemApi Allows an application to replace the app name displayed alongside notifications
5430         in the N-release and later.
5431         @hide  <p>Not for use by third-party applications.</p> -->
5432    <permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME"
5433                android:protectionLevel="signature|privileged" />
5434
5435    <!-- @SystemApi Allows an application to show notifications before the device is provisioned.
5436         @hide  <p>Not for use by third-party applications.</p> -->
5437    <permission android:name="android.permission.NOTIFICATION_DURING_SETUP"
5438                android:protectionLevel="signature|privileged" />
5439
5440    <!-- @SystemApi Allows an application to manage auto-fill sessions.
5441         @hide  <p>Not for use by third-party applications.</p> -->
5442    <permission android:name="android.permission.MANAGE_AUTO_FILL"
5443        android:protectionLevel="signature" />
5444
5445    <!-- @SystemApi Allows an application to manage the content capture service.
5446         @hide  <p>Not for use by third-party applications.</p> -->
5447    <permission android:name="android.permission.MANAGE_CONTENT_CAPTURE"
5448        android:protectionLevel="signature" />
5449
5450    <!-- @SystemApi Allows an application to manager the rotation resolver service.
5451         @hide <p>Not for use by third-party applications.</p> -->
5452    <permission android:name="android.permission.MANAGE_ROTATION_RESOLVER"
5453        android:protectionLevel="signature"/>
5454
5455    <!-- @SystemApi Allows an application to manage the music recognition service.
5456         @hide  <p>Not for use by third-party applications.</p> -->
5457    <permission android:name="android.permission.MANAGE_MUSIC_RECOGNITION"
5458        android:protectionLevel="signature|privileged|role" />
5459
5460    <!-- @SystemApi Allows an application to manage speech recognition service.
5461     @hide  <p>Not for use by third-party applications.</p> -->
5462    <permission android:name="android.permission.MANAGE_SPEECH_RECOGNITION"
5463        android:protectionLevel="signature" />
5464
5465    <!-- @SystemApi Allows an application to manage the content suggestions service.
5466         @hide  <p>Not for use by third-party applications.</p> -->
5467    <permission android:name="android.permission.MANAGE_CONTENT_SUGGESTIONS"
5468        android:protectionLevel="signature" />
5469
5470    <!-- @SystemApi Allows an application to manage the app predictions service.
5471         @hide  <p>Not for use by third-party applications.</p> -->
5472    <permission android:name="android.permission.MANAGE_APP_PREDICTIONS"
5473        android:protectionLevel="signature|role" />
5474
5475    <!-- @SystemApi Allows an application to manage the search ui service.
5476     @hide  <p>Not for use by third-party applications.</p> -->
5477    <permission android:name="android.permission.MANAGE_SEARCH_UI"
5478        android:protectionLevel="signature|role" />
5479
5480    <!-- @SystemApi Allows an application to manage the smartspace service.
5481     @hide  <p>Not for use by third-party applications.</p> -->
5482    <permission android:name="android.permission.MANAGE_SMARTSPACE"
5483        android:protectionLevel="signature" />
5484
5485    <!-- Allows an app to set the theme overlay in /vendor/overlay
5486         being used.
5487         @hide  <p>Not for use by third-party applications.</p> -->
5488    <permission android:name="android.permission.MODIFY_THEME_OVERLAY"
5489                android:protectionLevel="signature" />
5490
5491    <!-- Allows an instant app to create foreground services.
5492         <p>Protection level: signature|development|instant|appop -->
5493    <permission android:name="android.permission.INSTANT_APP_FOREGROUND_SERVICE"
5494        android:protectionLevel="signature|development|instant|appop" />
5495
5496    <!-- Allows a regular application to use {@link android.app.Service#startForeground
5497         Service.startForeground}.
5498         <p>Protection level: normal
5499    -->
5500    <permission android:name="android.permission.FOREGROUND_SERVICE"
5501        android:description="@string/permdesc_foregroundService"
5502        android:label="@string/permlab_foregroundService"
5503        android:protectionLevel="normal|instant" />
5504
5505    <!-- @SystemApi Allows to access all app shortcuts.
5506         @hide -->
5507    <permission android:name="android.permission.ACCESS_SHORTCUTS"
5508        android:protectionLevel="signature|role" />
5509
5510    <!-- @SystemApi Allows unlimited calls to shortcut mutation APIs.
5511         @hide -->
5512    <permission android:name="android.permission.UNLIMITED_SHORTCUTS_API_CALLS"
5513        android:protectionLevel="signature|role" />
5514
5515    <!-- @SystemApi Allows an application to read the runtime profiles of other apps.
5516         @hide <p>Not for use by third-party applications. -->
5517    <permission android:name="android.permission.READ_RUNTIME_PROFILES"
5518                android:protectionLevel="signature|privileged" />
5519
5520    <!-- @hide Allows audio policy management. -->
5521    <permission android:name="android.permission.MANAGE_AUDIO_POLICY"
5522        android:protectionLevel="signature" />
5523
5524    <!-- @SystemApi Allows an application to turn on / off quiet mode.
5525         @hide -->
5526    <permission android:name="android.permission.MODIFY_QUIET_MODE"
5527                android:protectionLevel="signature|privileged|development" />
5528
5529    <!-- Allows internal management of the camera framework
5530         @hide -->
5531    <permission android:name="android.permission.MANAGE_CAMERA"
5532        android:protectionLevel="signature" />
5533
5534    <!-- Allows an application to control remote animations. See
5535         {@link ActivityOptions#makeRemoteAnimation}
5536         @hide <p>Not for use by third-party applications. -->
5537    <permission android:name="android.permission.CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS"
5538        android:protectionLevel="signature|privileged" />
5539
5540    <!-- Allows an application to watch changes and/or active state of app ops.
5541         @hide <p>Not for use by third-party applications. -->
5542    <permission android:name="android.permission.WATCH_APPOPS"
5543        android:protectionLevel="signature|privileged" />
5544
5545    <!-- Allows hidden API checks to be disabled when starting a process.
5546         @hide <p>Not for use by third-party applications. -->
5547    <permission android:name="android.permission.DISABLE_HIDDEN_API_CHECKS"
5548                android:protectionLevel="signature" />
5549
5550    <!-- @hide Permission that protects the
5551        {@link android.provider.Telephony.Intents#ACTION_DEFAULT_SMS_PACKAGE_CHANGED_INTERNAL}
5552        broadcast -->
5553    <permission android:name="android.permission.MONITOR_DEFAULT_SMS_PACKAGE"
5554        android:protectionLevel="signature|privileged" />
5555
5556    <!-- A subclass of {@link android.service.carrier.CarrierMessagingClientService} must be protected with this permission.
5557           <p>Protection level: signature -->
5558    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE"
5559        android:protectionLevel="signature" />
5560
5561    <!-- Must be required by an {@link android.service.watchdog.ExplicitHealthCheckService} to
5562         ensure that only the system can bind to it.
5563         @hide This is not a third-party API (intended for OEMs and system apps).
5564    -->
5565    <permission android:name="android.permission.BIND_EXPLICIT_HEALTH_CHECK_SERVICE"
5566        android:protectionLevel="signature|privileged" />
5567
5568    <!-- @SystemApi Must be required by an {@link android.service.storage.ExternalStorageService} to
5569         ensure that only the system can bind to it.
5570         @hide This is not a third-party API (intended for OEMs and system apps).
5571    -->
5572    <permission android:name="android.permission.BIND_EXTERNAL_STORAGE_SERVICE"
5573        android:protectionLevel="signature" />
5574
5575    <!-- @hide Permission that allows configuring appops.
5576     <p>Not for use by third-party applications. -->
5577    <permission android:name="android.permission.MANAGE_APPOPS"
5578                android:protectionLevel="signature" />
5579
5580    <!-- @hide Permission that allows background clipboard access.
5581         <p>Not for use by third-party applications. -->
5582    <permission android:name="android.permission.READ_CLIPBOARD_IN_BACKGROUND"
5583        android:protectionLevel="signature" />
5584
5585    <!-- @SystemApi Allows modifying accessibility state.
5586         @hide -->
5587    <permission android:name="android.permission.MANAGE_ACCESSIBILITY"
5588        android:protectionLevel="signature|setup|recents" />
5589
5590    <!-- @SystemApi Allows an app to grant a profile owner access to device identifiers.
5591         <p>Not for use by third-party applications.
5592         @deprecated
5593         @hide -->
5594    <permission android:name="android.permission.GRANT_PROFILE_OWNER_DEVICE_IDS_ACCESS"
5595        android:protectionLevel="signature" />
5596
5597    <!-- Allows an app to mark a profile owner as managing an organization-owned device.
5598         <p>Not for use by third-party applications.
5599         @hide -->
5600    <permission android:name="android.permission.MARK_DEVICE_ORGANIZATION_OWNED"
5601                android:protectionLevel="signature" />
5602
5603    <!-- Allows financial apps to read filtered sms messages.
5604         Protection level: signature|appop
5605         @deprecated The API that used this permission is no longer functional.  -->
5606    <permission android:name="android.permission.SMS_FINANCIAL_TRANSACTIONS"
5607        android:protectionLevel="signature|appop" />
5608
5609    <!-- Required for apps targeting {@link android.os.Build.VERSION_CODES#Q} that want to use
5610         {@link android.app.Notification.Builder#setFullScreenIntent notification full screen
5611         intents}.
5612         <p>Protection level: normal -->
5613    <permission android:name="android.permission.USE_FULL_SCREEN_INTENT"
5614                android:label="@string/permlab_fullScreenIntent"
5615                android:description="@string/permdesc_fullScreenIntent"
5616                android:protectionLevel="normal" />
5617
5618    <!-- @SystemApi Allows requesting the framework broadcast the
5619         {@link Intent#ACTION_DEVICE_CUSTOMIZATION_READY} intent.
5620         @hide -->
5621    <permission android:name="android.permission.SEND_DEVICE_CUSTOMIZATION_READY"
5622        android:protectionLevel="signature|privileged" />
5623
5624    <!-- @SystemApi Permission that protects the {@link Intent#ACTION_DEVICE_CUSTOMIZATION_READY}
5625         intent.
5626         @hide -->
5627    <permission android:name="android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY"
5628        android:protectionLevel="signature|preinstalled" />
5629
5630    <!-- @SystemApi Allows wallpaper to be rendered in ambient mode.
5631         @hide -->
5632    <permission android:name="android.permission.AMBIENT_WALLPAPER"
5633                android:protectionLevel="signature|preinstalled" />
5634
5635    <!-- @SystemApi Allows sensor privacy to be modified.
5636         @hide -->
5637    <permission android:name="android.permission.MANAGE_SENSOR_PRIVACY"
5638                android:protectionLevel="internal|role" />
5639
5640    <!-- @SystemApi Allows sensor privacy changes to be observed.
5641         @hide -->
5642    <permission android:name="android.permission.OBSERVE_SENSOR_PRIVACY"
5643                android:protectionLevel="internal|role|installer" />
5644
5645    <!-- @SystemApi Permission that protects the {@link Intent#ACTION_REVIEW_ACCESSIBILITY_SERVICES}
5646         intent.
5647         @hide -->
5648    <permission android:name="android.permission.REVIEW_ACCESSIBILITY_SERVICES"
5649                android:protectionLevel="signature" />
5650
5651    <!-- @SystemApi Allows an activity to replace the app name and icon displayed in share targets
5652         in the sharesheet for the Q-release and later.
5653         @hide  <p>Not for use by third-party applications.</p> -->
5654    <permission android:name="android.permission.SUBSTITUTE_SHARE_TARGET_APP_NAME_AND_ICON"
5655                android:protectionLevel="signature|privileged" />
5656
5657    <!-- @SystemApi Allows an application to access shared libraries.
5658         @hide -->
5659    <permission android:name="android.permission.ACCESS_SHARED_LIBRARIES"
5660                android:protectionLevel="signature|installer" />
5661
5662    <!-- Allows an app to log compat change usage.
5663         @hide  <p>Not for use by third-party applications.</p> -->
5664    <permission android:name="android.permission.LOG_COMPAT_CHANGE"
5665                android:protectionLevel="signature|privileged" />
5666    <!-- Allows an app to read compat change config.
5667         @hide  <p>Not for use by third-party applications.</p> -->
5668    <permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG"
5669                android:protectionLevel="signature|privileged" />
5670    <!-- Allows an app to override compat change config.
5671         This permission only allows to override config on debuggable builds or test-apks and is
5672         therefore a less powerful version of OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD.
5673         @hide  <p>Not for use by third-party applications.</p> -->
5674    <permission android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG"
5675                android:protectionLevel="signature|privileged" />
5676    <!-- @SystemApi Allows an app to override compat change config on release builds.
5677        Only ChangeIds that are annotated as @Overridable can be overridden on release builds.
5678        @hide -->
5679    <permission android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD"
5680                android:protectionLevel="signature|privileged" />
5681
5682    <!-- Allows input events to be monitored. Very dangerous!  @hide -->
5683    <permission android:name="android.permission.MONITOR_INPUT"
5684                android:protectionLevel="signature|recents" />
5685    <!-- Allows the use of FLAG_SLIPPERY, which permits touch events to slip from the current
5686         window to the window where the touch currently is on top of.  @hide -->
5687    <permission android:name="android.permission.ALLOW_SLIPPERY_TOUCHES"
5688                android:protectionLevel="signature|recents" />
5689    <!--  Allows the caller to change the associations between input devices and displays.
5690        Very dangerous! @hide -->
5691    <permission android:name="android.permission.ASSOCIATE_INPUT_DEVICE_TO_DISPLAY"
5692                android:protectionLevel="signature" />
5693
5694    <!-- Allows query of any normal app on the device, regardless of manifest declarations.
5695        <p>Protection level: normal -->
5696    <permission android:name="android.permission.QUERY_ALL_PACKAGES"
5697                android:label="@string/permlab_queryAllPackages"
5698                android:description="@string/permdesc_queryAllPackages"
5699                android:protectionLevel="normal" />
5700    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
5701
5702    <!-- @hide Allow the caller to collect debugging data from processes that otherwise
5703        would require USAGE_STATS. Before sharing this data with other apps, holders
5704        of this permission are REQUIRED to themselves check that the caller has
5705        PACKAGE_USAGE_STATS and OP_GET_USAGE_STATS. -->
5706    <permission android:name="android.permission.PEEK_DROPBOX_DATA"
5707        android:protectionLevel="signature" />
5708
5709    <!-- @SystemApi Allows an application to access TV tuner HAL
5710         <p>Not for use by third-party applications.
5711         @hide -->
5712    <permission android:name="android.permission.ACCESS_TV_TUNER"
5713        android:protectionLevel="signature|privileged|vendorPrivileged" />
5714
5715    <!-- @SystemApi Allows an application to access descrambler of TV tuner HAL
5716         <p>Not for use by third-party applications.
5717         @hide -->
5718    <permission android:name="android.permission.ACCESS_TV_DESCRAMBLER"
5719        android:protectionLevel="signature|privileged|vendorPrivileged" />
5720
5721    <!-- Allows an application to create trusted displays. @hide -->
5722    <permission android:name="android.permission.ADD_TRUSTED_DISPLAY"
5723                android:protectionLevel="signature" />
5724
5725    <!-- @hide @SystemApi Allows an application to access locusId events in the usage stats. -->
5726    <permission android:name="android.permission.ACCESS_LOCUS_ID_USAGE_STATS"
5727                android:protectionLevel="signature|role" />
5728
5729    <!-- @hide @SystemApi Allows an application to manage app hibernation state. -->
5730    <permission android:name="android.permission.MANAGE_APP_HIBERNATION"
5731        android:protectionLevel="signature|installer" />
5732
5733    <!-- @hide @TestApi Allows apps to reset the state of {@link com.android.server.am.AppErrors}.
5734         <p>CTS tests will use UiAutomation.adoptShellPermissionIdentity() to gain access.  -->
5735    <permission android:name="android.permission.RESET_APP_ERRORS"
5736        android:protectionLevel="signature" />
5737
5738    <!-- @hide Allows an application to create/destroy input consumer. -->
5739    <permission android:name="android.permission.INPUT_CONSUMER"
5740                android:protectionLevel="signature" />
5741
5742    <!-- @hide @TestApi Allows an application to control the system's device state managed by the
5743         {@link android.service.devicestate.DeviceStateManagerService}. For example, on foldable
5744         devices this would grant access to toggle between the folded and unfolded states. -->
5745    <permission android:name="android.permission.CONTROL_DEVICE_STATE"
5746                android:protectionLevel="signature" />
5747
5748    <!-- @hide @SystemApi Must be required by a
5749        {@link android.service.displayhash.DisplayHashingService}
5750        to ensure that only the system can bind to it.
5751        This is not a third-party API (intended for OEMs and system apps).
5752    -->
5753    <permission android:name="android.permission.BIND_DISPLAY_HASHING_SERVICE"
5754        android:protectionLevel="signature" />
5755
5756    <!-- @hide @TestApi Allows an application to enable/disable toast rate limiting.
5757         <p>Not for use by third-party applications.
5758    -->
5759    <permission android:name="android.permission.MANAGE_TOAST_RATE_LIMITING"
5760                android:protectionLevel="signature" />
5761
5762    <!-- Allows managing the Game Mode
5763     @hide Used internally. -->
5764    <permission android:name="android.permission.MANAGE_GAME_MODE"
5765                android:protectionLevel="signature" />
5766
5767    <!-- @SystemApi Allows the holder to register callbacks to inform the RebootReadinessManager
5768         when they are performing reboot-blocking work.
5769         @hide -->
5770    <permission android:name="android.permission.SIGNAL_REBOOT_READINESS"
5771                android:protectionLevel="signature|privileged" />
5772
5773    <!-- @hide Allows an application to get a People Tile preview for a given shortcut. -->
5774    <permission android:name="android.permission.GET_PEOPLE_TILE_PREVIEW"
5775        android:protectionLevel="signature|recents" />
5776
5777    <!-- @hide @SystemApi Allows an application to retrieve whether shortcut is backed by a
5778         Conversation.
5779         TODO(b/180412052): STOPSHIP: Define a role so it can be granted to Shell and AiAi. -->
5780    <permission android:name="android.permission.READ_PEOPLE_DATA"
5781                android:protectionLevel="signature|recents|role"/>
5782
5783    <!-- @hide @SystemApi Allows a logical component within an application to
5784         temporarily renounce a set of otherwise granted permissions. -->
5785    <permission android:name="android.permission.RENOUNCE_PERMISSIONS"
5786                android:protectionLevel="signature|privileged" />
5787
5788    <!-- Allows an application to read nearby streaming policy. The policy allows the device
5789         to stream its notifications and apps to nearby devices.
5790         @hide -->
5791    <permission android:name="android.permission.READ_NEARBY_STREAMING_POLICY"
5792        android:protectionLevel="signature|privileged" />
5793
5794    <!-- @SystemApi Allows the holder to set the source of the data when setting a clip on the
5795         clipboard.
5796         @hide -->
5797    <permission android:name="android.permission.SET_CLIP_SOURCE"
5798                android:protectionLevel="signature|recents" />
5799
5800    <!-- @SystemApi Allows an application to access TV tuned info
5801         <p>Not for use by third-party applications.
5802         @hide -->
5803    <permission android:name="android.permission.ACCESS_TUNED_INFO"
5804        android:protectionLevel="signature|privileged|vendorPrivileged" />
5805
5806    <!-- Allows an application to indicate via
5807         {@link android.content.pm.PackageInstaller.SessionParams#setRequireUserAction(int)}
5808         that user action should not be required for an app update.
5809         <p>Protection level: normal
5810    -->
5811    <permission android:name="android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION"
5812                android:protectionLevel="normal" />
5813    <uses-permission android:name="android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION"/>
5814
5815    <!-- Allows an application to take screenshots of layers that normally would be blacked out when
5816         a screenshot is taken. Specifically, layers that have the flag
5817         {@link android.view.SurfaceControl#SECURE} will be screenshot if the caller requests to
5818         capture secure layers. Normally those layers will be rendered black.
5819         <p>Not for use by third-party applications.
5820         @hide
5821    -->
5822    <permission android:name="android.permission.CAPTURE_BLACKOUT_CONTENT"
5823        android:protectionLevel="signature" />
5824
5825      <!-- @SystemApi Allows an application to query over global data in AppSearch.
5826           @hide -->
5827    <permission android:name="android.permission.READ_GLOBAL_APP_SEARCH_DATA"
5828                android:protectionLevel="internal|role" />
5829
5830    <!-- Attribution for Geofencing service. -->
5831    <attribution android:tag="GeofencingService" android:label="@string/geofencing_service"/>
5832    <!-- Attribution for Country Detector. -->
5833    <attribution android:tag="CountryDetector" android:label="@string/country_detector"/>
5834    <!-- Attribution for Location service. -->
5835    <attribution android:tag="LocationService" android:label="@string/location_service"/>
5836    <!-- Attribution for Gnss service. -->
5837    <attribution android:tag="GnssService" android:label="@string/gnss_service"/>
5838    <!-- Attribution for Sensor Notification service. -->
5839    <attribution android:tag="SensorNotificationService"
5840             android:label="@string/sensor_notification_service"/>
5841    <!-- Attribution for Twilight service. -->
5842    <attribution android:tag="TwilightService" android:label="@string/twilight_service"/>
5843    <!-- Attribution for Gnss Time Update service. -->
5844    <attribution android:tag="GnssTimeUpdateService"
5845                 android:label="@string/gnss_time_update_service"/>
5846    <!-- Attribution for MusicRecognitionManagerService.
5847         <p>Not for use by third-party applications.</p> -->
5848    <attribution android:tag="MusicRecognitionManagerService"
5849        android:label="@string/music_recognition_manager_service"/>
5850
5851    <application android:process="system"
5852                 android:persistent="true"
5853                 android:hasCode="false"
5854                 android:label="@string/android_system_label"
5855                 android:allowClearUserData="false"
5856                 android:backupAgent="com.android.server.backup.SystemBackupAgent"
5857                 android:killAfterRestore="false"
5858                 android:icon="@drawable/ic_launcher_android"
5859                 android:supportsRtl="true"
5860                 android:theme="@style/Theme.DeviceDefault.Light.DarkActionBar"
5861                 android:defaultToDeviceProtectedStorage="true"
5862                 android:forceQueryable="true"
5863                 android:directBootAware="true">
5864        <activity android:name="com.android.internal.app.ChooserActivity"
5865                android:theme="@style/Theme.DeviceDefault.Chooser"
5866                android:finishOnCloseSystemDialogs="true"
5867                android:excludeFromRecents="true"
5868                android:documentLaunchMode="never"
5869                android:relinquishTaskIdentity="true"
5870                android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
5871                android:process=":ui"
5872                android:exported="true"
5873                android:visibleToInstantApps="true">
5874            <intent-filter android:priority="100">
5875                <action android:name="android.intent.action.CHOOSER" />
5876                <category android:name="android.intent.category.DEFAULT" />
5877                <category android:name="android.intent.category.VOICE" />
5878            </intent-filter>
5879        </activity>
5880        <activity android:name="com.android.internal.accessibility.dialog.AccessibilityShortcutChooserActivity"
5881                  android:exported="false"
5882                  android:theme="@style/Theme.DeviceDefault.Dialog.Alert.DayNight"
5883                  android:finishOnCloseSystemDialogs="true"
5884                  android:excludeFromRecents="true"
5885                  android:documentLaunchMode="never"
5886                  android:relinquishTaskIdentity="true"
5887                  android:process=":ui"
5888                  android:visibleToInstantApps="true">
5889            <intent-filter>
5890                <action android:name="com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
5891                <category android:name="android.intent.category.DEFAULT" />
5892            </intent-filter>
5893        </activity>
5894        <activity android:name="com.android.internal.accessibility.dialog.AccessibilityButtonChooserActivity"
5895                  android:exported="false"
5896                  android:theme="@style/Theme.DeviceDefault.Resolver"
5897                  android:finishOnCloseSystemDialogs="true"
5898                  android:excludeFromRecents="true"
5899                  android:documentLaunchMode="never"
5900                  android:relinquishTaskIdentity="true"
5901                  android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboard|keyboardHidden"
5902                  android:process=":ui"
5903                  android:visibleToInstantApps="true">
5904            <intent-filter>
5905                <action android:name="com.android.internal.intent.action.CHOOSE_ACCESSIBILITY_BUTTON" />
5906                <category android:name="android.intent.category.DEFAULT" />
5907            </intent-filter>
5908        </activity>
5909        <activity android:name="com.android.internal.app.IntentForwarderActivity"
5910                android:finishOnCloseSystemDialogs="true"
5911                android:theme="@style/Theme.Translucent.NoTitleBar"
5912                android:excludeFromRecents="true"
5913                android:label="@string/user_owner_label"
5914                android:exported="true"
5915                android:visibleToInstantApps="true"
5916                >
5917        </activity>
5918        <activity-alias android:name="com.android.internal.app.ForwardIntentToParent"
5919                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
5920                android:exported="true"
5921                android:label="@string/user_owner_label">
5922        </activity-alias>
5923        <activity-alias android:name="com.android.internal.app.ForwardIntentToManagedProfile"
5924                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
5925                android:icon="@drawable/ic_corp_badge"
5926                android:exported="true"
5927                android:label="@string/managed_profile_label">
5928        </activity-alias>
5929        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
5930                android:theme="@style/Theme.DeviceDefault.System.Dialog.Alert"
5931                android:label="@string/heavy_weight_switcher_title"
5932                android:finishOnCloseSystemDialogs="true"
5933                android:excludeFromRecents="true"
5934                android:process=":ui">
5935        </activity>
5936        <activity android:name="com.android.internal.app.PlatLogoActivity"
5937                android:theme="@style/Theme.DeviceDefault.Wallpaper.NoTitleBar"
5938                android:configChanges="orientation|screenSize|screenLayout|keyboardHidden"
5939                android:icon="@drawable/platlogo"
5940                android:process=":ui">
5941        </activity>
5942        <activity android:name="com.android.internal.app.DisableCarModeActivity"
5943                android:theme="@style/Theme.NoDisplay"
5944                android:excludeFromRecents="true"
5945                android:process=":ui">
5946        </activity>
5947
5948        <activity android:name="android.accounts.ChooseAccountActivity"
5949                android:excludeFromRecents="true"
5950                android:exported="true"
5951                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
5952                android:label="@string/choose_account_label"
5953                android:process=":ui"
5954                android:visibleToInstantApps="true">
5955        </activity>
5956
5957        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
5958                android:excludeFromRecents="true"
5959                android:exported="true"
5960                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
5961                android:label="@string/choose_account_label"
5962                android:process=":ui"
5963                android:visibleToInstantApps="true">
5964        </activity>
5965
5966        <activity android:name="android.accounts.ChooseAccountTypeActivity"
5967                android:excludeFromRecents="true"
5968                android:theme="@style/Theme.DeviceDefault.Light.Dialog"
5969                android:label="@string/choose_account_label"
5970                android:process=":ui"
5971                android:visibleToInstantApps="true">
5972        </activity>
5973
5974        <activity android:name="android.accounts.CantAddAccountActivity"
5975                android:excludeFromRecents="true"
5976                android:exported="true"
5977                android:theme="@style/Theme.DeviceDefault.Light.Dialog.NoActionBar"
5978                android:process=":ui">
5979        </activity>
5980
5981        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
5982                android:excludeFromRecents="true"
5983                android:exported="true"
5984                android:theme="@style/Theme.DeviceDefault.Light.DialogWhenLarge"
5985                android:process=":ui"
5986                android:visibleToInstantApps="true">
5987        </activity>
5988
5989        <activity android:name="android.content.SyncActivityTooManyDeletes"
5990               android:theme="@style/Theme.DeviceDefault.Light.Dialog"
5991               android:label="@string/sync_too_many_deletes"
5992               android:process=":ui">
5993        </activity>
5994
5995        <activity android:name="com.android.internal.app.ShutdownActivity"
5996            android:permission="android.permission.SHUTDOWN"
5997            android:theme="@style/Theme.NoDisplay"
5998            android:exported="true"
5999            android:excludeFromRecents="true">
6000            <intent-filter>
6001                <action android:name="com.android.internal.intent.action.REQUEST_SHUTDOWN" />
6002                <category android:name="android.intent.category.DEFAULT" />
6003            </intent-filter>
6004            <intent-filter>
6005                <action android:name="android.intent.action.REBOOT" />
6006                <category android:name="android.intent.category.DEFAULT" />
6007            </intent-filter>
6008        </activity>
6009
6010        <activity android:name="com.android.internal.app.NetInitiatedActivity"
6011                android:theme="@style/Theme.Dialog.Confirmation"
6012                android:excludeFromRecents="true"
6013                android:process=":ui">
6014        </activity>
6015
6016        <activity android:name="com.android.internal.app.SystemUserHomeActivity"
6017                  android:enabled="false"
6018                  android:process=":ui"
6019                  android:systemUserOnly="true"
6020                  android:exported="true"
6021                  android:theme="@style/Theme.Translucent.NoTitleBar">
6022            <intent-filter android:priority="-100">
6023                <action android:name="android.intent.action.MAIN" />
6024                <category android:name="android.intent.category.HOME" />
6025            </intent-filter>
6026        </activity>
6027
6028        <!-- Activity to prompt user if it's ok to create a new user sandbox for a
6029             specified account. -->
6030        <activity android:name="com.android.internal.app.ConfirmUserCreationActivity"
6031                android:excludeFromRecents="true"
6032                android:process=":ui"
6033                android:exported="true"
6034                android:theme="@style/Theme.Dialog.Confirmation">
6035            <intent-filter android:priority="1000">
6036                <action android:name="android.os.action.CREATE_USER" />
6037                <category android:name="android.intent.category.DEFAULT" />
6038            </intent-filter>
6039        </activity>
6040
6041        <activity android:name="com.android.internal.app.SuspendedAppActivity"
6042                  android:theme="@style/Theme.Dialog.Confirmation"
6043                  android:excludeFromRecents="true"
6044                  android:process=":ui">
6045        </activity>
6046
6047        <activity android:name="com.android.internal.app.UnlaunchableAppActivity"
6048                android:theme="@style/Theme.Dialog.Confirmation"
6049                android:excludeFromRecents="true"
6050                android:process=":ui">
6051        </activity>
6052
6053        <activity android:name="com.android.internal.app.BlockedAppActivity"
6054                android:theme="@style/Theme.Dialog.Confirmation"
6055                android:excludeFromRecents="true"
6056                android:lockTaskMode="always"
6057                android:process=":ui">
6058        </activity>
6059
6060        <activity android:name="com.android.settings.notification.NotificationAccessConfirmationActivity"
6061                  android:theme="@style/Theme.Dialog.Confirmation"
6062                  android:excludeFromRecents="true">
6063        </activity>
6064
6065        <activity android:name="com.android.internal.app.HarmfulAppWarningActivity"
6066                  android:theme="@style/Theme.Dialog.Confirmation"
6067                  android:excludeFromRecents="true"
6068                  android:process=":ui"
6069                  android:label="@string/harmful_app_warning_title"
6070                  android:exported="false">
6071        </activity>
6072
6073        <activity android:name="com.android.server.notification.NASLearnMoreActivity"
6074                  android:theme="@style/Theme.Dialog.Confirmation"
6075                  android:excludeFromRecents="true"
6076                  android:exported="false">
6077        </activity>
6078
6079        <receiver android:name="com.android.server.BootReceiver"
6080                android:exported="true"
6081                android:systemUserOnly="true">
6082            <intent-filter android:priority="1000">
6083                <action android:name="android.intent.action.BOOT_COMPLETED" />
6084            </intent-filter>
6085        </receiver>
6086
6087        <receiver android:name="com.android.server.updates.CertPinInstallReceiver"
6088                android:exported="true"
6089                android:permission="android.permission.UPDATE_CONFIG">
6090            <intent-filter>
6091                <action android:name="android.intent.action.UPDATE_PINS" />
6092                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6093            </intent-filter>
6094        </receiver>
6095
6096        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver"
6097                android:exported="true"
6098                android:permission="android.permission.UPDATE_CONFIG">
6099            <intent-filter>
6100                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
6101                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6102            </intent-filter>
6103        </receiver>
6104
6105        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver"
6106                android:exported="true"
6107                android:permission="android.permission.UPDATE_CONFIG">
6108            <intent-filter>
6109                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
6110                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6111            </intent-filter>
6112        </receiver>
6113
6114        <receiver android:name="com.android.server.updates.NetworkWatchlistInstallReceiver"
6115                  android:exported="true"
6116                  android:permission="android.permission.UPDATE_CONFIG">
6117            <intent-filter>
6118                <action android:name="android.intent.action.UPDATE_NETWORK_WATCHLIST" />
6119                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6120            </intent-filter>
6121        </receiver>
6122
6123        <receiver android:name="com.android.server.updates.ApnDbInstallReceiver"
6124                android:exported="true"
6125                android:permission="android.permission.UPDATE_CONFIG">
6126            <intent-filter>
6127                <action android:name="com.android.internal.intent.action.UPDATE_APN_DB" />
6128                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6129            </intent-filter>
6130        </receiver>
6131
6132        <receiver android:name="com.android.server.updates.CarrierProvisioningUrlsInstallReceiver"
6133                android:exported="true"
6134                android:permission="android.permission.UPDATE_CONFIG">
6135            <intent-filter>
6136                <action android:name="android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS" />
6137                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6138            </intent-filter>
6139        </receiver>
6140
6141        <receiver android:name="com.android.server.updates.CertificateTransparencyLogInstallReceiver"
6142                android:exported="true"
6143                android:permission="android.permission.UPDATE_CONFIG">
6144            <intent-filter>
6145                <action android:name="android.intent.action.UPDATE_CT_LOGS" />
6146                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6147            </intent-filter>
6148        </receiver>
6149
6150        <receiver android:name="com.android.server.updates.LangIdInstallReceiver"
6151                android:exported="true"
6152                android:permission="android.permission.UPDATE_CONFIG">
6153            <intent-filter>
6154                <action android:name="android.intent.action.UPDATE_LANG_ID" />
6155                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6156            </intent-filter>
6157        </receiver>
6158
6159        <receiver android:name="com.android.server.updates.SmartSelectionInstallReceiver"
6160                android:exported="true"
6161                android:permission="android.permission.UPDATE_CONFIG">
6162            <intent-filter>
6163                <action android:name="android.intent.action.UPDATE_SMART_SELECTION" />
6164                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6165            </intent-filter>
6166        </receiver>
6167
6168        <receiver android:name="com.android.server.updates.ConversationActionsInstallReceiver"
6169                  android:exported="true"
6170                  android:permission="android.permission.UPDATE_CONFIG">
6171            <intent-filter>
6172                <action android:name="android.intent.action.UPDATE_CONVERSATION_ACTIONS" />
6173                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6174            </intent-filter>
6175        </receiver>
6176
6177        <receiver android:name="com.android.server.updates.CarrierIdInstallReceiver"
6178                  android:exported="true"
6179                  android:permission="android.permission.UPDATE_CONFIG">
6180            <intent-filter>
6181                <action android:name="android.os.action.UPDATE_CARRIER_ID_DB" />
6182                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6183            </intent-filter>
6184        </receiver>
6185
6186        <receiver android:name="com.android.server.updates.EmergencyNumberDbInstallReceiver"
6187                  android:exported="true"
6188                  android:permission="android.permission.UPDATE_CONFIG">
6189            <intent-filter>
6190                <action android:name="android.os.action.UPDATE_EMERGENCY_NUMBER_DB" />
6191                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
6192            </intent-filter>
6193        </receiver>
6194
6195        <receiver android:name="com.android.server.MasterClearReceiver"
6196            android:exported="true"
6197            android:permission="android.permission.MASTER_CLEAR">
6198            <intent-filter
6199                    android:priority="100" >
6200                <!-- For Checkin, Settings, etc.: action=FACTORY_RESET -->
6201                <action android:name="android.intent.action.FACTORY_RESET" />
6202                <!-- As above until all the references to the deprecated MASTER_CLEAR get updated to
6203                     FACTORY_RESET. -->
6204                <action android:name="android.intent.action.MASTER_CLEAR" />
6205
6206                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
6207                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
6208                <category android:name="android.intent.category.MASTER_CLEAR" />
6209            </intent-filter>
6210        </receiver>
6211
6212        <receiver android:name="com.android.server.WallpaperUpdateReceiver"
6213                  android:exported="true"
6214                  android:permission="android.permission.RECEIVE_DEVICE_CUSTOMIZATION_READY">
6215            <intent-filter>
6216                <action android:name="android.intent.action.DEVICE_CUSTOMIZATION_READY"/>
6217            </intent-filter>
6218        </receiver>
6219
6220        <service android:name="android.hardware.location.GeofenceHardwareService"
6221            android:permission="android.permission.LOCATION_HARDWARE"
6222            android:exported="false" />
6223
6224        <service android:name="com.android.server.MountServiceIdler"
6225                 android:exported="true"
6226                 android:permission="android.permission.BIND_JOB_SERVICE" >
6227        </service>
6228
6229        <service android:name="com.android.server.ZramWriteback"
6230                 android:exported="false"
6231                 android:permission="android.permission.BIND_JOB_SERVICE" >
6232        </service>
6233
6234        <service android:name="com.android.server.backup.FullBackupJob"
6235                 android:exported="true"
6236                 android:permission="android.permission.BIND_JOB_SERVICE" >
6237        </service>
6238
6239        <service android:name="com.android.server.backup.KeyValueBackupJob"
6240                 android:permission="android.permission.BIND_JOB_SERVICE" >
6241        </service>
6242
6243        <service android:name="com.android.server.content.SyncJobService"
6244                 android:permission="android.permission.BIND_JOB_SERVICE" >
6245        </service>
6246
6247        <service android:name="com.android.server.pm.BackgroundDexOptService"
6248                 android:exported="true"
6249                 android:permission="android.permission.BIND_JOB_SERVICE">
6250        </service>
6251
6252        <service android:name="com.android.server.pm.DynamicCodeLoggingService"
6253                 android:permission="android.permission.BIND_JOB_SERVICE">
6254        </service>
6255
6256        <service android:name="com.android.server.PruneInstantAppsJobService"
6257                 android:permission="android.permission.BIND_JOB_SERVICE" >
6258        </service>
6259
6260        <service android:name="com.android.server.storage.DiskStatsLoggingService"
6261                 android:permission="android.permission.BIND_JOB_SERVICE" >
6262        </service>
6263
6264        <service android:name="com.android.server.PreloadsFileCacheExpirationJobService"
6265                 android:permission="android.permission.BIND_JOB_SERVICE" >
6266        </service>
6267
6268        <service android:name="com.android.server.camera.CameraStatsJobService"
6269                 android:permission="android.permission.BIND_JOB_SERVICE" >
6270        </service>
6271
6272        <service android:name="com.android.server.timezone.TimeZoneUpdateIdler"
6273                 android:permission="android.permission.BIND_JOB_SERVICE" >
6274        </service>
6275
6276        <service android:name="com.android.server.usage.UsageStatsIdleService"
6277                 android:permission="android.permission.BIND_JOB_SERVICE" >
6278        </service>
6279
6280        <service android:name="com.android.server.net.watchlist.ReportWatchlistJobService"
6281                 android:permission="android.permission.BIND_JOB_SERVICE" >
6282        </service>
6283
6284        <service android:name="com.android.server.display.BrightnessIdleJob"
6285                 android:permission="android.permission.BIND_JOB_SERVICE" >
6286        </service>
6287
6288        <service android:name="com.android.server.people.data.DataMaintenanceService"
6289                 android:permission="android.permission.BIND_JOB_SERVICE" >
6290        </service>
6291
6292        <service android:name="com.android.server.profcollect.ProfcollectForwardingService$ProfcollectBGJobService"
6293                 android:permission="android.permission.BIND_JOB_SERVICE" >
6294        </service>
6295
6296        <service
6297                android:name="com.android.server.autofill.AutofillCompatAccessibilityService"
6298                android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"
6299                android:visibleToInstantApps="true"
6300                android:exported="true">
6301            <meta-data
6302                    android:name="android.accessibilityservice"
6303                    android:resource="@xml/autofill_compat_accessibility_service" />
6304        </service>
6305
6306        <service android:name="com.google.android.startop.iorap.IorapForwardingService$IorapdJobServiceProxy"
6307                 android:permission="android.permission.BIND_JOB_SERVICE" >
6308        </service>
6309
6310        <service android:name="com.android.server.blob.BlobStoreIdleJobService"
6311                 android:permission="android.permission.BIND_JOB_SERVICE">
6312        </service>
6313
6314        <service android:name="com.android.server.pm.PackageManagerShellCommandDataLoader"
6315            android:exported="false">
6316            <intent-filter>
6317                <action android:name="android.intent.action.LOAD_DATA"/>
6318            </intent-filter>
6319        </service>
6320
6321        <provider
6322            android:name="com.android.server.textclassifier.IconsContentProvider"
6323            android:authorities="com.android.textclassifier.icons"
6324            android:singleUser="true"
6325            android:enabled="true"
6326            android:exported="true">
6327        </provider>
6328
6329    </application>
6330
6331</manifest>
6332