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