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