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