AndroidManifest.xml revision 1746369a6bcd1a7219e94366b3774bfdfff08fc6
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/* //device/apps/common/AndroidManifest.xml
4**
5** Copyright 2006, The Android Open Source Project
6**
7** Licensed under the Apache License, Version 2.0 (the "License");
8** you may not use this file except in compliance with the License.
9** You may obtain a copy of the License at
10**
11**     http://www.apache.org/licenses/LICENSE-2.0
12**
13** Unless required by applicable law or agreed to in writing, software
14** distributed under the License is distributed on an "AS IS" BASIS,
15** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16** See the License for the specific language governing permissions and
17** limitations under the License.
18*/
19-->
20<manifest xmlns:android="http://schemas.android.com/apk/res/android"
21    package="android" coreApp="true" android:sharedUserId="android.uid.system"
22    android:sharedUserLabel="@string/android_system_label">
23
24    <!-- ================================================ -->
25    <!-- Special broadcasts that only the system can send -->
26    <!-- ================================================ -->
27    <eat-comment />
28
29    <protected-broadcast android:name="android.intent.action.SCREEN_OFF" />
30    <protected-broadcast android:name="android.intent.action.SCREEN_ON" />
31    <protected-broadcast android:name="android.intent.action.USER_PRESENT" />
32    <protected-broadcast android:name="android.intent.action.TIME_SET" />
33    <protected-broadcast android:name="android.intent.action.TIME_TICK" />
34    <protected-broadcast android:name="android.intent.action.TIMEZONE_CHANGED" />
35    <protected-broadcast android:name="android.intent.action.DATE_CHANGED" />
36    <protected-broadcast android:name="android.intent.action.BOOT_COMPLETED" />
37    <protected-broadcast android:name="android.intent.action.PACKAGE_INSTALL" />
38    <protected-broadcast android:name="android.intent.action.PACKAGE_ADDED" />
39    <protected-broadcast android:name="android.intent.action.PACKAGE_REPLACED" />
40    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_REPLACED" />
41    <protected-broadcast android:name="android.intent.action.PACKAGE_REMOVED" />
42    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
43    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
44    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
45    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
46    <protected-broadcast android:name="android.intent.action.PACKAGE_FIRST_LAUNCH" />
47    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION" />
48    <protected-broadcast android:name="android.intent.action.PACKAGE_VERIFIED" />
49    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
50    <protected-broadcast android:name="android.intent.action.QUERY_PACKAGE_RESTART" />
51    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
52    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
53    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
54    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
55    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
56    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
57    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
58    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
59    <protected-broadcast android:name="android.intent.action.CHARGING" />
60    <protected-broadcast android:name="android.intent.action.DISCHARGING" />
61    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
62    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
63    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
64    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
65    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
66    <protected-broadcast android:name="android.intent.action.REBOOT" />
67    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
68    <protected-broadcast android:name="android.intent.action.THERMAL_EVENT" />
69    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
70    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
71    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
72    <protected-broadcast android:name="android.intent.action.USER_STARTING" />
73    <protected-broadcast android:name="android.intent.action.USER_STARTED" />
74    <protected-broadcast android:name="android.intent.action.USER_STOPPING" />
75    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
76    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
77    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
78    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
79    <protected-broadcast android:name="android.intent.action.INTENT_FILTER_NEEDS_VERIFICATION" />
80
81    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED" />
82    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGING" />
83    <protected-broadcast android:name="android.os.action.DEVICE_IDLE_MODE_CHANGED" />
84    <protected-broadcast android:name="android.os.action.POWER_SAVE_WHITELIST_CHANGED" />
85    <protected-broadcast android:name="android.os.action.POWER_SAVE_TEMP_WHITELIST_CHANGED" />
86
87    <protected-broadcast android:name="android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED" />
88
89    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
90    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
91    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
92    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
93    <protected-broadcast android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
94
95    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
96    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
97    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
98    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
99    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
100    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_RESTORED" />
101
102    <protected-broadcast android:name="android.os.action.SETTING_RESTORED" />
103
104    <protected-broadcast android:name="android.backup.intent.RUN" />
105    <protected-broadcast android:name="android.backup.intent.CLEAR" />
106    <protected-broadcast android:name="android.backup.intent.INIT" />
107
108    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
109    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
110    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
111    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
112    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
113    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
114    <protected-broadcast android:name="android.bluetooth.device.action.UUID" />
115    <protected-broadcast android:name="android.bluetooth.device.action.MAS_INSTANCE" />
116    <protected-broadcast android:name="android.bluetooth.device.action.ALIAS_CHANGED" />
117    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
118    <protected-broadcast android:name="android.bluetooth.device.action.DISAPPEARED" />
119    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
120    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
121    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
122    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
123    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
124    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
125    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
126    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
127    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
128    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
129    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_CANCEL" />
130    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REQUEST" />
131    <protected-broadcast android:name="android.bluetooth.devicepicker.action.LAUNCH" />
132    <protected-broadcast android:name="android.bluetooth.devicepicker.action.DEVICE_SELECTED" />
133    <protected-broadcast
134        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
135    <protected-broadcast
136        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
137    <protected-broadcast
138        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
139    <protected-broadcast
140        android:name="android.bluetooth.headsetclient.profile.action.CONNECTION_STATE_CHANGED" />
141    <protected-broadcast
142        android:name="android.bluetooth.headsetclient.profile.action.AUDIO_STATE_CHANGED" />
143    <protected-broadcast
144        android:name="android.bluetooth.headsetclient.profile.action.AG_EVENT" />
145    <protected-broadcast
146        android:name="android.bluetooth.headsetclient.profile.action.AG_CALL_CHANGED" />
147    <protected-broadcast
148        android:name="android.bluetooth.headsetclient.profile.action.RESULT" />
149    <protected-broadcast
150        android:name="android.bluetooth.headsetclient.profile.action.LAST_VTAG" />
151    <protected-broadcast
152        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
153    <protected-broadcast
154        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
155    <protected-broadcast
156        android:name="android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED" />
157    <protected-broadcast
158        android:name="android.bluetooth.a2dp-sink.profile.action.PLAYING_STATE_CHANGED" />
159    <protected-broadcast
160        android:name="android.bluetooth.a2dp-sink.profile.action.AUDIO_CONFIG_CHANGED" />
161   <protected-broadcast
162        android:name="android.bluetooth.avrcp-controller.profile.action.CONNECTION_STATE_CHANGED" />
163    <protected-broadcast
164        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
165    <protected-broadcast
166        android:name="android.bluetooth.input.profile.action.PROTOCOL_MODE_CHANGED" />
167    <protected-broadcast
168        android:name="android.bluetooth.input.profile.action.VIRTUAL_UNPLUG_STATUS" />
169    <protected-broadcast
170        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
171    <protected-broadcast android:name="android.bluetooth.pbap.intent.action.PBAP_STATE_CHANGED" />
172    <protected-broadcast android:name="android.btopp.intent.action.INCOMING_FILE_NOTIFICATION" />
173    <protected-broadcast android:name="android.btopp.intent.action.USER_CONFIRMATION_TIMEOUT" />
174    <protected-broadcast android:name="android.btopp.intent.action.LIST" />
175    <protected-broadcast android:name="android.btopp.intent.action.OPEN_OUTBOUND" />
176    <protected-broadcast android:name="android.btopp.intent.action.HIDE_COMPLETE" />
177    <protected-broadcast android:name="android.btopp.intent.action.CONFIRM" />
178    <protected-broadcast android:name="android.btopp.intent.action.HIDE" />
179    <protected-broadcast android:name="android.btopp.intent.action.RETRY" />
180    <protected-broadcast android:name="android.btopp.intent.action.OPEN" />
181    <protected-broadcast android:name="android.btopp.intent.action.OPEN_INBOUND" />
182    <protected-broadcast android:name="com.android.bluetooth.pbap.authchall" />
183    <protected-broadcast android:name="com.android.bluetooth.pbap.userconfirmtimeout" />
184    <protected-broadcast android:name="com.android.bluetooth.pbap.authresponse" />
185    <protected-broadcast android:name="com.android.bluetooth.pbap.authcancelled" />
186
187    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />
188
189    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
190    <protected-broadcast android:name="android.hardware.usb.action.USB_PORT_CHANGED" />
191    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
192    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_DETACHED" />
193    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
194    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
195
196    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
197    <protected-broadcast android:name="android.media.action.HDMI_AUDIO_PLUG" />
198
199    <protected-broadcast android:name="android.media.AUDIO_BECOMING_NOISY" />
200    <protected-broadcast android:name="android.media.RINGER_MODE_CHANGED" />
201    <protected-broadcast android:name="android.media.VIBRATE_SETTING_CHANGED" />
202    <protected-broadcast android:name="android.media.VOLUME_CHANGED_ACTION" />
203    <protected-broadcast android:name="android.media.MASTER_VOLUME_CHANGED_ACTION" />
204    <protected-broadcast android:name="android.media.MASTER_MUTE_CHANGED_ACTION" />
205    <protected-broadcast android:name="android.media.SCO_AUDIO_STATE_CHANGED" />
206    <protected-broadcast android:name="android.media.ACTION_SCO_AUDIO_STATE_UPDATED" />
207
208    <protected-broadcast android:name="android.intent.action.MEDIA_REMOVED" />
209    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTED" />
210    <protected-broadcast android:name="android.intent.action.MEDIA_CHECKING" />
211    <protected-broadcast android:name="android.intent.action.MEDIA_NOFS" />
212    <protected-broadcast android:name="android.intent.action.MEDIA_MOUNTED" />
213    <protected-broadcast android:name="android.intent.action.MEDIA_SHARED" />
214    <protected-broadcast android:name="android.intent.action.MEDIA_UNSHARED" />
215    <protected-broadcast android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
216    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTABLE" />
217    <protected-broadcast android:name="android.intent.action.MEDIA_EJECT" />
218
219    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL" />
220    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
221    <!-- @deprecated.  Only {@link android.net.ConnectivityManager.CONNECTIVITY_ACTION} is sent. -->
222    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
223    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
224    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
225    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />
226
227    <protected-broadcast android:name="android.net.nsd.STATE_CHANGED" />
228
229    <protected-broadcast android:name="android.nfc.action.LLCP_LINK_STATE_CHANGED" />
230    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
231    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
232    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
233
234    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
235
236    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
237    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
238
239    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />
240
241    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
242    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
243    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />
244
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 contact metadata -->
835    <!-- =========================================== -->
836    <eat-comment />
837
838    <!-- @SystemApi Allows an application to read/write contact metadata.
839         <p>Not for use by third-party applications. -->
840    <permission android:name="android.permission.READ_WRITE_CONTACT_METADATA"
841        android:protectionLevel="signature|system" />
842
843    <!-- ================================== -->
844    <!-- Permissions for accessing messages -->
845    <!-- ================================== -->
846    <eat-comment />
847
848    <!-- @SystemApi Allows an application (Phone) to send a request to other applications
849         to handle the respond-via-message action during incoming calls.
850         <p>Not for use by third-party applications. -->
851    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
852        android:protectionLevel="signature|privileged" />
853
854    <!-- Allows an application to filter carrier specific sms.
855         @hide -->
856    <permission android:name="android.permission.CARRIER_FILTER_SMS"
857        android:protectionLevel="signature|privileged" />
858
859    <!-- @SystemApi Allows an application to receive emergency cell broadcast messages,
860         to record or display them to the user.
861         <p>Not for use by third-party applications.
862         @hide Pending API council approval -->
863    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
864        android:protectionLevel="signature|privileged" />
865
866    <!-- Allows an application to monitor incoming Bluetooth MAP messages, to record
867         or perform processing on them. -->
868    <!-- @hide -->
869    <permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"
870        android:protectionLevel="signature|privileged" />
871
872    <!-- @SystemApi @hide Allows an application to execute contacts directory search.
873         This should only be used by ContactsProvider.
874         <p>Not for use by third-party applications. -->
875    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
876        android:protectionLevel="signature|privileged" />
877
878    <!-- @SystemApi @hide Allows an application to modify cell broadcasts through the content provider.
879         <p>Not for use by third-party applications. -->
880    <permission android:name="android.permission.MODIFY_CELL_BROADCASTS"
881                android:protectionLevel="signature|system" />
882
883    <!-- =============================================================== -->
884    <!-- Permissions for setting the device alarm                        -->
885    <!-- =============================================================== -->
886    <eat-comment />
887
888    <!-- Allows an application to broadcast an Intent to set an alarm for the user.
889         <p>Protection level: normal
890    -->
891    <permission android:name="com.android.alarm.permission.SET_ALARM"
892        android:label="@string/permlab_setAlarm"
893        android:description="@string/permdesc_setAlarm"
894        android:protectionLevel="normal" />
895
896    <!-- =============================================================== -->
897    <!-- Permissions for accessing the user voicemail                    -->
898    <!-- =============================================================== -->
899    <eat-comment />
900
901    <!-- Allows an application to modify and remove existing voicemails in the system
902        <p>Protection level: system|signature
903    -->
904    <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
905        android:protectionLevel="system|signature" />
906
907    <!-- Allows an application to read voicemails in the system.
908         <p>Protection level: system|signature
909    -->
910    <permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"
911        android:protectionLevel="system|signature" />
912
913    <!-- ======================================= -->
914    <!-- Permissions for accessing location info -->
915    <!-- ======================================= -->
916    <eat-comment />
917
918    <!-- Allows an application to access extra location provider commands
919         <p>Protection level: normal
920    -->
921    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
922        android:label="@string/permlab_accessLocationExtraCommands"
923        android:description="@string/permdesc_accessLocationExtraCommands"
924        android:protectionLevel="normal" />
925
926    <!-- @SystemApi Allows an application to install a location provider into the Location Manager.
927    <p>Not for use by third-party applications. -->
928    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
929        android:protectionLevel="signature|privileged" />
930
931    <!-- @SystemApi @hide Allows HDMI-CEC service to access device and configuration files.
932         This should only be used by HDMI-CEC service.
933    -->
934    <permission android:name="android.permission.HDMI_CEC"
935        android:protectionLevel="signature|privileged" />
936
937    <!-- @SystemApi Allows an application to use location features in hardware,
938         such as the geofencing api.
939         <p>Not for use by third-party applications. -->
940    <permission android:name="android.permission.LOCATION_HARDWARE"
941        android:protectionLevel="signature|privileged" />
942    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>
943
944    <!-- @SystemApi Allows an application to create mock location providers for testing.
945         <p>Protection level: signature
946         @hide
947    -->
948    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
949        android:protectionLevel="signature" />
950
951    <!-- ======================================= -->
952    <!-- Permissions for accessing networks -->
953    <!-- ======================================= -->
954    <eat-comment />
955
956    <!-- Allows applications to open network sockets.
957         <p>Protection level: normal
958    -->
959    <permission android:name="android.permission.INTERNET"
960        android:description="@string/permdesc_createNetworkSockets"
961        android:label="@string/permlab_createNetworkSockets"
962        android:protectionLevel="normal" />
963
964    <!-- Allows applications to access information about networks
965         <p>Protection level: normal
966    -->
967    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
968        android:description="@string/permdesc_accessNetworkState"
969        android:label="@string/permlab_accessNetworkState"
970        android:protectionLevel="normal" />
971
972    <!-- Allows applications to access information about Wi-Fi networks.
973         <p>Protection level: normal
974    -->
975    <permission android:name="android.permission.ACCESS_WIFI_STATE"
976        android:description="@string/permdesc_accessWifiState"
977        android:label="@string/permlab_accessWifiState"
978        android:protectionLevel="normal" />
979
980    <!-- Allows applications to change Wi-Fi connectivity state.
981         <p>Protection level: normal
982    -->
983    <permission android:name="android.permission.CHANGE_WIFI_STATE"
984        android:description="@string/permdesc_changeWifiState"
985        android:label="@string/permlab_changeWifiState"
986        android:protectionLevel="normal" />
987
988    <!-- @SystemApi @hide Allows applications to read Wi-Fi credential.
989         <p>Not for use by third-party applications. -->
990    <permission android:name="android.permission.READ_WIFI_CREDENTIAL"
991        android:protectionLevel="signature|privileged" />
992
993    <!-- @SystemApi @hide Allow system apps to receive broadcast
994         when a wifi network credential is changed.
995         <p>Not for use by third-party applications. -->
996    <permission android:name="android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE"
997        android:protectionLevel="signature|privileged" />
998
999    <!-- @SystemApi @hide Allows an application to modify any wifi configuration, even if created
1000     by another application. Once reconfigured the original creator cannot make any further
1001     modifications.
1002     <p>Not for use by third-party applications. -->
1003    <permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"
1004        android:protectionLevel="signature|privileged" />
1005
1006    <!-- @hide -->
1007    <permission android:name="android.permission.ACCESS_WIMAX_STATE"
1008        android:description="@string/permdesc_accessWimaxState"
1009        android:label="@string/permlab_accessWimaxState"
1010        android:protectionLevel="normal" />
1011
1012    <!-- @hide -->
1013    <permission android:name="android.permission.CHANGE_WIMAX_STATE"
1014        android:description="@string/permdesc_changeWimaxState"
1015        android:label="@string/permlab_changeWimaxState"
1016        android:protectionLevel="normal" />
1017
1018    <!-- Allows applications to act as network scorers. @hide @SystemApi-->
1019    <permission android:name="android.permission.SCORE_NETWORKS"
1020        android:protectionLevel="signature|privileged" />
1021
1022    <!-- ======================================= -->
1023    <!-- Permissions for short range, peripheral networks -->
1024    <!-- ======================================= -->
1025    <eat-comment />
1026
1027    <!-- Allows applications to connect to paired bluetooth devices.
1028         <p>Protection level: normal
1029    -->
1030    <permission android:name="android.permission.BLUETOOTH"
1031        android:description="@string/permdesc_bluetooth"
1032        android:label="@string/permlab_bluetooth"
1033        android:protectionLevel="normal" />
1034
1035    <!-- Allows applications to discover and pair bluetooth devices.
1036         <p>Protection level: normal
1037    -->
1038    <permission android:name="android.permission.BLUETOOTH_ADMIN"
1039        android:description="@string/permdesc_bluetoothAdmin"
1040        android:label="@string/permlab_bluetoothAdmin"
1041        android:protectionLevel="normal" />
1042
1043    <!-- @SystemApi Allows applications to pair bluetooth devices without user interaction, and to
1044         allow or disallow phonebook access or message access.
1045         This is not available to third party applications. -->
1046    <permission android:name="android.permission.BLUETOOTH_PRIVILEGED"
1047        android:protectionLevel="system|signature" />
1048
1049    <!-- Control access to email providers exclusively for Bluetooth
1050         @hide
1051    -->
1052    <permission android:name="android.permission.BLUETOOTH_MAP"
1053        android:protectionLevel="signature" />
1054
1055    <!-- Allows bluetooth stack to access files
1056         @hide This should only be used by Bluetooth apk.
1057    -->
1058    <permission android:name="android.permission.BLUETOOTH_STACK"
1059        android:protectionLevel="signature" />
1060
1061    <!-- Allows applications to perform I/O operations over NFC.
1062         <p>Protection level: normal
1063    -->
1064    <permission android:name="android.permission.NFC"
1065        android:description="@string/permdesc_nfc"
1066        android:label="@string/permlab_nfc"
1067        android:protectionLevel="normal" />
1068
1069    <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs.
1070         @hide -->
1071    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
1072        android:protectionLevel="signature|privileged" />
1073
1074    <!-- Allows a system application to access hardware packet offload capabilities.
1075         @hide -->
1076    <permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"
1077        android:protectionLevel="signature|privileged" />
1078
1079    <!-- @SystemApi
1080         @hide -->
1081    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
1082        android:protectionLevel="signature|privileged" />
1083
1084    <!-- @SystemApi Allows access to the loop radio (Android@Home mesh network) device.
1085         @hide -->
1086    <permission android:name="android.permission.LOOP_RADIO"
1087        android:protectionLevel="signature|privileged" />
1088
1089    <!-- Allows sending and receiving handover transfer status from Wifi and Bluetooth
1090         @hide -->
1091    <permission android:name="android.permission.NFC_HANDOVER_STATUS"
1092        android:protectionLevel="signature|privileged" />
1093
1094    <!-- ================================== -->
1095    <!-- Permissions for accessing accounts -->
1096    <!-- ================================== -->
1097    <eat-comment />
1098
1099    <!-- Allows access to the list of accounts in the Accounts Service.
1100        <p>Protection level: normal
1101    -->
1102    <permission android:name="android.permission.GET_ACCOUNTS"
1103        android:permissionGroup="android.permission-group.CONTACTS"
1104        android:protectionLevel="dangerous"
1105        android:description="@string/permdesc_getAccounts"
1106        android:label="@string/permlab_getAccounts" />
1107
1108    <!-- @SystemApi Allows applications to call into AccountAuthenticators.
1109    <p>Not for use by third-party applications. -->
1110    <permission android:name="android.permission.ACCOUNT_MANAGER"
1111        android:protectionLevel="signature" />
1112
1113    <!-- ================================== -->
1114    <!-- Permissions for accessing hardware that may effect battery life-->
1115    <!-- ================================== -->
1116    <eat-comment />
1117
1118    <!-- Allows applications to enter Wi-Fi Multicast mode.
1119         <p>Protection level: normal
1120    -->
1121    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
1122        android:description="@string/permdesc_changeWifiMulticastState"
1123        android:label="@string/permlab_changeWifiMulticastState"
1124        android:protectionLevel="normal" />
1125
1126    <!-- Allows access to the vibrator.
1127         <p>Protection level: normal
1128    -->
1129    <permission android:name="android.permission.VIBRATE"
1130        android:label="@string/permlab_vibrate"
1131        android:description="@string/permdesc_vibrate"
1132        android:protectionLevel="normal" />
1133
1134    <!-- Allows access to the flashlight.
1135         <p>Protection level: normal
1136    -->
1137    <permission android:name="android.permission.FLASHLIGHT"
1138        android:label="@string/permlab_flashlight"
1139        android:description="@string/permdesc_flashlight"
1140        android:protectionLevel="normal" />
1141
1142    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
1143         from dimming.
1144         <p>Protection level: normal
1145    -->
1146    <permission android:name="android.permission.WAKE_LOCK"
1147        android:label="@string/permlab_wakeLock"
1148        android:description="@string/permdesc_wakeLock"
1149        android:protectionLevel="normal" />
1150
1151    <!-- Allows using the device's IR transmitter, if available.
1152         <p>Protection level: normal
1153    -->
1154    <permission android:name="android.permission.TRANSMIT_IR"
1155        android:label="@string/permlab_transmitIr"
1156        android:description="@string/permdesc_transmitIr"
1157        android:protectionLevel="normal" />
1158
1159    <!-- ==================================================== -->
1160    <!-- Permissions related to changing audio settings   -->
1161    <!-- ==================================================== -->
1162    <eat-comment />
1163
1164    <!-- Allows an application to modify global audio settings.
1165         <p>Protection level: normal
1166    -->
1167    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
1168        android:label="@string/permlab_modifyAudioSettings"
1169        android:description="@string/permdesc_modifyAudioSettings"
1170        android:protectionLevel="normal" />
1171
1172    <!-- ================================== -->
1173    <!-- Permissions for accessing hardware -->
1174    <!-- ================================== -->
1175    <eat-comment />
1176
1177    <!-- @SystemApi Allows an application to manage preferences and permissions for USB devices
1178         @hide -->
1179    <permission android:name="android.permission.MANAGE_USB"
1180        android:protectionLevel="signature|privileged" />
1181
1182    <!-- @SystemApi Allows an application to access the MTP USB kernel driver.
1183         For use only by the device side MTP implementation.
1184         @hide -->
1185    <permission android:name="android.permission.ACCESS_MTP"
1186        android:protectionLevel="signature|privileged" />
1187
1188    <!-- @SystemApi Allows access to hardware peripherals.  Intended only for hardware testing.
1189         <p>Not for use by third-party applications.
1190         @hide
1191    -->
1192    <permission android:name="android.permission.HARDWARE_TEST"
1193        android:protectionLevel="signature" />
1194
1195    <!-- @SystemApi Allows access to FM
1196         @hide This is not a third-party API (intended for system apps).-->
1197    <permission android:name="android.permission.ACCESS_FM_RADIO"
1198        android:protectionLevel="signature|privileged" />
1199
1200    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
1201         @hide -->
1202    <permission android:name="android.permission.NET_ADMIN"
1203        android:protectionLevel="signature" />
1204
1205    <!-- Allows registration for remote audio playback. @hide -->
1206    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
1207        android:protectionLevel="signature" />
1208
1209    <!-- @SystemApi Allows TvInputService to access underlying TV input hardware such as
1210         built-in tuners and HDMI-in's.
1211         @hide This should only be used by OEM's TvInputService's.
1212    -->
1213    <permission android:name="android.permission.TV_INPUT_HARDWARE"
1214        android:protectionLevel="signature|privileged" />
1215
1216    <!-- @SystemApi Allows to capture a frame of TV input hardware such as
1217         built-in tuners and HDMI-in's.
1218         @hide <p>Not for use by third-party applications.
1219    -->
1220    <permission android:name="android.permission.CAPTURE_TV_INPUT"
1221        android:protectionLevel="signature|privileged" />
1222
1223    <!-- @hide Allows TvInputService to access DVB device.
1224   <p>Not for use by third-party applications. -->
1225    <permission android:name="android.permission.DVB_DEVICE"
1226        android:protectionLevel="signature|privileged" />
1227
1228    <!-- @hide Allows enabling/disabling OEM unlock
1229   <p>Not for use by third-party applications. -->
1230    <permission android:name="android.permission.OEM_UNLOCK_STATE"
1231        android:protectionLevel="signature" />
1232
1233    <!-- @hide Allows querying state of PersistentDataBlock
1234   <p>Not for use by third-party applications. -->
1235    <permission android:name="android.permission.ACCESS_PDB_STATE"
1236        android:protectionLevel="signature" />
1237
1238    <!-- @hide Allows system update service to notify device owner about pending updates.
1239   <p>Not for use by third-party applications. -->
1240    <permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE"
1241        android:protectionLevel="signature|privileged" />
1242
1243    <!-- =========================================== -->
1244    <!-- Permissions associated with camera and image capture -->
1245    <!-- =========================================== -->
1246    <eat-comment />
1247
1248    <!-- @SystemApi Allows disabling the transmit-indicator LED that is normally on when
1249         a camera is in use by an application.
1250         @hide -->
1251    <permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"
1252        android:protectionLevel="signature|privileged" />
1253
1254    <!-- Allows sending the camera service notifications about system-wide events.
1255        @hide -->
1256    <permission android:name="android.permission.CAMERA_SEND_SYSTEM_EVENTS"
1257        android:protectionLevel="signature|privileged" />
1258
1259    <!-- =========================================== -->
1260    <!-- Permissions associated with telephony state -->
1261    <!-- =========================================== -->
1262    <eat-comment />
1263
1264    <!-- @SystemApi Allows modification of the telephony state - power on, mmi, etc.
1265         Does not include placing calls.
1266         <p>Not for use by third-party applications. -->
1267    <permission android:name="android.permission.MODIFY_PHONE_STATE"
1268        android:protectionLevel="signature|privileged" />
1269
1270    <!-- Allows read only access to precise phone state.
1271         @hide Pending API council approval -->
1272    <permission android:name="android.permission.READ_PRECISE_PHONE_STATE"
1273        android:protectionLevel="signature|privileged" />
1274
1275    <!-- @SystemApi Allows read access to privileged phone state.
1276         @hide Used internally. -->
1277    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
1278        android:protectionLevel="signature|privileged" />
1279
1280    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1281         PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. This capability indicates that the PhoneAccount
1282         corresponds to a device SIM.
1283         @hide -->
1284    <permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"
1285        android:protectionLevel="system|signature" />
1286
1287    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1288         PhoneAccount#CAPABILITY_CALL_PROVIDER.
1289         @hide -->
1290    <permission android:name="android.permission.REGISTER_CALL_PROVIDER"
1291        android:protectionLevel="system|signature" />
1292
1293    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1294         PhoneAccount#CAPABILITY_CONNECTION_MANAGER
1295         @hide -->
1296    <permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"
1297        android:protectionLevel="system|signature" />
1298
1299    <!-- Must be required by a {@link android.telecom.InCallService},
1300         to ensure that only the system can bind to it.
1301         <p>Protection level: system|signature
1302    -->
1303    <permission android:name="android.permission.BIND_INCALL_SERVICE"
1304        android:protectionLevel="system|signature" />
1305
1306    <!-- Must be required by a {@link android.telecom.ConnectionService},
1307         to ensure that only the system can bind to it.
1308         @deprecated {@link android.telecom.ConnectionService}s should require
1309                 android.permission.BIND_TELECOM_CONNECTION_SERVICE instead.
1310         @SystemApi
1311         @hide -->
1312    <permission android:name="android.permission.BIND_CONNECTION_SERVICE"
1313        android:protectionLevel="system|signature" />
1314
1315    <!-- Must be required by a {@link android.telecom.ConnectionService},
1316         to ensure that only the system can bind to it.
1317         <p>Protection level: system|signature
1318    -->
1319    <permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"
1320        android:protectionLevel="system|signature" />
1321
1322    <!-- @SystemApi Allows an application to control the in-call experience.
1323         @hide -->
1324    <permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"
1325        android:protectionLevel="system|signature" />
1326
1327    <!-- Allows an application to receive STK related commands.
1328         @hide -->
1329    <permission android:name="android.permission.RECEIVE_STK_COMMANDS"
1330        android:protectionLevel="system|signature" />
1331
1332    <!-- ================================== -->
1333    <!-- Permissions for sdcard interaction -->
1334    <!-- ================================== -->
1335    <eat-comment />
1336
1337    <!-- @SystemApi Allows an application to write to internal media storage
1338         @hide  -->
1339    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
1340        android:protectionLevel="signature|privileged" />
1341
1342    <!-- Allows an application to manage access to documents, usually as part
1343         of a document picker.
1344         <p>Protection level: signature
1345    -->
1346    <permission android:name="android.permission.MANAGE_DOCUMENTS"
1347        android:protectionLevel="signature" />
1348
1349    <!-- ================================== -->
1350    <!-- Permissions for screenlock         -->
1351    <!-- ================================== -->
1352    <eat-comment />
1353
1354    <!-- Allows applications to disable the keyguard if it is not secure.
1355         <p>Protection level: normal
1356    -->
1357    <permission android:name="android.permission.DISABLE_KEYGUARD"
1358        android:description="@string/permdesc_disableKeyguard"
1359        android:label="@string/permlab_disableKeyguard"
1360        android:protectionLevel="normal" />
1361
1362    <!-- ================================== -->
1363    <!-- Permissions to access other installed applications  -->
1364    <!-- ================================== -->
1365    <eat-comment />
1366
1367    <!-- @deprecated No longer enforced. -->
1368    <permission android:name="android.permission.GET_TASKS"
1369        android:label="@string/permlab_getTasks"
1370        android:description="@string/permdesc_getTasks"
1371        android:protectionLevel="normal" />
1372
1373    <!-- New version of GET_TASKS that apps can request, since GET_TASKS doesn't really
1374         give access to task information.  We need this new one because there are
1375         many existing apps that use add libraries and such that have validation
1376         code to ensure the app has requested the GET_TASKS permission by seeing
1377         if it has been granted the permission...  if it hasn't, it kills the app
1378         with a message about being upset.  So we need to have it continue to look
1379         like the app is getting that permission, even though it will never be
1380         checked, and new privileged apps can now request this one for real access.
1381         @hide
1382         @SystemApi -->
1383    <permission android:name="android.permission.REAL_GET_TASKS"
1384        android:protectionLevel="signature|privileged" />
1385
1386    <!-- Allows an application to start a task from a ActivityManager#RecentTaskInfo.
1387         @hide -->
1388    <permission android:name="android.permission.START_TASKS_FROM_RECENTS"
1389        android:protectionLevel="signature|privileged" />
1390
1391    <!-- @SystemApi @hide Allows an application to call APIs that allow it to do interactions
1392         across the users on the device, using singleton services and
1393         user-targeted broadcasts.  This permission is not available to
1394         third party applications. -->
1395    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
1396        android:protectionLevel="signature|privileged|development" />
1397
1398    <!-- @hide Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
1399         that removes restrictions on where broadcasts can be sent and allows other
1400         types of interactions. -->
1401    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
1402        android:protectionLevel="signature|installer" />
1403
1404    <!-- @SystemApi @hide Allows an application to call APIs that allow it to query and manage
1405         users on the device. This permission is not available to
1406         third party applications. -->
1407    <permission android:name="android.permission.MANAGE_USERS"
1408        android:protectionLevel="signature|privileged" />
1409
1410    <!-- @hide Allows an application to set the profile owners and the device owner.
1411         This permission is not available to third party applications.-->
1412    <permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"
1413        android:protectionLevel="signature"
1414        android:label="@string/permlab_manageProfileAndDeviceOwners"
1415        android:description="@string/permdesc_manageProfileAndDeviceOwners" />
1416
1417    <!-- Allows an application to get full detailed information about
1418         recently running tasks, with full fidelity to the real state.
1419         @hide -->
1420    <permission android:name="android.permission.GET_DETAILED_TASKS"
1421        android:protectionLevel="signature" />
1422
1423    <!-- Allows an application to change the Z-order of tasks.
1424         <p>Protection level: normal
1425    -->
1426    <permission android:name="android.permission.REORDER_TASKS"
1427        android:label="@string/permlab_reorderTasks"
1428        android:description="@string/permdesc_reorderTasks"
1429        android:protectionLevel="normal" />
1430
1431    <!-- @hide Allows an application to change to remove/kill tasks -->
1432    <permission android:name="android.permission.REMOVE_TASKS"
1433        android:protectionLevel="signature" />
1434
1435    <!-- @SystemApi @hide Allows an application to create/manage/remove stacks -->
1436    <permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"
1437        android:protectionLevel="signature|privileged" />
1438
1439    <!-- Allows an application to start any activity, regardless of permission
1440         protection or exported state.
1441         @hide -->
1442    <permission android:name="android.permission.START_ANY_ACTIVITY"
1443        android:protectionLevel="signature" />
1444
1445    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
1446        API is no longer supported. -->
1447    <permission android:name="android.permission.RESTART_PACKAGES"
1448        android:label="@string/permlab_killBackgroundProcesses"
1449        android:description="@string/permdesc_killBackgroundProcesses"
1450        android:protectionLevel="normal" />
1451
1452    <!-- Allows an application to call
1453        {@link android.app.ActivityManager#killBackgroundProcesses}.
1454         <p>Protection level: normal
1455    -->
1456    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
1457        android:label="@string/permlab_killBackgroundProcesses"
1458        android:description="@string/permdesc_killBackgroundProcesses"
1459        android:protectionLevel="normal" />
1460
1461    <!-- @SystemApi @hide Allows an application to retrieve a package's importance.
1462         This permission is not available to third party applications. -->
1463    <permission android:name="android.permission.GET_PACKAGE_IMPORTANCE"
1464        android:protectionLevel="signature|privileged" />
1465
1466    <!-- ================================== -->
1467    <!-- Permissions affecting the display of other applications  -->
1468    <!-- ================================== -->
1469    <eat-comment />
1470
1471    <!-- Allows an application to open windows using the type
1472         {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
1473         shown on top of all other applications.  Very few applications
1474         should use this permission; these windows are intended for
1475         system-level interaction with the user. -->
1476    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
1477        android:label="@string/permlab_systemAlertWindow"
1478        android:description="@string/permdesc_systemAlertWindow"
1479        android:protectionLevel="signature|preinstalled|appop|pre23|development" />
1480
1481    <!-- ================================== -->
1482    <!-- Permissions affecting the system wallpaper -->
1483    <!-- ================================== -->
1484    <eat-comment />
1485
1486    <!-- Allows applications to set the wallpaper.
1487         <p>Protection level: normal
1488     -->
1489    <permission android:name="android.permission.SET_WALLPAPER"
1490        android:label="@string/permlab_setWallpaper"
1491        android:description="@string/permdesc_setWallpaper"
1492        android:protectionLevel="normal" />
1493
1494    <!-- Allows applications to set the wallpaper hints.
1495         <p>Protection level: normal
1496    -->
1497    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
1498        android:label="@string/permlab_setWallpaperHints"
1499        android:description="@string/permdesc_setWallpaperHints"
1500        android:protectionLevel="normal" />
1501
1502    <!-- ============================================ -->
1503    <!-- Permissions for changing the system clock -->
1504    <!-- ============================================ -->
1505    <eat-comment />
1506
1507    <!-- @SystemApi Allows applications to set the system time.
1508    <p>Not for use by third-party applications. -->
1509    <permission android:name="android.permission.SET_TIME"
1510        android:protectionLevel="signature|privileged" />
1511
1512    <!-- Allows applications to set the system time zone.
1513         <p>Protection level: normal
1514    -->
1515    <permission android:name="android.permission.SET_TIME_ZONE"
1516        android:label="@string/permlab_setTimeZone"
1517        android:description="@string/permdesc_setTimeZone"
1518        android:protectionLevel="normal" />
1519
1520    <!-- ==================================================== -->
1521    <!-- Permissions related to changing status bar   -->
1522    <!-- ==================================================== -->
1523    <eat-comment />
1524
1525    <!-- Allows an application to expand or collapse the status bar.
1526         <p>Protection level: normal
1527    -->
1528    <permission android:name="android.permission.EXPAND_STATUS_BAR"
1529        android:label="@string/permlab_expandStatusBar"
1530        android:description="@string/permdesc_expandStatusBar"
1531        android:protectionLevel="normal" />
1532
1533    <!-- ============================================================== -->
1534    <!-- Permissions related to adding/removing shortcuts from Launcher -->
1535    <!-- ============================================================== -->
1536    <eat-comment />
1537
1538    <!-- Allows an application to install a shortcut in Launcher.
1539         <p>Protection level: normal
1540    -->
1541    <permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
1542        android:label="@string/permlab_install_shortcut"
1543        android:description="@string/permdesc_install_shortcut"
1544        android:protectionLevel="normal"/>
1545
1546    <!-- Allows an application to uninstall a shortcut in Launcher.
1547         <p>Protection level: normal
1548    -->
1549    <permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"
1550        android:label="@string/permlab_uninstall_shortcut"
1551        android:description="@string/permdesc_uninstall_shortcut"
1552        android:protectionLevel="normal"/>
1553
1554    <!-- ==================================================== -->
1555    <!-- Permissions related to accessing sync settings   -->
1556    <!-- ==================================================== -->
1557    <eat-comment />
1558
1559    <!-- Allows applications to read the sync settings.
1560         <p>Protection level: normal
1561    -->
1562    <permission android:name="android.permission.READ_SYNC_SETTINGS"
1563        android:description="@string/permdesc_readSyncSettings"
1564        android:label="@string/permlab_readSyncSettings"
1565        android:protectionLevel="normal" />
1566
1567    <!-- Allows applications to write the sync settings.
1568         <p>Protection level: normal
1569    -->
1570    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
1571        android:description="@string/permdesc_writeSyncSettings"
1572        android:label="@string/permlab_writeSyncSettings"
1573        android:protectionLevel="normal" />
1574
1575    <!-- Allows applications to read the sync stats.
1576         <p>Protection level: normal
1577    -->
1578    <permission android:name="android.permission.READ_SYNC_STATS"
1579        android:description="@string/permdesc_readSyncStats"
1580        android:label="@string/permlab_readSyncStats"
1581        android:protectionLevel="normal" />
1582
1583    <!-- ============================================ -->
1584    <!-- Permissions for low-level system interaction -->
1585    <!-- ============================================ -->
1586    <eat-comment />
1587
1588    <!-- @SystemApi @hide Change the screen compatibility mode of applications -->
1589    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
1590        android:protectionLevel="signature" />
1591
1592    <!-- @SystemApi Allows an application to modify the current configuration, such
1593         as locale. -->
1594    <permission android:name="android.permission.CHANGE_CONFIGURATION"
1595        android:protectionLevel="signature|privileged|development" />
1596
1597    <!-- Allows an application to read or write the system settings.
1598         <p>Protection level: signature
1599    -->
1600    <permission android:name="android.permission.WRITE_SETTINGS"
1601        android:label="@string/permlab_writeSettings"
1602        android:description="@string/permdesc_writeSettings"
1603        android:protectionLevel="signature|preinstalled|appop|pre23" />
1604
1605    <!-- @SystemApi Allows an application to modify the Google service map.
1606    <p>Not for use by third-party applications. -->
1607    <permission android:name="android.permission.WRITE_GSERVICES"
1608        android:protectionLevel="signature|privileged" />
1609
1610    <!-- @SystemApi Allows an application to call
1611        {@link android.app.ActivityManager#forceStopPackage}.
1612        @hide -->
1613    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
1614        android:protectionLevel="signature|privileged" />
1615
1616    <!-- @SystemApi @hide Allows an application to retrieve the content of the active window
1617         An active window is the window that has fired an accessibility event. -->
1618    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
1619        android:protectionLevel="signature|privileged" />
1620
1621    <!-- @SystemApi Modify the global animation scaling factor.
1622    <p>Not for use by third-party applications. -->
1623    <permission android:name="android.permission.SET_ANIMATION_SCALE"
1624        android:protectionLevel="signature|privileged|development" />
1625
1626    <!-- @deprecated This functionality will be removed in the future; please do
1627         not use. Allow an application to make its activities persistent. -->
1628    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
1629        android:label="@string/permlab_persistentActivity"
1630        android:description="@string/permdesc_persistentActivity"
1631        android:protectionLevel="normal" />
1632
1633    <!-- Allows an application to find out the space used by any package.
1634         <p>Protection level: normal
1635    -->
1636    <permission android:name="android.permission.GET_PACKAGE_SIZE"
1637        android:label="@string/permlab_getPackageSize"
1638        android:description="@string/permdesc_getPackageSize"
1639        android:protectionLevel="normal" />
1640
1641    <!-- @deprecated No longer useful, see
1642         {@link android.content.pm.PackageManager#addPackageToPreferred}
1643         for details. -->
1644    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
1645        android:protectionLevel="signature" />
1646
1647    <!-- Allows an application to receive the
1648         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
1649         broadcast after the system finishes booting.  If you don't
1650         request this permission, you will not receive the broadcast at
1651         that time.  Though holding this permission does not have any
1652         security implications, it can have a negative impact on the
1653         user experience by increasing the amount of time it takes the
1654         system to start and allowing applications to have themselves
1655         running without the user being aware of them.  As such, you must
1656         explicitly declare your use of this facility to make that visible
1657         to the user.
1658         <p>Protection level: normal
1659    -->
1660    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
1661        android:label="@string/permlab_receiveBootCompleted"
1662        android:description="@string/permdesc_receiveBootCompleted"
1663        android:protectionLevel="normal" />
1664
1665    <!-- Allows an application to broadcast sticky intents.  These are
1666         broadcasts whose data is held by the system after being finished,
1667         so that clients can quickly retrieve that data without having
1668         to wait for the next broadcast.
1669         <p>Protection level: normal
1670    -->
1671    <permission android:name="android.permission.BROADCAST_STICKY"
1672        android:label="@string/permlab_broadcastSticky"
1673        android:description="@string/permdesc_broadcastSticky"
1674        android:protectionLevel="normal" />
1675
1676    <!-- @SystemApi Allows mounting and unmounting file systems for removable storage.
1677    <p>Not for use by third-party applications.-->
1678    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
1679        android:protectionLevel="system|signature" />
1680
1681    <!-- @SystemApi Allows formatting file systems for removable storage.
1682    <p>Not for use by third-party applications. -->
1683    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
1684        android:protectionLevel="system|signature" />
1685
1686    <!-- @hide -->
1687    <permission android:name="android.permission.STORAGE_INTERNAL"
1688        android:protectionLevel="signature" />
1689
1690    <!-- Allows access to ASEC non-destructive API calls
1691         @hide  -->
1692    <permission android:name="android.permission.ASEC_ACCESS"
1693        android:protectionLevel="signature" />
1694
1695    <!-- Allows creation of ASEC volumes
1696         @hide  -->
1697    <permission android:name="android.permission.ASEC_CREATE"
1698        android:protectionLevel="signature" />
1699
1700    <!-- Allows destruction of ASEC volumes
1701         @hide  -->
1702    <permission android:name="android.permission.ASEC_DESTROY"
1703        android:protectionLevel="signature" />
1704
1705    <!-- Allows mount / unmount of ASEC volumes
1706         @hide  -->
1707    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
1708        android:protectionLevel="signature" />
1709
1710    <!-- Allows rename of ASEC volumes
1711         @hide  -->
1712    <permission android:name="android.permission.ASEC_RENAME"
1713        android:protectionLevel="signature" />
1714
1715    <!-- @SystemApi Allows applications to write the apn settings.
1716    <p>Not for use by third-party applications. -->
1717    <permission android:name="android.permission.WRITE_APN_SETTINGS"
1718        android:protectionLevel="signature|privileged" />
1719
1720    <!-- Allows applications to change network connectivity state.
1721         <p>Protection level: normal
1722    -->
1723    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
1724        android:description="@string/permdesc_changeNetworkState"
1725        android:label="@string/permlab_changeNetworkState"
1726        android:protectionLevel="normal" />
1727
1728    <!-- Allows an application to clear the caches of all installed
1729         applications on the device.
1730         <p>Protection level: system|signature
1731    -->
1732    <permission android:name="android.permission.CLEAR_APP_CACHE"
1733        android:protectionLevel="signature|privileged" />
1734
1735    <!-- @SystemApi Allows an application to use any media decoder when decoding for playback
1736         @hide -->
1737    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
1738        android:protectionLevel="signature|privileged" />
1739
1740    <!-- @SystemApi Allows an application to install and/or uninstall CA certificates on
1741         behalf of the user.
1742         @hide -->
1743    <permission android:name="android.permission.MANAGE_CA_CERTIFICATES"
1744        android:protectionLevel="signature|privileged" />
1745
1746    <!-- @SystemApi Allows an application to do certain operations needed for
1747         interacting with the recovery (system update) system.
1748         @hide -->
1749    <permission android:name="android.permission.RECOVERY"
1750        android:protectionLevel="signature|privileged" />
1751
1752    <!-- Allows the system to bind to an application's task services
1753         @hide -->
1754    <permission android:name="android.permission.BIND_JOB_SERVICE"
1755        android:protectionLevel="signature" />
1756    <uses-permission android:name="android.permission.BIND_JOB_SERVICE"/>
1757
1758    <!-- Allows an application to initiate configuration updates
1759         <p>An application requesting this permission is responsible for
1760         verifying the source and integrity of any update before passing
1761         it off to the various individual installer components
1762         @hide -->
1763    <permission android:name="android.permission.UPDATE_CONFIG"
1764        android:protectionLevel="signature|privileged" />
1765
1766    <!-- ========================================= -->
1767    <!-- Permissions for special development tools -->
1768    <!-- ========================================= -->
1769    <eat-comment />
1770
1771    <!-- @SystemApi Allows an application to read or write the secure system settings.
1772    <p>Not for use by third-party applications. -->
1773    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
1774        android:protectionLevel="signature|privileged|development" />
1775
1776    <!-- @SystemApi Allows an application to retrieve state dump information from system services.
1777    <p>Not for use by third-party applications. -->
1778    <permission android:name="android.permission.DUMP"
1779        android:protectionLevel="signature|privileged|development" />
1780
1781    <!-- @SystemApi Allows an application to read the low-level system log files.
1782    <p>Not for use by third-party applications, because
1783    Log entries can contain the user's private information. -->
1784    <permission android:name="android.permission.READ_LOGS"
1785        android:protectionLevel="signature|privileged|development" />
1786
1787    <!-- @SystemApi Configure an application for debugging.
1788    <p>Not for use by third-party applications. -->
1789    <permission android:name="android.permission.SET_DEBUG_APP"
1790        android:protectionLevel="signature|privileged|development" />
1791
1792    <!-- @SystemApi Allows an application to set the maximum number of (not needed)
1793         application processes that can be running.
1794         <p>Not for use by third-party applications. -->
1795    <permission android:name="android.permission.SET_PROCESS_LIMIT"
1796        android:protectionLevel="signature|privileged|development" />
1797
1798    <!-- @SystemApi Allows an application to control whether activities are immediately
1799         finished when put in the background.
1800         <p>Not for use by third-party applications. -->
1801    <permission android:name="android.permission.SET_ALWAYS_FINISH"
1802        android:protectionLevel="signature|privileged|development" />
1803
1804    <!-- @SystemApi Allow an application to request that a signal be sent to all persistent processes.
1805    <p>Not for use by third-party applications. -->
1806    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
1807        android:protectionLevel="signature|privileged|development" />
1808
1809    <!-- ==================================== -->
1810    <!-- Private permissions                  -->
1811    <!-- ==================================== -->
1812    <eat-comment />
1813
1814    <!-- @SystemApi Allows access to the list of accounts in the Accounts Service. -->
1815    <permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"
1816        android:protectionLevel="signature|privileged" />
1817
1818    <!-- @SystemApi Allows applications to RW to diagnostic resources.
1819    <p>Not for use by third-party applications. -->
1820    <permission android:name="android.permission.DIAGNOSTIC"
1821        android:protectionLevel="signature" />
1822
1823    <!-- @SystemApi Allows an application to open, close, or disable the status bar
1824         and its icons.
1825         <p>Not for use by third-party applications. -->
1826    <permission android:name="android.permission.STATUS_BAR"
1827        android:protectionLevel="signature|privileged" />
1828
1829    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
1830    @hide -->
1831    <permission android:name="android.permission.STATUS_BAR_SERVICE"
1832        android:protectionLevel="signature" />
1833
1834    <!-- @SystemApi Allows an application to force a BACK operation on whatever is the
1835         top activity.
1836         <p>Not for use by third-party applications.
1837         @hide
1838    -->
1839    <permission android:name="android.permission.FORCE_BACK"
1840        android:protectionLevel="signature" />
1841
1842    <!-- @SystemApi Allows an application to update device statistics.
1843    <p>Not for use by third-party applications. -->
1844    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
1845        android:protectionLevel="signature|privileged" />
1846
1847    <!-- @SystemApi @hide Allows an application to collect battery statistics -->
1848    <permission android:name="android.permission.GET_APP_OPS_STATS"
1849        android:protectionLevel="signature|privileged|development" />
1850
1851    <!-- @SystemApi Allows an application to update application operation statistics. Not for
1852         use by third party apps. @hide -->
1853    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
1854        android:protectionLevel="signature|privileged|installer" />
1855
1856    <!-- @SystemApi Allows an application to open windows that are for use by parts
1857         of the system user interface.
1858         <p>Not for use by third-party applications.
1859         @hide
1860    -->
1861    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
1862        android:protectionLevel="signature" />
1863
1864    <!-- @SystemApi Allows an application to manage (create, destroy,
1865         Z-order) application tokens in the window manager.
1866         <p>Not for use by third-party applications.
1867         @hide
1868    -->
1869    <permission android:name="android.permission.MANAGE_APP_TOKENS"
1870        android:protectionLevel="signature" />
1871
1872    <!-- @hide Allows the application to temporarily freeze the screen for a
1873         full-screen transition. -->
1874    <permission android:name="android.permission.FREEZE_SCREEN"
1875        android:protectionLevel="signature" />
1876
1877    <!-- @SystemApi Allows an application to inject user events (keys, touch, trackball)
1878         into the event stream and deliver them to ANY window.  Without this
1879         permission, you can only deliver events to windows in your own process.
1880         <p>Not for use by third-party applications.
1881         @hide
1882    -->
1883    <permission android:name="android.permission.INJECT_EVENTS"
1884        android:protectionLevel="signature" />
1885
1886    <!-- @hide Allows an application to register an input filter which filters the stream
1887         of user events (keys, touch, trackball) before they are dispatched to any window. -->
1888    <permission android:name="android.permission.FILTER_EVENTS"
1889        android:protectionLevel="signature" />
1890
1891    <!-- @hide Allows an application to retrieve the window token from the accessibility manager. -->
1892    <permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"
1893        android:protectionLevel="signature" />
1894
1895    <!-- @hide Allows an application to collect frame statistics -->
1896    <permission android:name="android.permission.FRAME_STATS"
1897         android:protectionLevel="signature" />
1898
1899    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
1900    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
1901        android:protectionLevel="signature" />
1902
1903    <!-- @SystemApi Allows an application to watch and control how activities are
1904         started globally in the system.  Only for is in debugging
1905         (usually the monkey command).
1906         <p>Not for use by third-party applications.
1907         @hide
1908    -->
1909    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
1910        android:protectionLevel="signature" />
1911
1912    <!-- @SystemApi Allows an application to call the activity manager shutdown() API
1913         to put the higher-level system there into a shutdown state.
1914         @hide -->
1915    <permission android:name="android.permission.SHUTDOWN"
1916        android:protectionLevel="signature|privileged" />
1917
1918    <!-- @SystemApi Allows an application to tell the activity manager to temporarily
1919         stop application switches, putting it into a special mode that
1920         prevents applications from immediately switching away from some
1921         critical UI such as the home screen.
1922         @hide -->
1923    <permission android:name="android.permission.STOP_APP_SWITCHES"
1924        android:protectionLevel="signature|privileged" />
1925
1926    <!-- @SystemApi Allows an application to retrieve private information about
1927         the current top activity, such as any assist context it can provide.
1928         <p>Not for use by third-party applications.
1929         @hide
1930    -->
1931    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
1932        android:protectionLevel="signature" />
1933
1934    <!-- Allows an application to retrieve the current state of keys and
1935         switches.
1936         <p>Not for use by third-party applications.
1937         @deprecated The API that used this permission has been removed. -->
1938    <permission android:name="android.permission.READ_INPUT_STATE"
1939        android:protectionLevel="signature" />
1940
1941    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
1942         to ensure that only the system can bind to it.
1943         <p>Protection level: signature
1944    -->
1945    <permission android:name="android.permission.BIND_INPUT_METHOD"
1946        android:protectionLevel="signature" />
1947
1948    <!-- Must be required by an {@link android.media.midi.MidiDeviceService},
1949         to ensure that only the system can bind to it.
1950         <p>Protection level: signature
1951    -->
1952    <permission android:name="android.permission.BIND_MIDI_DEVICE_SERVICE"
1953        android:protectionLevel="signature" />
1954
1955    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
1956         to ensure that only the system can bind to it.
1957         <p>Protection level: signature
1958    -->
1959    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
1960        android:protectionLevel="signature" />
1961
1962    <!-- Must be required by a {@link android.printservice.PrintService},
1963         to ensure that only the system can bind to it.
1964         <p>Protection level: signature
1965    -->
1966    <permission android:name="android.permission.BIND_PRINT_SERVICE"
1967        android:protectionLevel="signature" />
1968
1969    <!-- Must be required by a {@link android.nfc.cardemulation.HostApduService}
1970         or {@link android.nfc.cardemulation.OffHostApduService} to ensure that only
1971         the system can bind to it.
1972         <p>Protection level: signature
1973    -->
1974    <permission android:name="android.permission.BIND_NFC_SERVICE"
1975        android:protectionLevel="signature" />
1976
1977    <!-- Must be required by the PrintSpooler to ensure that only the system can bind to it.
1978         @hide -->
1979    <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
1980        android:protectionLevel="signature" />
1981
1982    <!-- Must be required by a TextService (e.g. SpellCheckerService)
1983         to ensure that only the system can bind to it.
1984         <p>Protection level: signature
1985    -->
1986    <permission android:name="android.permission.BIND_TEXT_SERVICE"
1987        android:protectionLevel="signature" />
1988
1989    <!-- Must be required by a {@link android.net.VpnService},
1990         to ensure that only the system can bind to it.
1991         <p>Protection level: signature
1992    -->
1993    <permission android:name="android.permission.BIND_VPN_SERVICE"
1994        android:protectionLevel="signature" />
1995
1996    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
1997         to ensure that only the system can bind to it.
1998         <p>Protection level: system|signature
1999    -->
2000    <permission android:name="android.permission.BIND_WALLPAPER"
2001        android:protectionLevel="signature|privileged" />
2002
2003    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService},
2004         to ensure that only the system can bind to it.
2005         <p>Protection level: signature
2006    -->
2007    <permission android:name="android.permission.BIND_VOICE_INTERACTION"
2008        android:protectionLevel="signature" />
2009
2010    <!-- Must be required by hotword enrollment application,
2011         to ensure that only the system can interact with it.
2012         @hide <p>Not for use by third-party applications.</p> -->
2013    <permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"
2014        android:protectionLevel="signature|privileged" />
2015
2016    <!-- Must be required by a {@link com.android.media.remotedisplay.RemoteDisplayProvider},
2017         to ensure that only the system can bind to it.
2018         @hide -->
2019    <permission android:name="android.permission.BIND_REMOTE_DISPLAY"
2020        android:protectionLevel="signature" />
2021
2022    <!-- Must be required by a {@link android.media.tv.TvInputService}
2023         to ensure that only the system can bind to it.
2024         <p>Protection level: signature
2025    -->
2026    <permission android:name="android.permission.BIND_TV_INPUT"
2027        android:protectionLevel="signature|privileged" />
2028
2029    <!-- @SystemApi Allows an application to modify parental controls
2030         <p>Not for use by third-party applications.
2031         @hide -->
2032    <permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"
2033        android:protectionLevel="signature|privileged" />
2034
2035    <!-- Must be required by a {@link android.media.routing.MediaRouteService}
2036         to ensure that only the system can interact with it.
2037         @hide -->
2038    <permission android:name="android.permission.BIND_ROUTE_PROVIDER"
2039        android:protectionLevel="signature" />
2040
2041    <!-- Must be required by device administration receiver, to ensure that only the
2042         system can interact with it.
2043         <p>Protection level: signature
2044    -->
2045    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
2046        android:protectionLevel="signature" />
2047
2048    <!-- @SystemApi Required to add or remove another application as a device admin.
2049         <p>Not for use by third-party applications.
2050         @hide -->
2051    <permission android:name="android.permission.MANAGE_DEVICE_ADMINS"
2052        android:protectionLevel="signature|privileged" />
2053
2054    <!-- @SystemApi Allows low-level access to setting the orientation (actually
2055         rotation) of the screen.
2056         <p>Not for use by third-party applications.
2057         @hide
2058    -->
2059    <permission android:name="android.permission.SET_ORIENTATION"
2060        android:protectionLevel="signature" />
2061
2062    <!-- @SystemApi Allows low-level access to setting the pointer speed.
2063         <p>Not for use by third-party applications.
2064         @hide
2065    -->
2066    <permission android:name="android.permission.SET_POINTER_SPEED"
2067        android:protectionLevel="signature" />
2068
2069    <!-- Allows low-level access to setting input device calibration.
2070         <p>Not for use by normal applications.
2071         @hide -->
2072    <permission android:name="android.permission.SET_INPUT_CALIBRATION"
2073        android:protectionLevel="signature" />
2074
2075    <!-- Allows low-level access to setting the keyboard layout.
2076         <p>Not for use by third-party applications.
2077         @hide -->
2078    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
2079        android:protectionLevel="signature" />
2080
2081    <!-- Allows an application to query tablet mode state and monitor changes
2082         in it.
2083         <p>Not for use by third-party applications.
2084         @hide -->
2085    <permission android:name="android.permission.TABLET_MODE"
2086        android:protectionLevel="signature" />
2087
2088    <!-- Allows an application to request installing packages. Apps
2089         targeting APIs greater than 22 must hold this permission in
2090         order to use {@link android.content.Intent#ACTION_INSTALL_PACKAGE}.
2091         <p>Protection level: normal
2092    -->
2093    <permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"
2094        android:label="@string/permlab_requestInstallPackages"
2095        android:description="@string/permdesc_requestInstallPackages"
2096        android:protectionLevel="normal" />
2097
2098    <!-- @SystemApi Allows an application to install packages.
2099    <p>Not for use by third-party applications. -->
2100    <permission android:name="android.permission.INSTALL_PACKAGES"
2101        android:protectionLevel="signature|privileged" />
2102
2103    <!-- @SystemApi Allows an application to clear user data.
2104         <p>Not for use by third-party applications
2105         @hide
2106    -->
2107    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
2108        android:protectionLevel="signature|installer" />
2109
2110    <!-- @SystemApi Allows an application to delete cache files.
2111    <p>Not for use by third-party applications. -->
2112    <permission android:name="android.permission.DELETE_CACHE_FILES"
2113        android:protectionLevel="signature|privileged" />
2114
2115    <!-- @SystemApi Allows an application to delete packages.
2116    <p>Not for use by third-party applications. -->
2117    <permission android:name="android.permission.DELETE_PACKAGES"
2118        android:protectionLevel="signature|privileged" />
2119
2120    <!-- @SystemApi Allows an application to move location of installed package.
2121         @hide -->
2122    <permission android:name="android.permission.MOVE_PACKAGE"
2123        android:protectionLevel="signature|privileged" />
2124
2125    <!-- @SystemApi Allows an application to change whether an application component (other than its own) is
2126         enabled or not.
2127         <p>Not for use by third-party applications. -->
2128    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
2129        android:protectionLevel="signature|privileged" />
2130
2131    <!-- Allows an application to grant specific permissions.
2132         @hide -->
2133    <permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"
2134        android:protectionLevel="signature|installer|verifier" />
2135
2136    <!-- Allows an app that has this permission and the permissions to install packages
2137         to request certain runtime permissions to be granted at installation.
2138         @hide
2139         @SystemApi -->
2140    <permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"
2141        android:protectionLevel="signature|installer|verifier" />
2142
2143    <!-- Allows an application to revoke specific permissions.
2144        @hide
2145        @SystemApi -->
2146    <permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"
2147         android:protectionLevel="signature|installer|verifier" />
2148
2149    <!-- @hide Allows an application to observe permission changes. -->
2150    <permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS"
2151        android:protectionLevel="signature|privileged" />
2152
2153    <!-- @SystemApi Allows an application to use SurfaceFlinger's low level features.
2154         <p>Not for use by third-party applications.
2155         @hide
2156    -->
2157    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
2158        android:protectionLevel="signature" />
2159
2160    <!-- @SystemApi Allows an application to take screen shots and more generally
2161         get access to the frame buffer data.
2162         <p>Not for use by third-party applications. -->
2163    <permission android:name="android.permission.READ_FRAME_BUFFER"
2164        android:protectionLevel="signature|privileged" />
2165
2166    <!-- Allows an application to use InputFlinger's low level features.
2167         @hide -->
2168    <permission android:name="android.permission.ACCESS_INPUT_FLINGER"
2169        android:protectionLevel="signature" />
2170
2171    <!-- Allows an application to configure and connect to Wifi displays
2172         @hide -->
2173    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
2174        android:protectionLevel="signature" />
2175
2176    <!-- Allows an application to control low-level features of Wifi displays
2177         such as opening an RTSP socket.  This permission should only be used
2178         by the display manager.
2179         @hide -->
2180    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
2181        android:protectionLevel="signature" />
2182
2183    <!-- Allows an application to control the color transforms applied to
2184         displays system-wide.
2185         <p>Not for use by third-party applications.</p>
2186         @hide -->
2187    <permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_TRANSFORM"
2188        android:protectionLevel="signature" />
2189
2190    <!-- @SystemApi Allows an application to control VPN.
2191         <p>Not for use by third-party applications.</p>
2192         @hide -->
2193    <permission android:name="android.permission.CONTROL_VPN"
2194        android:protectionLevel="signature|privileged" />
2195    <uses-permission android:name="android.permission.CONTROL_VPN" />
2196
2197    <!-- @SystemApi Allows an application to capture audio output.
2198         <p>Not for use by third-party applications.</p> -->
2199    <permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
2200        android:protectionLevel="signature|privileged" />
2201
2202    <!-- @SystemApi Allows an application to capture audio for hotword detection.
2203         <p>Not for use by third-party applications.</p>
2204         @hide -->
2205    <permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"
2206        android:protectionLevel="signature|privileged" />
2207
2208    <!-- @SystemApi Allows an application to modify audio routing and override policy decisions.
2209         <p>Not for use by third-party applications.</p>
2210         @hide -->
2211    <permission android:name="android.permission.MODIFY_AUDIO_ROUTING"
2212        android:protectionLevel="signature|privileged" />
2213
2214    <!-- @SystemApi Allows an application to capture video output.
2215         <p>Not for use by third-party applications.</p> -->
2216    <permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"
2217        android:protectionLevel="signature|privileged" />
2218
2219    <!-- @SystemApi Allows an application to capture secure video output.
2220         <p>Not for use by third-party applications.</p> -->
2221    <permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"
2222        android:protectionLevel="signature|privileged" />
2223
2224    <!-- @SystemApi Allows an application to know what content is playing and control its playback.
2225         <p>Not for use by third-party applications due to privacy of media consumption</p>  -->
2226    <permission android:name="android.permission.MEDIA_CONTENT_CONTROL"
2227        android:protectionLevel="signature|privileged" />
2228
2229    <!-- @SystemApi Required to be able to disable the device (very dangerous!).
2230         <p>Not for use by third-party applications.
2231         @hide
2232    -->
2233    <permission android:name="android.permission.BRICK"
2234        android:protectionLevel="signature" />
2235
2236    <!-- @SystemApi Required to be able to reboot the device.
2237    <p>Not for use by third-party applications. -->
2238    <permission android:name="android.permission.REBOOT"
2239        android:protectionLevel="signature|privileged" />
2240
2241   <!-- @SystemApi Allows low-level access to power management.
2242        <p>Not for use by third-party applications.
2243        @hide
2244    -->
2245   <permission android:name="android.permission.DEVICE_POWER"
2246        android:protectionLevel="signature" />
2247
2248   <!-- Allows access to the PowerManager.userActivity function.
2249   <p>Not for use by third-party applications. @hide @SystemApi -->
2250    <permission android:name="android.permission.USER_ACTIVITY"
2251        android:protectionLevel="signature|privileged" />
2252
2253   <!-- @hide Allows low-level access to tun tap driver -->
2254    <permission android:name="android.permission.NET_TUNNELING"
2255        android:protectionLevel="signature" />
2256
2257    <!-- Run as a manufacturer test application, running as the root user.
2258         Only available when the device is running in manufacturer test mode.
2259         <p>Not for use by third-party applications.
2260    -->
2261    <permission android:name="android.permission.FACTORY_TEST"
2262        android:protectionLevel="signature" />
2263
2264    <!-- Allows an application to broadcast a notification that an application
2265         package has been removed.
2266         <p>Not for use by third-party applications.
2267    -->
2268    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
2269        android:protectionLevel="signature" />
2270
2271    <!-- Allows an application to broadcast an SMS receipt notification.
2272         <p>Not for use by third-party applications.
2273    -->
2274    <permission android:name="android.permission.BROADCAST_SMS"
2275        android:protectionLevel="signature" />
2276
2277    <!-- Allows an application to broadcast a WAP PUSH receipt notification.
2278         <p>Not for use by third-party applications.
2279    -->
2280    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
2281        android:protectionLevel="signature" />
2282
2283    <!-- @SystemApi Allows an application to broadcast privileged networking requests.
2284         <p>Not for use by third-party applications. @hide -->
2285    <permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"
2286        android:protectionLevel="signature|privileged" />
2287
2288    <!-- @SystemApi Not for use by third-party applications. -->
2289    <permission android:name="android.permission.MASTER_CLEAR"
2290        android:protectionLevel="signature|privileged" />
2291
2292    <!-- @SystemApi Allows an application to call any phone number, including emergency
2293         numbers, without going through the Dialer user interface for the user
2294         to confirm the call being placed.
2295         <p>Not for use by third-party applications. -->
2296    <permission android:name="android.permission.CALL_PRIVILEGED"
2297        android:protectionLevel="signature|privileged" />
2298
2299    <!-- @SystemApi Allows an application to perform CDMA OTA provisioning @hide -->
2300    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
2301        android:protectionLevel="signature|privileged" />
2302
2303    <!-- @SystemApi Allows an application to perform SIM Activation @hide -->
2304    <permission android:name="android.permission.PERFORM_SIM_ACTIVATION"
2305        android:protectionLevel="signature|privileged" />
2306
2307    <!-- @SystemApi Allows enabling/disabling location update notifications from
2308         the radio.
2309         <p>Not for use by third-party applications. -->
2310    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
2311        android:protectionLevel="signature|privileged" />
2312
2313    <!-- @SystemApi Allows read/write access to the "properties" table in the checkin
2314         database, to change values that get uploaded.
2315         <p>Not for use by third-party applications. -->
2316    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
2317        android:protectionLevel="signature|privileged" />
2318
2319    <!-- @SystemApi Allows an application to collect component usage
2320         statistics
2321         <p>Declaring the permission implies intention to use the API and the user of the
2322         device can grant permission through the Settings application. -->
2323    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
2324        android:protectionLevel="signature|privileged|development|appop" />
2325    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
2326
2327    <!-- @hide Allows an application to change the app idle state of an app.
2328         <p>Not for use by third-party applications. -->
2329    <permission android:name="android.permission.CHANGE_APP_IDLE_STATE"
2330        android:protectionLevel="signature" />
2331
2332    <!-- @hide @SystemApi Allows an application to temporarily whitelist an inactive app to
2333         access the network and acquire wakelocks.
2334         <p>Not for use by third-party applications. -->
2335    <permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"
2336        android:protectionLevel="system|signature" />
2337
2338    <!-- Permission an application must hold in order to use
2339         {@link android.provider.Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}.
2340         This is a normal permission: an app requesting it will always be granted the
2341         permission, without the user needing to approve or see it. -->
2342    <permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"
2343        android:protectionLevel="normal" />
2344
2345    <!-- @SystemApi Allows an application to collect battery statistics -->
2346    <permission android:name="android.permission.BATTERY_STATS"
2347        android:protectionLevel="signature|privileged|development" />
2348
2349    <!-- @SystemApi Allows an application to control the backup and restore process.
2350    <p>Not for use by third-party applications.
2351         @hide pending API council -->
2352    <permission android:name="android.permission.BACKUP"
2353        android:protectionLevel="signature|privileged" />
2354
2355    <!-- Allows a package to launch the secure full-backup confirmation UI.
2356         ONLY the system process may hold this permission.
2357         @hide -->
2358    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
2359        android:protectionLevel="signature" />
2360
2361    <!-- @SystemApi Must be required by a {@link android.widget.RemoteViewsService},
2362         to ensure that only the system can bind to it. -->
2363    <permission android:name="android.permission.BIND_REMOTEVIEWS"
2364        android:protectionLevel="signature|privileged" />
2365
2366    <!-- @SystemApi Allows an application to tell the AppWidget service which application
2367         can access AppWidget's data.  The normal user flow is that a user
2368         picks an AppWidget to go into a particular host, thereby giving that
2369         host application access to the private data from the AppWidget app.
2370         An application that has this permission should honor that contract.
2371         <p>Not for use by third-party applications. -->
2372    <permission android:name="android.permission.BIND_APPWIDGET"
2373        android:protectionLevel="signature|privileged" />
2374
2375    <!-- @SystemApi Private permission, to restrict who can bring up a dialog to add a new
2376         keyguard widget
2377         @hide -->
2378    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
2379        android:protectionLevel="signature|privileged" />
2380
2381    <!-- @SystemApi Internal permission allowing an application to query/set which
2382         applications can bind AppWidgets.
2383         @hide -->
2384    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
2385        android:protectionLevel="signature|privileged" />
2386
2387    <!-- Allows applications to change the background data setting.
2388    <p>Not for use by third-party applications.
2389         @hide pending API council -->
2390    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
2391        android:protectionLevel="signature" />
2392
2393    <!-- @SystemApi This permission can be used on content providers to allow the global
2394         search system to access their data.  Typically it used when the
2395         provider has some permissions protecting it (which global search
2396         would not be expected to hold), and added as a read-only permission
2397         to the path in the provider where global search queries are
2398         performed.  This permission can not be held by regular applications;
2399         it is used by applications to protect themselves from everyone else
2400         besides global search. -->
2401    <permission android:name="android.permission.GLOBAL_SEARCH"
2402        android:protectionLevel="signature|privileged" />
2403
2404    <!-- Internal permission protecting access to the global search
2405         system: ensures that only the system can access the provider
2406         to perform queries (since this otherwise provides unrestricted
2407         access to a variety of content providers), and to write the
2408         search statistics (to keep applications from gaming the source
2409         ranking).
2410         @hide -->
2411    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
2412        android:protectionLevel="signature" />
2413
2414    <!-- @SystemApi Internal permission to allows an application to read indexable data.
2415        @hide -->
2416    <permission android:name="android.permission.READ_SEARCH_INDEXABLES"
2417        android:protectionLevel="signature|privileged" />
2418
2419    <!-- @SystemApi Allows applications to set a live wallpaper.
2420         @hide XXX Change to signature once the picker is moved to its
2421         own apk as Ghod Intended. -->
2422    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
2423        android:protectionLevel="signature|privileged" />
2424
2425    <!-- @SystemApi Allows applications to read dream settings and dream state.
2426         @hide -->
2427    <permission android:name="android.permission.READ_DREAM_STATE"
2428        android:protectionLevel="signature|privileged" />
2429
2430    <!-- @SystemApi Allows applications to write dream settings, and start or stop dreaming.
2431         @hide -->
2432    <permission android:name="android.permission.WRITE_DREAM_STATE"
2433        android:protectionLevel="signature|privileged" />
2434
2435    <!-- @SystemApi Allow an application to read and write the cache partition.
2436         @hide -->
2437    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
2438        android:protectionLevel="signature|privileged" />
2439
2440    <!-- Must be required by default container service so that only
2441         the system can bind to it and use it to copy
2442         protected data to secure containers or files
2443         accessible to the system.
2444         @hide -->
2445    <permission android:name="android.permission.COPY_PROTECTED_DATA"
2446        android:protectionLevel="signature" />
2447
2448    <!-- @SystemApi Internal permission protecting access to the encryption methods
2449        @hide
2450    -->
2451    <permission android:name="android.permission.CRYPT_KEEPER"
2452        android:protectionLevel="signature|privileged" />
2453
2454    <!-- @SystemApi Allows an application to read historical network usage for
2455         specific networks and applications. @hide -->
2456    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
2457        android:protectionLevel="signature|privileged" />
2458
2459    <!-- Allows an application to manage network policies (such as warning and disable
2460         limits) and to define application-specific rules. @hide -->
2461    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
2462        android:protectionLevel="signature" />
2463
2464    <!-- @SystemApi Allows an application to account its network traffic against other UIDs. Used
2465         by system services like download manager and media server. Not for use by
2466         third party apps. @hide -->
2467    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
2468        android:protectionLevel="signature|privileged" />
2469
2470    <!-- C2DM permission.
2471         @hide Used internally.
2472     -->
2473    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
2474          android:protectionLevel="signature" />
2475    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
2476
2477    <!-- @SystemApi @hide Package verifier needs to have this permission before the PackageManager will
2478         trust it to verify packages.
2479    -->
2480    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
2481        android:protectionLevel="signature|privileged" />
2482
2483    <!-- Must be required by package verifier receiver, to ensure that only the
2484         system can interact with it.
2485         @hide
2486    -->
2487    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
2488        android:protectionLevel="signature" />
2489
2490    <!-- @SystemApi @hide Intent filter verifier needs to have this permission before the
2491         PackageManager will trust it to verify intent filters.
2492    -->
2493    <permission android:name="android.permission.INTENT_FILTER_VERIFICATION_AGENT"
2494        android:protectionLevel="signature|privileged" />
2495
2496    <!-- Must be required by intent filter verifier receiver, to ensure that only the
2497         system can interact with it.
2498         @hide
2499    -->
2500    <permission android:name="android.permission.BIND_INTENT_FILTER_VERIFIER"
2501        android:protectionLevel="signature" />
2502
2503    <!-- @SystemApi Allows applications to access serial ports via the SerialManager.
2504         @hide -->
2505    <permission android:name="android.permission.SERIAL_PORT"
2506        android:protectionLevel="signature|privileged" />
2507
2508    <!-- Allows the holder to access content providers from outside an ApplicationThread.
2509         This permission is enforced by the ActivityManagerService on the corresponding APIs,
2510         in particular ActivityManagerService#getContentProviderExternal(String) and
2511         ActivityManagerService#removeContentProviderExternal(String).
2512         @hide
2513    -->
2514    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
2515        android:protectionLevel="signature" />
2516
2517    <!-- @SystemApi Allows an application to hold an UpdateLock, recommending that a headless
2518         OTA reboot *not* occur while the lock is held.
2519         @hide -->
2520    <permission android:name="android.permission.UPDATE_LOCK"
2521        android:protectionLevel="signature|privileged" />
2522
2523    <!-- @SystemApi Allows an application to read the current set of notifications, including
2524         any metadata and intents attached.
2525         @hide -->
2526    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
2527        android:protectionLevel="signature|privileged" />
2528
2529    <!-- Marker permission for applications that wish to access notification policy.
2530         <p>Protection level: normal
2531    -->
2532    <permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"
2533        android:description="@string/permdesc_access_notification_policy"
2534        android:label="@string/permlab_access_notification_policy"
2535        android:protectionLevel="normal" />
2536
2537    <!-- Allows modification of do not disturb rules and policies. Only allowed for system
2538        processes.
2539        @hide -->
2540    <permission android:name="android.permission.MANAGE_NOTIFICATIONS"
2541                android:protectionLevel="signature" />
2542
2543    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
2544        @hide -->
2545    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
2546        android:protectionLevel="signature" />
2547
2548    <!-- Allows managing (adding, removing) fingerprint templates. Reserved for the system. @hide -->
2549    <permission android:name="android.permission.MANAGE_FINGERPRINT"
2550        android:protectionLevel="system|signature" />
2551
2552    <!-- Allows an app to reset fingerprint attempt counter. Reserved for the system. @hide -->
2553    <permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT"
2554        android:protectionLevel="signature" />
2555
2556    <!-- Allows an application to control keyguard.  Only allowed for system processes.
2557        @hide -->
2558    <permission android:name="android.permission.CONTROL_KEYGUARD"
2559        android:protectionLevel="signature" />
2560
2561    <!-- Allows an application to listen to trust changes.  Only allowed for system processes.
2562        @hide -->
2563    <permission android:name="android.permission.TRUST_LISTENER"
2564        android:protectionLevel="signature" />
2565
2566    <!-- @SystemApi Allows an application to provide a trust agent.
2567         @hide For security reasons, this is a platform-only permission. -->
2568    <permission android:name="android.permission.PROVIDE_TRUST_AGENT"
2569        android:protectionLevel="signature|privileged" />
2570
2571    <!-- Allows an application to launch the trust agent settings activity.
2572        @hide -->
2573    <permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"
2574        android:protectionLevel="signature|privileged" />
2575
2576    <!-- @SystemApi Must be required by an {@link
2577        android.service.trust.TrustAgentService},
2578        to ensure that only the system can bind to it.
2579        @hide -->
2580    <permission android:name="android.permission.BIND_TRUST_AGENT"
2581        android:protectionLevel="signature" />
2582
2583    <!-- Must be required by an {@link
2584         android.service.notification.NotificationListenerService},
2585         to ensure that only the system can bind to it.
2586         <p>Protection level: signature
2587    -->
2588    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
2589        android:protectionLevel="signature" />
2590
2591    <!-- Must be required by a {@link
2592         android.service.chooser.ChooserTargetService}, to ensure that
2593         only the system can bind to it.
2594         <p>Protection level: signature
2595    -->
2596    <permission android:name="android.permission.BIND_CHOOSER_TARGET_SERVICE"
2597        android:protectionLevel="signature" />
2598
2599    <!-- Must be required by a {@link
2600         android.service.notification.ConditionProviderService},
2601         to ensure that only the system can bind to it.
2602         <p>Protection level: signature
2603         -->
2604    <permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"
2605        android:protectionLevel="signature" />
2606
2607    <!-- Must be required by an {@link android.service.dreams.DreamService},
2608         to ensure that only the system can bind to it.
2609         <p>Protection level: signature
2610    -->
2611    <permission android:name="android.permission.BIND_DREAM_SERVICE"
2612        android:protectionLevel="signature" />
2613
2614    <!-- @SystemApi Allows an application to call into a carrier setup flow. It is up to the
2615         carrier setup application to enforce that this permission is required
2616         @hide This is not a third-party API (intended for OEMs and system apps). -->
2617    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
2618        android:protectionLevel="signature|privileged" />
2619
2620    <!-- @SystemApi Allows an application to listen for network condition observations.
2621         @hide This is not a third-party API (intended for system apps). -->
2622    <permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"
2623        android:protectionLevel="signature|privileged" />
2624
2625    <!-- @SystemApi Allows an application to provision and access DRM certificates
2626         @hide This is not a third-party API (intended for system apps). -->
2627    <permission android:name="android.permission.ACCESS_DRM_CERTIFICATES"
2628        android:protectionLevel="signature|privileged" />
2629
2630    <!-- Api Allows an application to manage media projection sessions.
2631         @hide This is not a third-party API (intended for system apps). -->
2632    <permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"
2633        android:protectionLevel="signature" />
2634
2635    <!-- @SystemApi Allows an application to read install sessions
2636         @hide This is not a third-party API (intended for system apps). -->
2637    <permission android:name="android.permission.READ_INSTALL_SESSIONS"
2638        android:label="@string/permlab_readInstallSessions"
2639        android:description="@string/permdesc_readInstallSessions"
2640        android:protectionLevel="normal"/>
2641
2642    <!-- @SystemApi Allows an application to remove DRM certificates
2643         @hide This is not a third-party API (intended for system apps). -->
2644    <permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"
2645        android:protectionLevel="signature|privileged" />
2646
2647    <!-- @deprecated Use {@link android.Manifest.permission#BIND_CARRIER_SERVICES} instead -->
2648    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
2649        android:protectionLevel="signature|privileged" />
2650
2651    <!-- Allows an application to interact with the currently active
2652         {@link android.service.voice.VoiceInteractionService}.
2653         @hide -->
2654    <permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"
2655        android:protectionLevel="signature" />
2656
2657    <!-- The system process that is allowed to bind to services in carrier apps will
2658         have this permission. Carrier apps should use this permission to protect
2659         their services that only the system is allowed to bind to.
2660         <p>Protection level: system|signature
2661    -->
2662    <permission android:name="android.permission.BIND_CARRIER_SERVICES"
2663        android:label="@string/permlab_bindCarrierServices"
2664        android:description="@string/permdesc_bindCarrierServices"
2665        android:protectionLevel="signature|privileged" />
2666
2667    <!-- Allows an application to query whether DO_NOT_ASK_CREDENTIALS_ON_BOOT
2668         flag is set.
2669         @hide -->
2670    <permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"
2671                android:protectionLevel="signature" />
2672
2673    <!-- Allows applications to kill UIDs.
2674        <p>Not for use by third-party applications.
2675         @hide -->
2676    <permission android:name="android.permission.KILL_UID"
2677                android:protectionLevel="signature|installer" />
2678
2679    <!-- @SystemApi Allows applications to read the local WiFi and Bluetooth MAC address.
2680        @hide -->
2681    <permission android:name="android.permission.LOCAL_MAC_ADDRESS"
2682                android:protectionLevel="signature|privileged" />
2683
2684    <!-- @SystemApi Allows access to MAC addresses of WiFi and Bluetooth peer devices.
2685        @hide -->
2686    <permission android:name="android.permission.PEERS_MAC_ADDRESS"
2687                android:protectionLevel="signature" />
2688
2689    <!-- Allows the Nfc stack to dispatch Nfc messages to applications. Applications
2690        can use this permission to ensure incoming Nfc messages are from the Nfc stack
2691        and not simulated by another application.
2692        @hide -->
2693    <permission android:name="android.permission.DISPATCH_NFC_MESSAGE"
2694                android:protectionLevel="signature|privileged" />
2695
2696    <!-- @SystemApi Allows changing day / night mode when system is configured with
2697         config_lockDayNightMode set to true. If requesting app does not have permission,
2698         it will be ignored.
2699        @hide -->
2700    <permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"
2701                android:protectionLevel="signature|privileged" />
2702
2703    <!-- The system process is explicitly the only one allowed to launch the
2704         confirmation UI for full backup/restore -->
2705    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
2706
2707    <application android:process="system"
2708                 android:persistent="true"
2709                 android:hasCode="false"
2710                 android:label="@string/android_system_label"
2711                 android:allowClearUserData="false"
2712                 android:backupAgent="com.android.server.backup.SystemBackupAgent"
2713                 android:killAfterRestore="false"
2714                 android:icon="@drawable/ic_launcher_android"
2715                 android:supportsRtl="true"
2716                 android:theme="@style/Theme.Material.DayNight.DarkActionBar"
2717                 android:forceDeviceEncrypted="true"
2718                 android:encryptionAware="true">
2719        <activity android:name="com.android.internal.app.ChooserActivity"
2720                android:theme="@style/Theme.DeviceDefault.Resolver"
2721                android:finishOnCloseSystemDialogs="true"
2722                android:excludeFromRecents="true"
2723                android:documentLaunchMode="never"
2724                android:relinquishTaskIdentity="true"
2725                android:process=":ui">
2726            <intent-filter>
2727                <action android:name="android.intent.action.CHOOSER" />
2728                <category android:name="android.intent.category.DEFAULT" />
2729                <category android:name="android.intent.category.VOICE" />
2730            </intent-filter>
2731        </activity>
2732        <activity android:name="com.android.internal.app.IntentForwarderActivity"
2733                android:finishOnCloseSystemDialogs="true"
2734                android:theme="@style/Theme.NoDisplay"
2735                android:excludeFromRecents="true"
2736                android:label="@string/user_owner_label"
2737                android:exported="true"
2738                >
2739        </activity>
2740        <activity-alias android:name="com.android.internal.app.ForwardIntentToParent"
2741                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
2742                android:exported="true"
2743                android:label="@string/user_owner_label">
2744        </activity-alias>
2745        <activity-alias android:name="com.android.internal.app.ForwardIntentToManagedProfile"
2746                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
2747                android:icon="@drawable/ic_corp_icon"
2748                android:exported="true"
2749                android:label="@string/managed_profile_label">
2750        </activity-alias>
2751        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
2752                android:theme="@style/Theme.Material.DayNight.Dialog"
2753                android:label="@string/heavy_weight_switcher_title"
2754                android:finishOnCloseSystemDialogs="true"
2755                android:excludeFromRecents="true"
2756                android:process=":ui">
2757        </activity>
2758        <activity android:name="com.android.internal.app.PlatLogoActivity"
2759                android:theme="@style/Theme.Wallpaper.NoTitleBar.Fullscreen"
2760                android:configChanges="orientation|keyboardHidden"
2761                android:process=":ui">
2762        </activity>
2763        <activity android:name="com.android.internal.app.DisableCarModeActivity"
2764                android:theme="@style/Theme.NoDisplay"
2765                android:excludeFromRecents="true"
2766                android:process=":ui">
2767        </activity>
2768        <activity android:name="com.android.internal.app.DumpHeapActivity"
2769                android:theme="@style/Theme.Translucent.NoTitleBar"
2770                android:label="@string/dump_heap_title"
2771                android:finishOnCloseSystemDialogs="true"
2772                android:noHistory="true"
2773                android:excludeFromRecents="true"
2774                android:process=":ui">
2775        </activity>
2776        <provider android:name="com.android.server.am.DumpHeapProvider"
2777                android:authorities="com.android.server.heapdump"
2778                android:grantUriPermissions="true"
2779                android:multiprocess="false"
2780                android:singleUser="true" />
2781
2782        <activity android:name="android.accounts.ChooseAccountActivity"
2783                android:excludeFromRecents="true"
2784                android:exported="true"
2785                android:theme="@style/Theme.Material.DayNight.Dialog"
2786                android:label="@string/choose_account_label"
2787                android:process=":ui">
2788        </activity>
2789
2790        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
2791                android:excludeFromRecents="true"
2792                android:exported="true"
2793                android:theme="@style/Theme.Material.DayNight.Dialog"
2794                android:label="@string/choose_account_label"
2795                android:process=":ui">
2796        </activity>
2797
2798        <activity android:name="android.accounts.ChooseAccountTypeActivity"
2799                android:excludeFromRecents="true"
2800                android:theme="@style/Theme.Material.DayNight.Dialog"
2801                android:label="@string/choose_account_label"
2802                android:process=":ui">
2803        </activity>
2804
2805        <activity android:name="android.accounts.CantAddAccountActivity"
2806                android:excludeFromRecents="true"
2807                android:exported="true"
2808                android:theme="@style/Theme.Material.DayNight.Dialog.NoActionBar"
2809                android:process=":ui">
2810        </activity>
2811
2812        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
2813                android:excludeFromRecents="true"
2814                android:exported="true"
2815                android:theme="@style/Theme.Material.DayNight.DialogWhenLarge"
2816                android:process=":ui">
2817        </activity>
2818
2819        <activity android:name="android.content.SyncActivityTooManyDeletes"
2820               android:theme="@style/Theme.Material.DayNight.Dialog"
2821               android:label="@string/sync_too_many_deletes"
2822               android:process=":ui">
2823        </activity>
2824
2825        <activity android:name="com.android.internal.app.ShutdownActivity"
2826            android:permission="android.permission.SHUTDOWN"
2827            android:theme="@style/Theme.NoDisplay"
2828            android:excludeFromRecents="true">
2829            <intent-filter>
2830                <action android:name="android.intent.action.ACTION_REQUEST_SHUTDOWN" />
2831                <category android:name="android.intent.category.DEFAULT" />
2832            </intent-filter>
2833            <intent-filter>
2834                <action android:name="android.intent.action.REBOOT" />
2835                <category android:name="android.intent.category.DEFAULT" />
2836            </intent-filter>
2837        </activity>
2838
2839        <activity android:name="com.android.internal.app.NetInitiatedActivity"
2840                android:theme="@style/Theme.Material.DayNight.Dialog.Alert"
2841                android:excludeFromRecents="true"
2842                android:process=":ui">
2843        </activity>
2844
2845        <receiver android:name="com.android.server.BootReceiver"
2846                android:systemUserOnly="true">
2847            <intent-filter android:priority="1000">
2848                <action android:name="android.intent.action.BOOT_COMPLETED" />
2849            </intent-filter>
2850        </receiver>
2851
2852        <receiver android:name="com.android.server.updates.CertPinInstallReceiver"
2853                android:permission="android.permission.UPDATE_CONFIG">
2854            <intent-filter>
2855                <action android:name="android.intent.action.UPDATE_PINS" />
2856                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2857            </intent-filter>
2858        </receiver>
2859
2860        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver"
2861                android:permission="android.permission.UPDATE_CONFIG">
2862            <intent-filter>
2863                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
2864                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2865            </intent-filter>
2866        </receiver>
2867
2868        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver"
2869                android:permission="android.permission.UPDATE_CONFIG">
2870            <intent-filter>
2871                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
2872                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2873            </intent-filter>
2874        </receiver>
2875
2876        <receiver android:name="com.android.server.updates.ApnDbInstallReceiver"
2877                android:permission="android.permission.UPDATE_CONFIG">
2878            <intent-filter>
2879                <action android:name="android.intent.action.UPDATE_APN_DB" />
2880                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2881            </intent-filter>
2882        </receiver>
2883
2884        <receiver android:name="com.android.server.updates.CarrierProvisioningUrlsInstallReceiver"
2885                android:permission="android.permission.UPDATE_CONFIG">
2886            <intent-filter>
2887                <action android:name="android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS" />
2888                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2889            </intent-filter>
2890        </receiver>
2891
2892        <receiver android:name="com.android.server.updates.TzDataInstallReceiver"
2893                android:permission="android.permission.UPDATE_CONFIG">
2894            <intent-filter>
2895                <action android:name="android.intent.action.UPDATE_TZDATA" />
2896                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2897            </intent-filter>
2898        </receiver>
2899
2900        <receiver android:name="com.android.server.updates.SELinuxPolicyInstallReceiver"
2901                android:permission="android.permission.UPDATE_CONFIG">
2902            <intent-filter>
2903                <action android:name="android.intent.action.UPDATE_SEPOLICY" />
2904                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
2905            </intent-filter>
2906        </receiver>
2907
2908        <receiver android:name="com.android.server.MasterClearReceiver"
2909            android:permission="android.permission.MASTER_CLEAR">
2910            <intent-filter
2911                    android:priority="100" >
2912                <!-- For Checkin, Settings, etc.: action=MASTER_CLEAR -->
2913                <action android:name="android.intent.action.MASTER_CLEAR" />
2914
2915                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
2916                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
2917                <category android:name="android.intent.category.MASTER_CLEAR" />
2918            </intent-filter>
2919        </receiver>
2920
2921        <service android:name="android.hardware.location.GeofenceHardwareService"
2922            android:permission="android.permission.LOCATION_HARDWARE"
2923            android:exported="false" />
2924
2925        <service android:name="com.android.internal.backup.LocalTransportService"
2926                android:permission="android.permission.CONFIRM_FULL_BACKUP"
2927                android:exported="false">
2928            <intent-filter>
2929                <action android:name="android.backup.TRANSPORT_HOST" />
2930            </intent-filter>
2931        </service>
2932
2933        <service android:name="com.android.server.MountServiceIdler"
2934                 android:exported="true"
2935                 android:permission="android.permission.BIND_JOB_SERVICE" >
2936        </service>
2937
2938        <service android:name="com.android.server.backup.FullBackupJob"
2939                 android:exported="true"
2940                 android:permission="android.permission.BIND_JOB_SERVICE" >
2941        </service>
2942
2943        <service android:name="com.android.server.backup.KeyValueBackupJob"
2944                 android:permission="android.permission.BIND_JOB_SERVICE" >
2945        </service>
2946
2947        <service
2948            android:name="com.android.server.pm.BackgroundDexOptService"
2949            android:exported="true"
2950            android:permission="android.permission.BIND_JOB_SERVICE">
2951        </service>
2952
2953    </application>
2954
2955</manifest>
2956