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