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