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