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