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