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