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