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