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