AndroidManifest.xml revision 84d6c0fbf6e513d68330234503b809751d0e3564
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.DEVICE_STORAGE_LOW" />
60    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
61    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
62    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
63    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
64    <protected-broadcast android:name="android.intent.action.REBOOT" />
65    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
66    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
67    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
68    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
69    <protected-broadcast android:name="android.intent.action.USER_STARTING" />
70    <protected-broadcast android:name="android.intent.action.USER_STARTED" />
71    <protected-broadcast android:name="android.intent.action.USER_STOPPING" />
72    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
73    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
74    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
75    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
76
77    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGED" />
78    <protected-broadcast android:name="android.os.action.POWER_SAVE_MODE_CHANGING" />
79
80    <protected-broadcast android:name="android.os.action.SCREEN_BRIGHTNESS_BOOST_CHANGED" />
81
82    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
83    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
84    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
85    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
86    <protected-broadcast android:name="android.app.action.NEXT_ALARM_CLOCK_CHANGED" />
87
88    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
89    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
90    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
91    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
92    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_HOST_RESTORED" />
93    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_RESTORED" />
94
95    <protected-broadcast android:name="android.backup.intent.RUN" />
96    <protected-broadcast android:name="android.backup.intent.CLEAR" />
97    <protected-broadcast android:name="android.backup.intent.INIT" />
98
99    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
100    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
101    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
102    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
103    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
104    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
105    <protected-broadcast android:name="android.bluetooth.device.action.UUID" />
106    <protected-broadcast android:name="android.bluetooth.device.action.MAS_INSTANCE" />
107    <protected-broadcast android:name="android.bluetooth.device.action.ALIAS_CHANGED" />
108    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
109    <protected-broadcast android:name="android.bluetooth.device.action.DISAPPEARED" />
110    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
111    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
112    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
113    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
114    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
115    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
116    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
117    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
118    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
119    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
120    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_CANCEL" />
121    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REQUEST" />
122    <protected-broadcast android:name="android.bluetooth.devicepicker.action.LAUNCH" />
123    <protected-broadcast android:name="android.bluetooth.devicepicker.action.DEVICE_SELECTED" />
124    <protected-broadcast
125        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
126    <protected-broadcast
127        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
128    <protected-broadcast
129        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
130    <protected-broadcast
131        android:name="android.bluetooth.headsetclient.profile.action.CONNECTION_STATE_CHANGED" />
132    <protected-broadcast
133        android:name="android.bluetooth.headsetclient.profile.action.AUDIO_STATE_CHANGED" />
134    <protected-broadcast
135        android:name="android.bluetooth.headsetclient.profile.action.AG_EVENT" />
136    <protected-broadcast
137        android:name="android.bluetooth.headsetclient.profile.action.AG_CALL_CHANGED" />
138    <protected-broadcast
139        android:name="android.bluetooth.headsetclient.profile.action.RESULT" />
140    <protected-broadcast
141        android:name="android.bluetooth.headsetclient.profile.action.LAST_VTAG" />
142    <protected-broadcast
143        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
144    <protected-broadcast
145        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
146    <protected-broadcast
147        android:name="android.bluetooth.a2dp-sink.profile.action.CONNECTION_STATE_CHANGED" />
148    <protected-broadcast
149        android:name="android.bluetooth.a2dp-sink.profile.action.PLAYING_STATE_CHANGED" />
150    <protected-broadcast
151        android:name="android.bluetooth.a2dp-sink.profile.action.AUDIO_CONFIG_CHANGED" />
152   <protected-broadcast
153        android:name="android.bluetooth.avrcp-controller.profile.action.CONNECTION_STATE_CHANGED" />
154    <protected-broadcast
155        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
156    <protected-broadcast
157        android:name="android.bluetooth.input.profile.action.PROTOCOL_MODE_CHANGED" />
158    <protected-broadcast
159        android:name="android.bluetooth.input.profile.action.VIRTUAL_UNPLUG_STATUS" />
160    <protected-broadcast
161        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
162    <protected-broadcast android:name="android.bluetooth.pbap.intent.action.PBAP_STATE_CHANGED" />
163    <protected-broadcast android:name="android.btopp.intent.action.INCOMING_FILE_NOTIFICATION" />
164    <protected-broadcast android:name="android.btopp.intent.action.USER_CONFIRMATION_TIMEOUT" />
165    <protected-broadcast android:name="android.btopp.intent.action.LIST" />
166    <protected-broadcast android:name="android.btopp.intent.action.OPEN_OUTBOUND" />
167    <protected-broadcast android:name="android.btopp.intent.action.HIDE_COMPLETE" />
168    <protected-broadcast android:name="android.btopp.intent.action.CONFIRM" />
169    <protected-broadcast android:name="android.btopp.intent.action.HIDE" />
170    <protected-broadcast android:name="android.btopp.intent.action.RETRY" />
171    <protected-broadcast android:name="android.btopp.intent.action.OPEN" />
172    <protected-broadcast android:name="android.btopp.intent.action.OPEN_INBOUND" />
173    <protected-broadcast android:name="com.android.bluetooth.pbap.authchall" />
174    <protected-broadcast android:name="com.android.bluetooth.pbap.userconfirmtimeout" />
175    <protected-broadcast android:name="com.android.bluetooth.pbap.authresponse" />
176    <protected-broadcast android:name="com.android.bluetooth.pbap.authcancelled" />
177
178    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />
179
180    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
181    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
182    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
183    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
184    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
185
186    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
187    <protected-broadcast android:name="android.media.action.ANALOG_AUDIO_DOCK_PLUG" />
188    <protected-broadcast android:name="android.media.action.DIGITAL_AUDIO_DOCK_PLUG" />
189    <protected-broadcast android:name="android.media.action.HDMI_AUDIO_PLUG" />
190    <protected-broadcast android:name="android.media.action.USB_AUDIO_ACCESSORY_PLUG" />
191    <protected-broadcast android:name="android.media.action.USB_AUDIO_DEVICE_PLUG" />
192
193    <protected-broadcast android:name="android.media.AUDIO_BECOMING_NOISY" />
194    <protected-broadcast android:name="android.media.RINGER_MODE_CHANGED" />
195    <protected-broadcast android:name="android.media.VIBRATE_SETTING_CHANGED" />
196    <protected-broadcast android:name="android.media.VOLUME_CHANGED_ACTION" />
197    <protected-broadcast android:name="android.media.MASTER_VOLUME_CHANGED_ACTION" />
198    <protected-broadcast android:name="android.media.MASTER_MUTE_CHANGED_ACTION" />
199    <protected-broadcast android:name="android.media.SCO_AUDIO_STATE_CHANGED" />
200    <protected-broadcast android:name="android.media.ACTION_SCO_AUDIO_STATE_UPDATED" />
201
202    <protected-broadcast android:name="android.intent.action.MEDIA_REMOVED" />
203    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTED" />
204    <protected-broadcast android:name="android.intent.action.MEDIA_CHECKING" />
205    <protected-broadcast android:name="android.intent.action.MEDIA_NOFS" />
206    <protected-broadcast android:name="android.intent.action.MEDIA_MOUNTED" />
207    <protected-broadcast android:name="android.intent.action.MEDIA_SHARED" />
208    <protected-broadcast android:name="android.intent.action.MEDIA_UNSHARED" />
209    <protected-broadcast android:name="android.intent.action.MEDIA_BAD_REMOVAL" />
210    <protected-broadcast android:name="android.intent.action.MEDIA_UNMOUNTABLE" />
211    <protected-broadcast android:name="android.intent.action.MEDIA_EJECT" />
212
213    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
214    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
215    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
216    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
217    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />
218
219    <protected-broadcast android:name="android.net.nsd.STATE_CHANGED" />
220
221    <protected-broadcast android:name="android.nfc.action.LLCP_LINK_STATE_CHANGED" />
222    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
223    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
224    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
225
226    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
227    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
228    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
229
230    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />
231
232    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
233    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
234    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />
235    <protected-broadcast android:name="android.intent.action.DATA_CONNECTION_CONNECTED_TO_PROVISIONING_APN" />
236
237    <protected-broadcast android:name="com.android.server.WifiManager.action.START_SCAN" />
238    <protected-broadcast android:name="com.android.server.WifiManager.action.DELAYED_DRIVER_STOP" />
239    <protected-broadcast android:name="android.net.wifi.WIFI_STATE_CHANGED" />
240    <protected-broadcast android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
241    <protected-broadcast android:name="android.net.wifi.WIFI_SCAN_AVAILABLE" />
242    <protected-broadcast android:name="android.net.wifi.SCAN_RESULTS" />
243    <protected-broadcast android:name="android.net.wifi.RSSI_CHANGED" />
244    <protected-broadcast android:name="android.net.wifi.STATE_CHANGE" />
245    <protected-broadcast android:name="android.net.wifi.LINK_CONFIGURATION_CHANGED" />
246    <protected-broadcast android:name="android.net.wifi.CONFIGURED_NETWORKS_CHANGE" />
247    <protected-broadcast android:name="android.net.wifi.supplicant.CONNECTION_CHANGE" />
248    <protected-broadcast android:name="android.net.wifi.supplicant.STATE_CHANGE" />
249    <protected-broadcast android:name="android.net.wifi.p2p.STATE_CHANGED" />
250    <protected-broadcast android:name="android.net.wifi.p2p.DISCOVERY_STATE_CHANGE" />
251    <protected-broadcast android:name="android.net.wifi.p2p.THIS_DEVICE_CHANGED" />
252    <protected-broadcast android:name="android.net.wifi.p2p.PEERS_CHANGED" />
253    <protected-broadcast android:name="android.net.wifi.p2p.CONNECTION_STATE_CHANGE" />
254    <protected-broadcast android:name="android.net.wifi.p2p.PERSISTENT_GROUPS_CHANGED" />
255    <protected-broadcast android:name="android.net.conn.TETHER_STATE_CHANGED" />
256    <protected-broadcast android:name="android.net.conn.INET_CONDITION_ACTION" />
257    <protected-broadcast android:name="android.net.conn.NETWORK_CONDITIONS_MEASURED" />
258    <protected-broadcast
259            android:name="android.net.ConnectivityService.action.PKT_CNT_SAMPLE_INTERVAL_ELAPSED" />
260    <protected-broadcast android:name="android.net.scoring.SCORE_NETWORKS" />
261    <protected-broadcast android:name="android.net.scoring.SCORER_CHANGED" />
262    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE" />
263    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE" />
264    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
265    <protected-broadcast android:name="android.intent.action.ADVANCED_SETTINGS" />
266    <protected-broadcast android:name="android.intent.action.APPLICATION_RESTRICTIONS_CHANGED" />
267    <protected-broadcast android:name="android.intent.action.BUGREPORT_FINISHED" />
268
269    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_START" />
270    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_END" />
271
272    <protected-broadcast android:name="android.intent.action.HDMI_PLUGGED" />
273
274    <protected-broadcast android:name="android.intent.action.PHONE_STATE" />
275
276    <protected-broadcast android:name="android.intent.action.SUB_DEFAULT_CHANGED" />
277
278    <protected-broadcast android:name="android.location.GPS_ENABLED_CHANGE" />
279    <protected-broadcast android:name="android.location.PROVIDERS_CHANGED" />
280    <protected-broadcast android:name="android.location.MODE_CHANGED" />
281    <protected-broadcast android:name="android.location.GPS_FIX_CHANGE" />
282    <protected-broadcast android:name="android.net.proxy.PAC_REFRESH" />
283
284    <protected-broadcast
285        android:name="com.android.server.connectivityservice.CONNECTED_TO_PROVISIONING_NETWORK_ACTION" />
286
287    <!-- Defined in RestrictionsManager -->
288    <protected-broadcast
289        android:name="android.intent.action.PERMISSION_RESPONSE_RECEIVED" />
290    <!-- Defined in RestrictionsManager -->
291
292    <protected-broadcast android:name="android.intent.action.REQUEST_PERMISSION" />
293    <protected-broadcast android:name="android.nfc.handover.intent.action.HANDOVER_STARTED" />
294    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
295    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_PROGRESS" />
296    <protected-broadcast android:name="android.nfc.handover.intent.action.TRANSFER_DONE" />
297
298    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_SUBSCRIPTION_CHANGED" />
299    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_SMS_SUBSCRIPTION_CHANGED" />
300    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_DATA_SUBSCRIPTION_CHANGED" />
301    <protected-broadcast android:name="android.intent.action.ACTION_DEFAULT_VOICE_SUBSCRIPTION_CHANGED" />
302    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_CONTENT_CHANGE" />
303    <protected-broadcast android:name="android.intent.action.ACTION_SUBINFO_RECORD_UPDATED" />
304
305    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_DONE" />
306    <protected-broadcast android:name="android.intent.action.ACTION_SET_RADIO_CAPABILITY_FAILED" />
307
308    <protected-broadcast android:name="android.internal.policy.action.BURN_IN_PROTECTION" />
309
310    <!-- ====================================== -->
311    <!-- Permissions for things that cost money -->
312    <!-- ====================================== -->
313    <eat-comment />
314
315    <!-- Used for permissions that can be used to make the user spend money
316         without their direct involvement. -->
317    <permission-group android:name="android.permission-group.COST_MONEY"
318        android:label="@string/permgrouplab_costMoney"
319        android:description="@string/permgroupdesc_costMoney" />
320
321    <!-- ================================== -->
322    <!-- Permissions for accessing messages -->
323    <!-- ================================== -->
324    <eat-comment />
325
326    <!-- Used for permissions that allow an application to send messages
327         on behalf of the user or intercept messages being received by the
328         user.  This is primarily intended for SMS/MMS messaging, such as
329         receiving or reading an MMS. -->
330    <permission-group android:name="android.permission-group.MESSAGES"
331        android:label="@string/permgrouplab_messages"
332        android:icon="@drawable/perm_group_messages"
333        android:description="@string/permgroupdesc_messages"
334        android:permissionGroupFlags="personalInfo"
335        android:priority="360"/>
336
337    <!-- Allows an application to send SMS messages. -->
338    <permission android:name="android.permission.SEND_SMS"
339        android:permissionGroup="android.permission-group.MESSAGES"
340        android:protectionLevel="dangerous"
341        android:permissionFlags="costsMoney"
342        android:label="@string/permlab_sendSms"
343        android:description="@string/permdesc_sendSms" />
344
345    <!-- @SystemApi Allows an application (Phone) to send a request to other applications
346         to handle the respond-via-message action during incoming calls.
347         <p>Not for use by third-party applications. -->
348    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
349        android:permissionGroup="android.permission-group.MESSAGES"
350        android:protectionLevel="signature|system"
351        android:label="@string/permlab_sendRespondViaMessageRequest"
352        android:description="@string/permdesc_sendRespondViaMessageRequest" />
353
354    <!-- Allows an application to monitor incoming SMS messages, to record
355         or perform processing on them. -->
356    <permission android:name="android.permission.RECEIVE_SMS"
357        android:permissionGroup="android.permission-group.MESSAGES"
358        android:protectionLevel="dangerous"
359        android:label="@string/permlab_receiveSms"
360        android:description="@string/permdesc_receiveSms" />
361
362    <!-- Allows an application to monitor incoming MMS messages, to record
363         or perform processing on them. -->
364    <permission android:name="android.permission.RECEIVE_MMS"
365        android:permissionGroup="android.permission-group.MESSAGES"
366        android:protectionLevel="dangerous"
367        android:label="@string/permlab_receiveMms"
368        android:description="@string/permdesc_receiveMms" />
369
370    <!-- Allows an application to filter carrier specific sms.
371         @hide -->
372    <permission android:name="android.permission.CARRIER_FILTER_SMS"
373        android:permissionGroup="android.permission-group.MESSAGES"
374        android:protectionLevel="signature|system" />
375
376    <!-- @SystemApi Allows an application to receive emergency cell broadcast messages,
377         to record or display them to the user.
378         <p>Not for use by third-party applications.
379         @hide Pending API council approval -->
380    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
381        android:permissionGroup="android.permission-group.MESSAGES"
382        android:protectionLevel="signature|system"
383        android:label="@string/permlab_receiveEmergencyBroadcast"
384        android:description="@string/permdesc_receiveEmergencyBroadcast" />
385
386    <!-- Allows an application to read previously received cell broadcast
387         messages and to register a content observer to get notifications when
388         a cell broadcast has been received and added to the database. For
389         emergency alerts, the database is updated immediately after the
390         alert dialog and notification sound/vibration/speech are presented.
391         The "read" column is then updated after the user dismisses the alert.
392         This enables supplementary emergency assistance apps to start loading
393         additional emergency information (if Internet access is available)
394         when the alert is first received, and to delay presenting the info
395         to the user until after the initial alert dialog is dismissed.
396         @hide Pending API council approval -->
397    <permission android:name="android.permission.READ_CELL_BROADCASTS"
398        android:permissionGroup="android.permission-group.MESSAGES"
399        android:protectionLevel="dangerous"
400        android:label="@string/permlab_readCellBroadcasts"
401        android:description="@string/permdesc_readCellBroadcasts" />
402
403    <!-- Allows an application to read SMS messages. -->
404    <permission android:name="android.permission.READ_SMS"
405        android:permissionGroup="android.permission-group.MESSAGES"
406        android:protectionLevel="dangerous"
407        android:label="@string/permlab_readSms"
408        android:description="@string/permdesc_readSms" />
409
410    <!-- Allows an application to write SMS messages. -->
411    <permission android:name="android.permission.WRITE_SMS"
412        android:permissionGroup="android.permission-group.MESSAGES"
413        android:protectionLevel="dangerous"
414        android:label="@string/permlab_writeSms"
415        android:description="@string/permdesc_writeSms" />
416
417    <!-- Allows an application to monitor incoming WAP push messages. -->
418    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
419        android:permissionGroup="android.permission-group.MESSAGES"
420        android:protectionLevel="dangerous"
421        android:label="@string/permlab_receiveWapPush"
422        android:description="@string/permdesc_receiveWapPush" />
423
424    <!-- Allows an application to monitor incoming Bluetooth MAP messages, to record
425         or perform processing on them. -->
426    <!-- @hide -->
427    <permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"
428        android:permissionGroup="android.permission-group.MESSAGES"
429        android:protectionLevel="signature|system"
430        android:label="@string/permlab_receiveBluetoothMap"
431        android:description="@string/permdesc_receiveBluetoothMap" />
432
433    <!-- =============================================================== -->
434    <!-- Permissions for accessing social info (contacts and social) -->
435    <!-- =============================================================== -->
436    <eat-comment />
437
438    <!-- Used for permissions that provide access to the user's social connections,
439         such as contacts, call logs, social stream, etc.  This includes
440         both reading and writing of this data (which should generally be
441         expressed as two distinct permissions). -->
442
443    <permission-group android:name="android.permission-group.SOCIAL_INFO"
444        android:label="@string/permgrouplab_socialInfo"
445        android:icon="@drawable/perm_group_social_info"
446        android:description="@string/permgroupdesc_socialInfo"
447        android:permissionGroupFlags="personalInfo"
448        android:priority="320" />
449
450    <!-- Allows an application to read the user's contacts data. -->
451    <permission android:name="android.permission.READ_CONTACTS"
452        android:permissionGroup="android.permission-group.SOCIAL_INFO"
453        android:protectionLevel="dangerous"
454        android:label="@string/permlab_readContacts"
455        android:description="@string/permdesc_readContacts" />
456
457    <!-- Allows an application to write (but not read) the user's
458         contacts data. -->
459    <permission android:name="android.permission.WRITE_CONTACTS"
460        android:permissionGroup="android.permission-group.SOCIAL_INFO"
461        android:protectionLevel="dangerous"
462        android:label="@string/permlab_writeContacts"
463        android:description="@string/permdesc_writeContacts" />
464
465    <!-- @SystemApi @hide Allows an application to execute contacts directory search.
466         This should only be used by ContactsProvider.
467         <p>Not for use by third-party applications. -->
468    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
469        android:permissionGroup="android.permission-group.PERSONAL_INFO"
470        android:protectionLevel="signature|system" />
471
472    <!-- Allows an application to read the user's call log.
473         <p class="note"><strong>Note:</strong> If your app uses the
474         {@link #READ_CONTACTS} permission and <em>both</em> your <a
475         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
476         minSdkVersion}</a> and <a
477         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
478         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
479         grants your app this permission. If you don't need this permission, be sure your <a
480         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
481         targetSdkVersion}</a> is 16 or higher.</p> -->
482    <permission android:name="android.permission.READ_CALL_LOG"
483        android:permissionGroup="android.permission-group.SOCIAL_INFO"
484        android:protectionLevel="dangerous"
485        android:label="@string/permlab_readCallLog"
486        android:description="@string/permdesc_readCallLog" />
487
488    <!-- Allows an application to write (but not read) the user's
489         contacts data.
490         <p class="note"><strong>Note:</strong> If your app uses the
491         {@link #WRITE_CONTACTS} permission and <em>both</em> your <a
492         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
493         minSdkVersion}</a> and <a
494         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
495         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
496         grants your app this permission. If you don't need this permission, be sure your <a
497         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
498         targetSdkVersion}</a> is 16 or higher.</p>  -->
499    <permission android:name="android.permission.WRITE_CALL_LOG"
500        android:permissionGroup="android.permission-group.SOCIAL_INFO"
501        android:protectionLevel="dangerous"
502        android:label="@string/permlab_writeCallLog"
503        android:description="@string/permdesc_writeCallLog" />
504
505  <!-- Allows an application to read from the user's social stream.
506       @deprecated This functionality will be unsupported in the future; cursors returned
507       will be empty. Please do not use. -->
508    <permission android:name="android.permission.READ_SOCIAL_STREAM"
509        android:permissionGroup="android.permission-group.SOCIAL_INFO"
510        android:protectionLevel="dangerous"
511        android:label="@string/permlab_readSocialStream"
512        android:description="@string/permdesc_readSocialStream" />
513
514    <!-- Allows an application to write (but not read) the user's
515         social stream data.
516         @deprecated This functionality will be unsupported in the future; cursors returned
517         will be empty. Please do not use. -->
518    <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
519        android:permissionGroup="android.permission-group.SOCIAL_INFO"
520        android:protectionLevel="dangerous"
521        android:label="@string/permlab_writeSocialStream"
522        android:description="@string/permdesc_writeSocialStream" />
523
524    <!-- =============================================================== -->
525    <!-- Permissions for accessing information about the device owner    -->
526    <!-- =============================================================== -->
527    <eat-comment />
528
529    <!-- Used for permissions that provide access to information about the device
530         user such as profile information.  This includes both reading and
531         writing of this data (which should generally be expressed as two
532         distinct permissions). -->
533    <permission-group android:name="android.permission-group.PERSONAL_INFO"
534        android:label="@string/permgrouplab_personalInfo"
535        android:icon="@drawable/perm_group_personal_info"
536        android:description="@string/permgroupdesc_personalInfo"
537        android:permissionGroupFlags="personalInfo"
538        android:priority="310" />
539
540    <!-- Allows an application to read the user's personal profile data. -->
541    <permission android:name="android.permission.READ_PROFILE"
542        android:permissionGroup="android.permission-group.PERSONAL_INFO"
543        android:protectionLevel="dangerous"
544        android:label="@string/permlab_readProfile"
545        android:description="@string/permdesc_readProfile" />
546
547    <!-- Allows an application to write (but not read) the user's
548         personal profile data. -->
549    <permission android:name="android.permission.WRITE_PROFILE"
550        android:permissionGroup="android.permission-group.PERSONAL_INFO"
551        android:protectionLevel="dangerous"
552        android:label="@string/permlab_writeProfile"
553        android:description="@string/permdesc_writeProfile" />
554
555    <!-- Allows an application to access data from sensors that the user uses to
556         measure what is happening inside his/her body, such as heart rate. -->
557    <permission android:name="android.permission.BODY_SENSORS"
558        android:permissionGroup="android.permission-group.PERSONAL_INFO"
559        android:label="@string/permlab_bodySensors"
560        android:description="@string/permdesc_bodySensors" />
561
562    <!-- =============================================================== -->
563    <!-- Permissions for accessing the device calendar                   -->
564    <!-- =============================================================== -->
565    <eat-comment />
566
567    <!-- Used for permissions that provide access to the device
568         calendar to create / view events.-->
569    <permission-group android:name="android.permission-group.CALENDAR"
570        android:label="@string/permgrouplab_calendar"
571        android:icon="@drawable/perm_group_calendar"
572        android:description="@string/permgroupdesc_calendar"
573        android:permissionGroupFlags="personalInfo"
574        android:priority="290" />
575
576    <!-- Allows an application to read the user's calendar data. -->
577    <permission android:name="android.permission.READ_CALENDAR"
578        android:permissionGroup="android.permission-group.PERSONAL_INFO"
579        android:protectionLevel="dangerous"
580        android:label="@string/permlab_readCalendar"
581        android:description="@string/permdesc_readCalendar" />
582
583    <!-- Allows an application to write (but not read) the user's
584         calendar data. -->
585    <permission android:name="android.permission.WRITE_CALENDAR"
586        android:permissionGroup="android.permission-group.PERSONAL_INFO"
587        android:protectionLevel="dangerous"
588        android:label="@string/permlab_writeCalendar"
589        android:description="@string/permdesc_writeCalendar" />
590
591    <!-- =============================================================== -->
592    <!-- Permissions for accessing the user dictionary-->
593    <!-- =============================================================== -->
594    <eat-comment />
595
596    <!-- Used for permissions that provide access to the user
597         calendar to create / view events.-->
598    <permission-group android:name="android.permission-group.USER_DICTIONARY"
599        android:label="@string/permgrouplab_dictionary"
600        android:icon="@drawable/perm_group_user_dictionary"
601        android:description="@string/permgroupdesc_dictionary"
602        android:permissionGroupFlags="personalInfo"
603        android:priority="170" />
604
605    <!-- Allows an application to read the user dictionary. This should
606         really only be required by an IME, or a dictionary editor like
607         the Settings app. -->
608    <permission android:name="android.permission.READ_USER_DICTIONARY"
609        android:permissionGroup="android.permission-group.USER_DICTIONARY"
610        android:protectionLevel="dangerous"
611        android:label="@string/permlab_readDictionary"
612        android:description="@string/permdesc_readDictionary" />
613
614    <!-- Used for permissions that provide access to the user
615         calendar to create / view events.-->
616    <permission-group android:name="android.permission-group.WRITE_USER_DICTIONARY"
617        android:label="@string/permgrouplab_writeDictionary"
618        android:icon="@drawable/perm_group_user_dictionary_write"
619        android:description="@string/permgroupdesc_writeDictionary"
620        android:priority="160" />
621
622    <!-- Allows an application to write to the user dictionary. -->
623    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
624        android:permissionGroup="android.permission-group.WRITE_USER_DICTIONARY"
625        android:protectionLevel="normal"
626        android:label="@string/permlab_writeDictionary"
627        android:description="@string/permdesc_writeDictionary" />
628
629    <!-- =============================================================== -->
630    <!-- Permissions for accessing the user bookmarks                    -->
631    <!-- =============================================================== -->
632    <eat-comment />
633
634    <!-- Used for permissions that provide access to the user
635         bookmarks and browser history.-->
636    <permission-group android:name="android.permission-group.BOOKMARKS"
637        android:label="@string/permgrouplab_bookmarks"
638        android:icon="@drawable/perm_group_bookmarks"
639        android:description="@string/permgroupdesc_bookmarks"
640        android:permissionGroupFlags="personalInfo"
641        android:priority="300" />
642
643    <!-- Allows an application to read (but not write) the user's
644        browsing history and bookmarks. -->
645    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
646        android:permissionGroup="android.permission-group.BOOKMARKS"
647        android:label="@string/permlab_readHistoryBookmarks"
648        android:description="@string/permdesc_readHistoryBookmarks"
649        android:protectionLevel="dangerous" />
650
651    <!-- Allows an application to write (but not read) the user's
652        browsing history and bookmarks. -->
653    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
654        android:permissionGroup="android.permission-group.BOOKMARKS"
655        android:label="@string/permlab_writeHistoryBookmarks"
656        android:description="@string/permdesc_writeHistoryBookmarks"
657        android:protectionLevel="dangerous" />
658
659    <!-- =============================================================== -->
660    <!-- Permissions for setting the device alarm                        -->
661    <!-- =============================================================== -->
662    <eat-comment />
663
664    <!-- Used for permissions that provide access to device alarms. -->
665    <permission-group android:name="android.permission-group.DEVICE_ALARMS"
666        android:label="@string/permgrouplab_deviceAlarms"
667        android:icon="@drawable/perm_group_device_alarms"
668        android:description="@string/permgroupdesc_deviceAlarms"
669        android:permissionGroupFlags="personalInfo"
670        android:priority="210" />
671
672    <!-- Allows an application to broadcast an Intent to set an alarm for the
673         user. -->
674    <permission android:name="com.android.alarm.permission.SET_ALARM"
675        android:permissionGroup="android.permission-group.DEVICE_ALARMS"
676        android:label="@string/permlab_setAlarm"
677        android:description="@string/permdesc_setAlarm"
678        android:protectionLevel="normal" />
679
680    <!-- =============================================================== -->
681    <!-- Permissions for accessing the user voicemail                    -->
682    <!-- =============================================================== -->
683    <eat-comment />
684
685    <!-- Used for permissions that provide access to the user voicemail box. -->
686    <permission-group android:name="android.permission-group.VOICEMAIL"
687        android:label="@string/permgrouplab_voicemail"
688        android:icon="@drawable/perm_group_voicemail"
689        android:description="@string/permgroupdesc_voicemail"
690        android:permissionGroupFlags="personalInfo"
691        android:priority="280" />
692
693    <!-- Allows an application to add voicemails into the system. -->
694    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
695        android:permissionGroup="android.permission-group.VOICEMAIL"
696        android:protectionLevel="dangerous"
697        android:label="@string/permlab_addVoicemail"
698        android:description="@string/permdesc_addVoicemail" />
699
700    <!-- Allows an application to modify and remove existing voicemails in the system -->
701    <permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"
702        android:permissionGroup="android.permission-group.VOICEMAIL"
703        android:protectionLevel="system|signature"
704        android:label="@string/permlab_writeVoicemail"
705        android:description="@string/permdesc_writeVoicemail" />
706
707    <!-- Allows an application to read voicemails in the system. -->
708    <permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"
709        android:permissionGroup="android.permission-group.VOICEMAIL"
710        android:protectionLevel="system|signature"
711        android:label="@string/permlab_readVoicemail"
712        android:description="@string/permdesc_readVoicemail" />
713
714    <!-- =============================================== -->
715    <!-- Permissions for enabling accessibility features -->
716    <!-- =============================================== -->
717    <eat-comment />
718
719    <!-- Used for permissions that allow requesting certain accessibility features. -->
720    <permission-group android:name="android.permission-group.ACCESSIBILITY_FEATURES"
721        android:label="@string/permgrouplab_accessibilityFeatures"
722        android:icon="@drawable/perm_group_accessibility_features"
723        android:description="@string/permgroupdesc_accessibilityFeatures"
724        android:priority="380" />
725
726    <!-- ======================================= -->
727    <!-- Permissions for accessing location info -->
728    <!-- ======================================= -->
729    <eat-comment />
730
731    <!-- Used for permissions that allow access to the user's current
732         location. -->
733    <permission-group android:name="android.permission-group.LOCATION"
734        android:label="@string/permgrouplab_location"
735        android:icon="@drawable/perm_group_location"
736        android:description="@string/permgroupdesc_location"
737        android:permissionGroupFlags="personalInfo"
738        android:priority="330" />
739
740    <!-- Allows an app to access precise location from location sources such
741         as GPS, cell towers, and Wi-Fi. -->
742    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
743        android:permissionGroup="android.permission-group.LOCATION"
744        android:protectionLevel="dangerous"
745        android:label="@string/permlab_accessFineLocation"
746        android:description="@string/permdesc_accessFineLocation" />
747
748    <!-- Allows an app to access approximate location derived from network location
749         sources such as cell towers and Wi-Fi. -->
750    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
751        android:permissionGroup="android.permission-group.LOCATION"
752        android:protectionLevel="dangerous"
753        android:label="@string/permlab_accessCoarseLocation"
754        android:description="@string/permdesc_accessCoarseLocation" />
755
756    <!-- Allows an application to create mock location providers for testing -->
757    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
758        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
759        android:protectionLevel="dangerous"
760        android:label="@string/permlab_accessMockLocation"
761        android:description="@string/permdesc_accessMockLocation" />
762
763    <!-- Allows an application to access extra location provider commands -->
764    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
765        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
766        android:protectionLevel="normal"
767        android:label="@string/permlab_accessLocationExtraCommands"
768        android:description="@string/permdesc_accessLocationExtraCommands" />
769
770    <!-- @SystemApi Allows an application to install a location provider into the Location Manager.
771    <p>Not for use by third-party applications. -->
772    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
773        android:protectionLevel="signature|system"
774        android:label="@string/permlab_installLocationProvider"
775        android:description="@string/permdesc_installLocationProvider" />
776
777    <!-- @SystemApi @hide Allows HDMI-CEC service to access device and configuration files.
778         This should only be used by HDMI-CEC service.
779    -->
780    <permission android:name="android.permission.HDMI_CEC"
781        android:protectionLevel="signatureOrSystem" />
782
783    <!-- @SystemApi Allows an application to use location features in hardware,
784         such as the geofencing api.
785         <p>Not for use by third-party applications. -->
786    <permission android:name="android.permission.LOCATION_HARDWARE"
787        android:permissionGroup="android.permission-group.LOCATION"
788        android:protectionLevel="signature|system" />
789    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>
790
791    <!-- ======================================= -->
792    <!-- Permissions for accessing networks -->
793    <!-- ======================================= -->
794    <eat-comment />
795
796    <!-- Used for permissions that provide access to networking services.  The
797         main permission here is internet access, but this is also an
798         appropriate group for accessing or modifying any network configuration
799         or other related network operations. -->
800    <permission-group android:name="android.permission-group.NETWORK"
801        android:label="@string/permgrouplab_network"
802        android:icon="@drawable/perm_group_network"
803        android:description="@string/permgroupdesc_network"
804        android:priority="270" />
805
806    <!-- Allows applications to open network sockets. -->
807    <permission android:name="android.permission.INTERNET"
808        android:permissionGroup="android.permission-group.NETWORK"
809        android:protectionLevel="dangerous"
810        android:description="@string/permdesc_createNetworkSockets"
811        android:label="@string/permlab_createNetworkSockets" />
812
813    <!-- Allows applications to access information about networks -->
814    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
815        android:permissionGroup="android.permission-group.NETWORK"
816        android:protectionLevel="normal"
817        android:description="@string/permdesc_accessNetworkState"
818        android:label="@string/permlab_accessNetworkState" />
819
820    <!-- Allows applications to access information about Wi-Fi networks -->
821    <permission android:name="android.permission.ACCESS_WIFI_STATE"
822        android:permissionGroup="android.permission-group.NETWORK"
823        android:protectionLevel="normal"
824        android:description="@string/permdesc_accessWifiState"
825        android:label="@string/permlab_accessWifiState" />
826
827    <!-- Allows applications to change Wi-Fi connectivity state -->
828    <permission android:name="android.permission.CHANGE_WIFI_STATE"
829        android:permissionGroup="android.permission-group.NETWORK"
830        android:protectionLevel="dangerous"
831        android:description="@string/permdesc_changeWifiState"
832        android:label="@string/permlab_changeWifiState" />
833
834    <!-- @SystemApi @hide Allows applications to read Wi-Fi credential.
835         <p>Not for use by third-party applications. -->
836    <permission android:name="android.permission.READ_WIFI_CREDENTIAL"
837        android:permissionGroup="android.permission-group.NETWORK"
838        android:protectionLevel="signature|system" />
839
840    <!-- @hide -->
841    <permission android:name="android.permission.ACCESS_WIMAX_STATE"
842        android:permissionGroup="android.permission-group.NETWORK"
843        android:protectionLevel="normal"
844        android:description="@string/permdesc_accessWimaxState"
845        android:label="@string/permlab_accessWimaxState" />
846
847    <!-- @hide -->
848    <permission android:name="android.permission.CHANGE_WIMAX_STATE"
849        android:permissionGroup="android.permission-group.NETWORK"
850        android:protectionLevel="dangerous"
851        android:description="@string/permdesc_changeWimaxState"
852        android:label="@string/permlab_changeWimaxState" />
853
854    <!-- Allows applications to act as network scorers. @hide @SystemApi-->
855    <!-- TODO: Change protection level to normal when unhiding this API. -->
856    <permission android:name="android.permission.SCORE_NETWORKS"
857        android:permissionGroup="android.permission-group.NETWORK"
858        android:protectionLevel="signature|system"
859        android:description="@string/permdesc_scoreNetworks"
860        android:label="@string/permlab_scoreNetworks" />
861
862    <!-- ======================================= -->
863    <!-- Permissions for short range, peripheral networks -->
864    <!-- ======================================= -->
865    <eat-comment />
866
867    <!-- Used for permissions that provide access to other devices through Bluetooth.-->
868    <permission-group android:name="android.permission-group.BLUETOOTH_NETWORK"
869        android:label="@string/permgrouplab_bluetoothNetwork"
870        android:icon="@drawable/perm_group_bluetooth"
871        android:description="@string/permgroupdesc_bluetoothNetwork"
872        android:priority="260" />
873
874    <!-- Allows applications to connect to paired bluetooth devices -->
875    <permission android:name="android.permission.BLUETOOTH"
876        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
877        android:protectionLevel="dangerous"
878        android:description="@string/permdesc_bluetooth"
879        android:label="@string/permlab_bluetooth" />
880
881    <!-- Allows applications to discover and pair bluetooth devices -->
882    <permission android:name="android.permission.BLUETOOTH_ADMIN"
883        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
884        android:protectionLevel="dangerous"
885        android:description="@string/permdesc_bluetoothAdmin"
886        android:label="@string/permlab_bluetoothAdmin" />
887
888    <!-- @SystemApi Allows applications to pair bluetooth devices without user interaction, and to
889         allow or disallow phonebook access or message access.
890         This is not available to third party applications. -->
891    <permission android:name="android.permission.BLUETOOTH_PRIVILEGED"
892        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
893        android:protectionLevel="system|signature"
894        android:description="@string/permdesc_bluetoothPriv"
895        android:label="@string/permlab_bluetoothPriv" />
896
897    <!-- Control access to email providers exclusively for Bluetooth
898         @hide
899    -->
900    <permission android:name="android.permission.BLUETOOTH_MAP"
901        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
902        android:protectionLevel="signature"
903        android:description="@string/permdesc_bluetoothMap"
904        android:label="@string/permlab_bluetoothMap" />
905
906    <!-- Allows bluetooth stack to access files
907         @hide This should only be used by Bluetooth apk.
908    -->
909    <permission android:name="android.permission.BLUETOOTH_STACK"
910        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
911        android:protectionLevel="signature" />
912
913    <!-- Allows applications to perform I/O operations over NFC -->
914    <permission android:name="android.permission.NFC"
915        android:permissionGroup="android.permission-group.NETWORK"
916        android:protectionLevel="dangerous"
917        android:description="@string/permdesc_nfc"
918        android:label="@string/permlab_nfc" />
919
920    <!-- @SystemApi Allows an internal user to use privileged ConnectivityManager APIs.
921         @hide -->
922    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
923        android:permissionGroup="android.permission-group.NETWORK"
924        android:protectionLevel="signature|system" />
925
926    <!-- @SystemApi @hide -->
927    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
928        android:permissionGroup="android.permission-group.NETWORK"
929        android:protectionLevel="signature|system" />
930
931    <!-- @SystemApi Allows access to the loop radio (Android@Home mesh network) device.
932         @hide -->
933    <permission android:name="android.permission.LOOP_RADIO"
934        android:permissionGroup="android.permission-group.NETWORK"
935        android:protectionLevel="signature|system" />
936
937    <!-- Allows sending and receiving handover transfer status from Wifi and Bluetooth
938         @hide
939    -->
940    <permission android:name="android.permission.NFC_HANDOVER_STATUS"
941                android:label="@string/permlab_handoverStatus"
942                android:description="@string/permdesc_handoverStatus"
943                android:protectionLevel="signature|system" />
944
945    <!-- ================================== -->
946    <!-- Permissions for accessing accounts -->
947    <!-- ================================== -->
948    <eat-comment />
949
950    <!-- Permissions for direct access to the accounts managed
951         by the Account Manager. -->
952    <permission-group android:name="android.permission-group.ACCOUNTS"
953        android:label="@string/permgrouplab_accounts"
954        android:icon="@drawable/perm_group_accounts"
955        android:description="@string/permgroupdesc_accounts"
956        android:permissionGroupFlags="personalInfo"
957        android:priority="200" />
958
959    <!-- Allows access to the list of accounts in the Accounts Service -->
960    <permission android:name="android.permission.GET_ACCOUNTS"
961        android:permissionGroup="android.permission-group.ACCOUNTS"
962        android:protectionLevel="normal"
963        android:description="@string/permdesc_getAccounts"
964        android:label="@string/permlab_getAccounts" />
965
966    <!-- Allows an application to act as an AccountAuthenticator for
967         the AccountManager -->
968    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
969        android:permissionGroup="android.permission-group.ACCOUNTS"
970        android:protectionLevel="dangerous"
971        android:label="@string/permlab_authenticateAccounts"
972        android:description="@string/permdesc_authenticateAccounts" />
973
974    <!-- Allows an application to request authtokens from the AccountManager -->
975    <permission android:name="android.permission.USE_CREDENTIALS"
976        android:permissionGroup="android.permission-group.ACCOUNTS"
977        android:protectionLevel="dangerous"
978        android:label="@string/permlab_useCredentials"
979        android:description="@string/permdesc_useCredentials" />
980
981    <!-- Allows an application to manage the list of accounts in the AccountManager -->
982    <permission android:name="android.permission.MANAGE_ACCOUNTS"
983        android:permissionGroup="android.permission-group.ACCOUNTS"
984        android:protectionLevel="dangerous"
985        android:label="@string/permlab_manageAccounts"
986        android:description="@string/permdesc_manageAccounts" />
987
988    <!-- @SystemApi Allows applications to call into AccountAuthenticators.
989    <p>Not for use by third-party applications. -->
990    <permission android:name="android.permission.ACCOUNT_MANAGER"
991        android:permissionGroup="android.permission-group.ACCOUNTS"
992        android:protectionLevel="signature"
993        android:description="@string/permdesc_accountManagerService"
994        android:label="@string/permlab_accountManagerService" />
995
996    <!-- ================================== -->
997    <!-- Permissions for accessing hardware that may effect battery life-->
998    <!-- ================================== -->
999    <eat-comment />
1000
1001    <!-- Used for permissions that provide direct access to the hardware on
1002         the device that has an effect on battery life.  This includes vibrator,
1003         flashlight,  etc. -->
1004
1005    <permission-group android:name="android.permission-group.AFFECTS_BATTERY"
1006        android:label="@string/permgrouplab_affectsBattery"
1007        android:icon="@drawable/perm_group_affects_battery"
1008        android:description="@string/permgroupdesc_affectsBattery"
1009        android:priority="180" />
1010
1011    <!-- Allows applications to enter Wi-Fi Multicast mode -->
1012    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
1013        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
1014        android:protectionLevel="dangerous"
1015        android:description="@string/permdesc_changeWifiMulticastState"
1016        android:label="@string/permlab_changeWifiMulticastState" />
1017
1018    <!-- Allows access to the vibrator -->
1019    <permission android:name="android.permission.VIBRATE"
1020        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
1021        android:protectionLevel="normal"
1022        android:label="@string/permlab_vibrate"
1023        android:description="@string/permdesc_vibrate" />
1024
1025    <!-- Allows access to the flashlight -->
1026    <permission android:name="android.permission.FLASHLIGHT"
1027        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
1028        android:protectionLevel="normal"
1029        android:label="@string/permlab_flashlight"
1030        android:description="@string/permdesc_flashlight" />
1031
1032    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
1033         from dimming -->
1034    <permission android:name="android.permission.WAKE_LOCK"
1035        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
1036        android:protectionLevel="normal"
1037        android:label="@string/permlab_wakeLock"
1038        android:description="@string/permdesc_wakeLock" />
1039
1040    <!-- Allows using the device's IR transmitter, if available -->
1041    <permission android:name="android.permission.TRANSMIT_IR"
1042        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
1043        android:protectionLevel="normal"
1044        android:label="@string/permlab_transmitIr"
1045        android:description="@string/permdesc_transmitIr" />
1046
1047    <!-- ==================================================== -->
1048    <!-- Permissions related to changing audio settings   -->
1049    <!-- ==================================================== -->
1050    <eat-comment />
1051
1052    <!-- Used for permissions that provide direct access to speaker settings
1053         the device. -->
1054    <permission-group android:name="android.permission-group.AUDIO_SETTINGS"
1055        android:label="@string/permgrouplab_audioSettings"
1056        android:icon="@drawable/perm_group_audio_settings"
1057        android:description="@string/permgroupdesc_audioSettings"
1058        android:priority="130" />
1059
1060    <!-- Allows an application to modify global audio settings -->
1061    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
1062        android:permissionGroup="android.permission-group.AUDIO_SETTINGS"
1063        android:protectionLevel="normal"
1064        android:label="@string/permlab_modifyAudioSettings"
1065        android:description="@string/permdesc_modifyAudioSettings" />
1066
1067    <!-- ================================== -->
1068    <!-- Permissions for accessing hardware -->
1069    <!-- ================================== -->
1070    <eat-comment />
1071
1072    <!-- Used for permissions that provide direct access to the hardware on
1073         the device.  This includes audio, the camera, vibrator, etc. -->
1074    <permission-group android:name="android.permission-group.HARDWARE_CONTROLS"
1075        android:label="@string/permgrouplab_hardwareControls"
1076        android:description="@string/permgroupdesc_hardwareControls"
1077        android:priority="260"/>
1078
1079    <!-- @SystemApi Allows an application to manage preferences and permissions for USB devices
1080         @hide -->
1081    <permission android:name="android.permission.MANAGE_USB"
1082        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
1083        android:protectionLevel="signature|system"
1084        android:label="@string/permlab_manageUsb"
1085        android:description="@string/permdesc_manageUsb" />
1086
1087    <!-- @SystemApi Allows an application to access the MTP USB kernel driver.
1088         For use only by the device side MTP implementation.
1089         @hide -->
1090    <permission android:name="android.permission.ACCESS_MTP"
1091        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
1092        android:protectionLevel="signature|system"
1093        android:label="@string/permlab_accessMtp"
1094        android:description="@string/permdesc_accessMtp" />
1095
1096    <!-- Allows access to hardware peripherals.  Intended only for hardware testing.
1097    <p>Not for use by third-party applications. -->
1098    <permission android:name="android.permission.HARDWARE_TEST"
1099        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
1100        android:protectionLevel="signature"
1101        android:label="@string/permlab_hardware_test"
1102        android:description="@string/permdesc_hardware_test" />
1103
1104    <!-- @SystemApi Allows access to FM
1105         @hide This is not a third-party API (intended for system apps).-->
1106    <permission android:name="android.permission.ACCESS_FM_RADIO"
1107        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
1108        android:protectionLevel="signature|system"
1109        android:label="@string/permlab_fm"
1110        android:description="@string/permdesc_fm" />
1111
1112    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
1113         @hide -->
1114    <permission android:name="android.permission.NET_ADMIN"
1115        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1116        android:protectionLevel="signature" />
1117
1118    <!-- Allows registration for remote audio playback. @hide -->
1119    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
1120        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1121        android:protectionLevel="signature" />
1122
1123    <!-- @SystemApi Allows TvInputService to access underlying TV input hardware such as
1124         built-in tuners and HDMI-in's.
1125         @hide This should only be used by OEM's TvInputService's.
1126    -->
1127    <permission android:name="android.permission.TV_INPUT_HARDWARE"
1128        android:protectionLevel="signatureOrSystem" />
1129
1130    <!-- @SystemApi Allows to capture a frame of TV input hardware such as
1131         built-in tuners and HDMI-in's.
1132         @hide <p>Not for use by third-party applications.
1133    -->
1134    <permission android:name="android.permission.CAPTURE_TV_INPUT"
1135        android:protectionLevel="signatureOrSystem" />
1136
1137    <!-- @hide Allows enabling/disabling OEM unlock
1138   <p>Not for use by third-party applications. -->
1139    <permission android:name="android.permission.OEM_UNLOCK_STATE"
1140                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1141                android:protectionLevel="signature" />
1142
1143    <!-- @hide Allows querying state of PersistentDataBlock
1144   <p>Not for use by third-party applications. -->
1145    <permission android:name="android.permission.ACCESS_PDB_STATE"
1146                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1147                android:protectionLevel="signature" />
1148
1149
1150    <!-- =========================================== -->
1151    <!-- Permissions associated with audio capture -->
1152    <!-- =========================================== -->
1153    <eat-comment />
1154
1155    <!-- Used for permissions that are associated with accessing
1156         microphone audio from the device. Note that phone calls also capture audio
1157         but are in a separate (more visible) permission group. -->
1158    <permission-group android:name="android.permission-group.MICROPHONE"
1159        android:label="@string/permgrouplab_microphone"
1160        android:icon="@drawable/perm_group_microphone"
1161        android:description="@string/permgroupdesc_microphone"
1162        android:permissionGroupFlags="personalInfo"
1163        android:priority="340" />
1164
1165    <!-- Allows an application to record audio -->
1166    <permission android:name="android.permission.RECORD_AUDIO"
1167        android:permissionGroup="android.permission-group.MICROPHONE"
1168        android:protectionLevel="dangerous"
1169        android:label="@string/permlab_recordAudio"
1170        android:description="@string/permdesc_recordAudio" />
1171
1172
1173    <!-- =========================================== -->
1174    <!-- Permissions associated with camera and image capture -->
1175    <!-- =========================================== -->
1176    <eat-comment />
1177
1178    <!-- Used for permissions that are associated with accessing
1179         camera or capturing images/video from the device. -->
1180    <permission-group android:name="android.permission-group.CAMERA"
1181        android:label="@string/permgrouplab_camera"
1182        android:icon="@drawable/perm_group_camera"
1183        android:description="@string/permgroupdesc_camera"
1184        android:permissionGroupFlags="personalInfo"
1185        android:priority="350" />
1186
1187    <!-- Required to be able to access the camera device.
1188         <p>This will automatically enforce the <a
1189         href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code
1190         &lt;uses-feature&gt;}</a> manifest element for <em>all</em> camera features.
1191         If you do not require all camera features or can properly operate if a camera
1192         is not available, then you must modify your manifest as appropriate in order to
1193         install on devices that don't support all camera features.</p> -->
1194    <permission android:name="android.permission.CAMERA"
1195        android:permissionGroup="android.permission-group.CAMERA"
1196        android:protectionLevel="dangerous"
1197        android:label="@string/permlab_camera"
1198        android:description="@string/permdesc_camera" />
1199
1200    <!-- @SystemApi Allows disabling the transmit-indicator LED that is normally on when
1201         a camera is in use by an application.
1202         @hide -->
1203    <permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"
1204        android:permissionGroup="android.permission-group.CAMERA"
1205        android:protectionLevel="signature|system"
1206        android:label="@string/permlab_cameraDisableTransmitLed"
1207        android:description="@string/permdesc_cameraDisableTransmitLed" />
1208
1209    <!-- =========================================== -->
1210    <!-- Permissions associated with telephony state -->
1211    <!-- =========================================== -->
1212    <eat-comment />
1213
1214    <!-- Used for permissions that are associated with accessing and modifying
1215         telephony state: placing calls, intercepting outgoing calls, reading
1216         and modifying the phone state. -->
1217    <permission-group android:name="android.permission-group.PHONE_CALLS"
1218        android:label="@string/permgrouplab_phoneCalls"
1219        android:icon="@drawable/perm_group_phone_calls"
1220        android:description="@string/permgroupdesc_phoneCalls"
1221        android:permissionGroupFlags="personalInfo"
1222        android:priority="370" />
1223
1224    <!-- Allows an application to see the number being dialed during an outgoing
1225         call with the option to redirect the call to a different number or
1226         abort the call altogether. -->
1227    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
1228        android:permissionGroup="android.permission-group.PHONE_CALLS"
1229        android:protectionLevel="dangerous"
1230        android:label="@string/permlab_processOutgoingCalls"
1231        android:description="@string/permdesc_processOutgoingCalls" />
1232
1233    <!-- @SystemApi Allows modification of the telephony state - power on, mmi, etc.
1234         Does not include placing calls.
1235         <p>Not for use by third-party applications. -->
1236    <permission android:name="android.permission.MODIFY_PHONE_STATE"
1237        android:permissionGroup="android.permission-group.PHONE_CALLS"
1238        android:protectionLevel="signature|system"
1239        android:label="@string/permlab_modifyPhoneState"
1240        android:description="@string/permdesc_modifyPhoneState" />
1241
1242    <!-- Allows read only access to phone state.
1243         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1244         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1245         minSdkVersion}</a> and <a
1246         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1247         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1248         grants your app this permission. If you don't need this permission, be sure your <a
1249         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1250         targetSdkVersion}</a> is 4 or higher. -->
1251    <permission android:name="android.permission.READ_PHONE_STATE"
1252        android:permissionGroup="android.permission-group.PHONE_CALLS"
1253        android:protectionLevel="dangerous"
1254        android:label="@string/permlab_readPhoneState"
1255        android:description="@string/permdesc_readPhoneState" />
1256
1257    <!-- Allows read only access to precise phone state.
1258         @hide Pending API council approval -->
1259    <permission android:name="android.permission.READ_PRECISE_PHONE_STATE"
1260        android:permissionGroup="android.permission-group.PHONE_CALLS"
1261        android:protectionLevel="signature|system"
1262        android:label="@string/permlab_readPrecisePhoneState"
1263        android:description="@string/permdesc_readPrecisePhoneState" />
1264
1265    <!-- @SystemApi Allows read access to privileged phone state.
1266         @hide Used internally. -->
1267    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
1268        android:permissionGroup="android.permission-group.PHONE_CALLS"
1269        android:protectionLevel="signature|system" />
1270
1271     <!-- Allows an application to initiate a phone call without going through
1272         the Dialer user interface for the user to confirm the call
1273         being placed. -->
1274    <permission android:name="android.permission.CALL_PHONE"
1275        android:permissionGroup="android.permission-group.PHONE_CALLS"
1276        android:protectionLevel="dangerous"
1277        android:permissionFlags="costsMoney"
1278        android:label="@string/permlab_callPhone"
1279        android:description="@string/permdesc_callPhone" />
1280
1281    <!-- Allows an application to use SIP service -->
1282    <permission android:name="android.permission.USE_SIP"
1283        android:permissionGroup="android.permission-group.PHONE_CALLS"
1284        android:protectionLevel="dangerous"
1285        android:description="@string/permdesc_use_sip"
1286        android:label="@string/permlab_use_sip" />
1287
1288    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1289         PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. This capability indicates that the PhoneAccount
1290         corresponds to a device SIM.
1291         @hide -->
1292    <permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"
1293        android:permissionGroup="android.permission-group.PHONE_CALLS"
1294        android:protectionLevel="system|signature"
1295        android:description="@string/permdesc_register_sim_subscription"
1296        android:label="@string/permlab_register_sim_subscription" />
1297
1298    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1299         PhoneAccount#CAPABILITY_CALL_PROVIDER.
1300         @hide -->
1301    <permission android:name="android.permission.REGISTER_CALL_PROVIDER"
1302        android:permissionGroup="android.permission-group.PHONE_CALLS"
1303        android:protectionLevel="system|signature"
1304        android:description="@string/permdesc_register_call_provider"
1305        android:label="@string/permlab_register_call_provider" />
1306
1307    <!-- @SystemApi Protects the ability to register any PhoneAccount with
1308         PhoneAccount#CAPABILITY_CONNECTION_MANAGER
1309         @hide -->
1310    <permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"
1311        android:permissionGroup="android.permission-group.PHONE_CALLS"
1312        android:protectionLevel="system|signature"
1313        android:description="@string/permdesc_connection_manager"
1314        android:label="@string/permlab_connection_manager" />
1315
1316    <!-- @SystemApi Allows an application to bind to InCallService implementations.
1317         @hide -->
1318    <permission android:name="android.permission.BIND_INCALL_SERVICE"
1319        android:permissionGroup="android.permission-group.PHONE_CALLS"
1320        android:protectionLevel="system|signature"
1321        android:description="@string/permdesc_bind_incall_service"
1322        android:label="@string/permlab_bind_incall_service" />
1323
1324    <!-- @SystemApi Allows an application to bind to ConnectionService implementations.
1325         @hide -->
1326    <permission android:name="android.permission.BIND_CONNECTION_SERVICE"
1327                android:permissionGroup="android.permission-group.PHONE_CALLS"
1328                android:protectionLevel="system|signature"
1329                android:description="@string/permdesc_bind_connection_service"
1330                android:label="@string/permlab_bind_connection_service" />
1331
1332    <!-- @SystemApi Allows an application to control the in-call experience.
1333         @hide -->
1334    <permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"
1335                android:permissionGroup="android.permission-group.PHONE_CALLS"
1336                android:protectionLevel="system|signature"
1337                android:description="@string/permdesc_control_incall_experience"
1338                android:label="@string/permlab_control_incall_experience" />
1339
1340    <!-- ================================== -->
1341    <!-- Permissions for sdcard interaction -->
1342    <!-- ================================== -->
1343    <eat-comment />
1344
1345    <!-- Group of permissions that are related to SD card access. -->
1346    <permission-group android:name="android.permission-group.STORAGE"
1347        android:label="@string/permgrouplab_storage"
1348        android:icon="@drawable/perm_group_storage"
1349        android:description="@string/permgroupdesc_storage"
1350        android:permissionGroupFlags="personalInfo"
1351        android:priority="240" />
1352
1353    <!-- Allows an application to read from external storage.
1354         <p>Any app that declares the {@link #WRITE_EXTERNAL_STORAGE} permission is implicitly
1355         granted this permission.</p>
1356         <p>This permission is enforced starting in API level 19.  Before API level 19, this
1357         permission is not enforced and all apps still have access to read from external storage.
1358         You can test your app with the permission enforced by enabling <em>Protect USB
1359         storage</em> under Developer options in the Settings app on a device running Android 4.1 or
1360         higher.</p>
1361         <p>Also starting in API level 19, this permission is <em>not</em> required to
1362         read/write files in your application-specific directories returned by
1363         {@link android.content.Context#getExternalFilesDir} and
1364         {@link android.content.Context#getExternalCacheDir}.
1365         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1366         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1367         minSdkVersion}</a> and <a
1368         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1369         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1370         grants your app this permission. If you don't need this permission, be sure your <a
1371         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1372         targetSdkVersion}</a> is 4 or higher.-->
1373    <permission android:name="android.permission.READ_EXTERNAL_STORAGE"
1374        android:permissionGroup="android.permission-group.STORAGE"
1375        android:label="@string/permlab_sdcardRead"
1376        android:description="@string/permdesc_sdcardRead"
1377        android:protectionLevel="normal" />
1378
1379    <!-- Allows an application to write to external storage.
1380         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1381         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1382         minSdkVersion}</a> and <a
1383         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1384         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1385         grants your app this permission. If you don't need this permission, be sure your <a
1386         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1387         targetSdkVersion}</a> is 4 or higher.
1388         <p>Starting in API level 19, this permission is <em>not</em> required to
1389         read/write files in your application-specific directories returned by
1390         {@link android.content.Context#getExternalFilesDir} and
1391         {@link android.content.Context#getExternalCacheDir}. -->
1392    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
1393        android:permissionGroup="android.permission-group.STORAGE"
1394        android:label="@string/permlab_sdcardWrite"
1395        android:description="@string/permdesc_sdcardWrite"
1396        android:protectionLevel="dangerous" />
1397
1398    <!-- @SystemApi Allows an application to write to internal media storage
1399         @hide  -->
1400    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
1401        android:permissionGroup="android.permission-group.STORAGE"
1402        android:label="@string/permlab_mediaStorageWrite"
1403        android:description="@string/permdesc_mediaStorageWrite"
1404        android:protectionLevel="signature|system" />
1405
1406    <!-- Allows an application to manage access to documents, usually as part
1407         of a document picker. -->
1408    <permission android:name="android.permission.MANAGE_DOCUMENTS"
1409        android:permissionGroup="android.permission-group.STORAGE"
1410        android:label="@string/permlab_manageDocs"
1411        android:description="@string/permdesc_manageDocs"
1412        android:protectionLevel="signature" />
1413
1414    <!-- ================================== -->
1415    <!-- Permissions for screenlock         -->
1416    <!-- ================================== -->
1417    <eat-comment />
1418
1419    <!-- Group of permissions that are related to the screenlock. -->
1420    <permission-group android:name="android.permission-group.SCREENLOCK"
1421        android:label="@string/permgrouplab_screenlock"
1422        android:icon="@drawable/perm_group_screenlock"
1423        android:permissionGroupFlags="personalInfo"
1424        android:description="@string/permgroupdesc_screenlock"
1425        android:priority="230" />
1426
1427    <!-- Allows applications to disable the keyguard -->
1428    <permission android:name="android.permission.DISABLE_KEYGUARD"
1429        android:permissionGroup="android.permission-group.SCREENLOCK"
1430        android:protectionLevel="dangerous"
1431        android:description="@string/permdesc_disableKeyguard"
1432        android:label="@string/permlab_disableKeyguard" />
1433
1434    <!-- ================================== -->
1435    <!-- Permissions to access other installed applications  -->
1436    <!-- ================================== -->
1437    <eat-comment />
1438
1439    <!-- Group of permissions that are related to the other applications
1440         installed on the system.  Examples include such as listing
1441         running apps, or killing background processes. -->
1442    <permission-group android:name="android.permission-group.APP_INFO"
1443        android:label="@string/permgrouplab_appInfo"
1444        android:icon="@drawable/perm_group_app_info"
1445        android:description="@string/permgroupdesc_appInfo"
1446        android:priority="220" />
1447
1448    <!-- @deprecated No longer enforced. -->
1449    <permission android:name="android.permission.GET_TASKS"
1450        android:permissionGroup="android.permission-group.APP_INFO"
1451        android:protectionLevel="normal"
1452        android:label="@string/permlab_getTasks"
1453        android:description="@string/permdesc_getTasks" />
1454
1455    <!-- New version of GET_TASKS that apps can request, since GET_TASKS doesn't really
1456         give access to task information.  We need this new one because there are
1457         many existing apps that use add libraries and such that have validation
1458         code to ensure the app has requested the GET_TASKS permission by seeing
1459         if it has been granted the permission...  if it hasn't, it kills the app
1460         with a message about being upset.  So we need to have it continue to look
1461         like the app is getting that permission, even though it will never be
1462         checked, and new privileged apps can now request this one for real access.
1463         @hide
1464         @SystemApi -->
1465    <permission android:name="android.permission.REAL_GET_TASKS"
1466        android:permissionGroup="android.permission-group.APP_INFO"
1467        android:protectionLevel="signature|system"
1468        android:label="@string/permlab_getTasks"
1469        android:description="@string/permdesc_getTasks" />
1470
1471    <!-- Allows an application to start a task from a ActivityManager#RecentTaskInfo.
1472         @hide -->
1473    <permission android:name="android.permission.START_TASKS_FROM_RECENTS"
1474        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1475        android:protectionLevel="signature|system"
1476        android:label="@string/permlab_startTasksFromRecents"
1477        android:description="@string/permdesc_startTasksFromRecents" />
1478
1479    <!-- @SystemApi @hide Allows an application to call APIs that allow it to do interactions
1480         across the users on the device, using singleton services and
1481         user-targeted broadcasts.  This permission is not available to
1482         third party applications. -->
1483    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
1484        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1485        android:protectionLevel="signature|system|development"
1486        android:label="@string/permlab_interactAcrossUsers"
1487        android:description="@string/permdesc_interactAcrossUsers" />
1488
1489    <!-- @hide Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
1490         that removes restrictions on where broadcasts can be sent and allows other
1491         types of interactions. -->
1492    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
1493        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1494        android:protectionLevel="signature"
1495        android:label="@string/permlab_interactAcrossUsersFull"
1496        android:description="@string/permdesc_interactAcrossUsersFull" />
1497
1498    <!-- @SystemApi @hide Allows an application to call APIs that allow it to query and manage
1499         users on the device. This permission is not available to
1500         third party applications. -->
1501    <permission android:name="android.permission.MANAGE_USERS"
1502        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1503        android:protectionLevel="signature|system"
1504        android:label="@string/permlab_manageUsers"
1505        android:description="@string/permdesc_manageUsers" />
1506
1507    <!-- Allows an application to get full detailed information about
1508         recently running tasks, with full fidelity to the real state.
1509         @hide -->
1510    <permission android:name="android.permission.GET_DETAILED_TASKS"
1511        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1512        android:protectionLevel="signature"
1513        android:label="@string/permlab_getDetailedTasks"
1514        android:description="@string/permdesc_getDetailedTasks" />
1515
1516    <!-- Allows an application to change the Z-order of tasks -->
1517    <permission android:name="android.permission.REORDER_TASKS"
1518        android:permissionGroup="android.permission-group.APP_INFO"
1519        android:protectionLevel="normal"
1520        android:label="@string/permlab_reorderTasks"
1521        android:description="@string/permdesc_reorderTasks" />
1522
1523    <!-- @hide Allows an application to change to remove/kill tasks -->
1524    <permission android:name="android.permission.REMOVE_TASKS"
1525        android:permissionGroup="android.permission-group.APP_INFO"
1526        android:protectionLevel="signature"
1527        android:label="@string/permlab_removeTasks"
1528        android:description="@string/permdesc_removeTasks" />
1529
1530    <!-- @SystemApi @hide Allows an application to create/manage/remove stacks -->
1531    <permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"
1532        android:permissionGroup="android.permission-group.APP_INFO"
1533        android:protectionLevel="signature|system"
1534        android:label="@string/permlab_manageActivityStacks"
1535        android:description="@string/permdesc_manageActivityStacks" />
1536
1537    <!-- Allows an application to start any activity, regardless of permission
1538         protection or exported state. @hide -->
1539    <permission android:name="android.permission.START_ANY_ACTIVITY"
1540        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1541        android:protectionLevel="signature"
1542        android:label="@string/permlab_startAnyActivity"
1543        android:description="@string/permdesc_startAnyActivity" />
1544
1545    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
1546        API is no longer supported. -->
1547    <permission android:name="android.permission.RESTART_PACKAGES"
1548        android:permissionGroup="android.permission-group.APP_INFO"
1549        android:protectionLevel="normal"
1550        android:label="@string/permlab_killBackgroundProcesses"
1551        android:description="@string/permdesc_killBackgroundProcesses" />
1552
1553    <!-- Allows an application to call
1554        {@link android.app.ActivityManager#killBackgroundProcesses}. -->
1555    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
1556        android:permissionGroup="android.permission-group.APP_INFO"
1557        android:protectionLevel="normal"
1558        android:label="@string/permlab_killBackgroundProcesses"
1559        android:description="@string/permdesc_killBackgroundProcesses" />
1560
1561    <!-- ================================== -->
1562    <!-- Permissions affecting the display of other applications  -->
1563    <!-- ================================== -->
1564    <eat-comment />
1565
1566    <!-- Group of permissions that allow manipulation of how
1567         another application displays UI to the user. -->
1568    <permission-group android:name="android.permission-group.DISPLAY"
1569        android:label="@string/permgrouplab_display"
1570        android:icon="@drawable/perm_group_display"
1571        android:description="@string/permgroupdesc_display"
1572        android:priority="190"/>
1573
1574    <!-- Allows an application to open windows using the type
1575         {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
1576         shown on top of all other applications.  Very few applications
1577         should use this permission; these windows are intended for
1578         system-level interaction with the user. -->
1579    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
1580        android:permissionGroup="android.permission-group.DISPLAY"
1581        android:protectionLevel="dangerous"
1582        android:label="@string/permlab_systemAlertWindow"
1583        android:description="@string/permdesc_systemAlertWindow" />
1584
1585    <!-- ================================== -->
1586    <!-- Permissions affecting the system wallpaper -->
1587    <!-- ================================== -->
1588    <eat-comment />
1589
1590    <!-- Group of permissions that allow manipulation of how
1591         another application displays UI to the user. -->
1592    <permission-group android:name="android.permission-group.WALLPAPER"
1593        android:label="@string/permgrouplab_wallpaper"
1594        android:icon="@drawable/perm_group_wallpaper"
1595        android:description="@string/permgroupdesc_wallpaper"
1596        android:priority="150" />
1597
1598    <!-- Allows applications to set the wallpaper -->
1599    <permission android:name="android.permission.SET_WALLPAPER"
1600        android:permissionGroup="android.permission-group.WALLPAPER"
1601        android:protectionLevel="normal"
1602        android:label="@string/permlab_setWallpaper"
1603        android:description="@string/permdesc_setWallpaper" />
1604
1605    <!-- Allows applications to set the wallpaper hints -->
1606    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
1607        android:permissionGroup="android.permission-group.WALLPAPER"
1608        android:protectionLevel="normal"
1609        android:label="@string/permlab_setWallpaperHints"
1610        android:description="@string/permdesc_setWallpaperHints" />
1611
1612    <!-- ============================================ -->
1613    <!-- Permissions for changing the system clock -->
1614    <!-- ============================================ -->
1615    <eat-comment />
1616
1617    <!-- Group of permissions that are related to system clock. -->
1618    <permission-group android:name="android.permission-group.SYSTEM_CLOCK"
1619        android:label="@string/permgrouplab_systemClock"
1620        android:icon="@drawable/perm_group_system_clock"
1621        android:description="@string/permgroupdesc_systemClock"
1622        android:priority="140" />
1623
1624    <!-- @SystemApi Allows applications to set the system time.
1625    <p>Not for use by third-party applications. -->
1626    <permission android:name="android.permission.SET_TIME"
1627        android:protectionLevel="signature|system"
1628        android:label="@string/permlab_setTime"
1629        android:description="@string/permdesc_setTime" />
1630
1631    <!-- Allows applications to set the system time zone -->
1632    <permission android:name="android.permission.SET_TIME_ZONE"
1633        android:permissionGroup="android.permission-group.SYSTEM_CLOCK"
1634        android:protectionLevel="normal"
1635        android:label="@string/permlab_setTimeZone"
1636        android:description="@string/permdesc_setTimeZone" />
1637
1638    <!-- ==================================================== -->
1639    <!-- Permissions related to changing status bar   -->
1640    <!-- ==================================================== -->
1641    <eat-comment />
1642
1643    <!-- Used for permissions that change the status bar -->
1644    <permission-group android:name="android.permission-group.STATUS_BAR"
1645        android:label="@string/permgrouplab_statusBar"
1646        android:icon="@drawable/perm_group_status_bar"
1647        android:description="@string/permgroupdesc_statusBar"
1648        android:priority="110" />
1649
1650    <!-- Allows an application to expand or collapse the status bar. -->
1651    <permission android:name="android.permission.EXPAND_STATUS_BAR"
1652        android:permissionGroup="android.permission-group.STATUS_BAR"
1653        android:protectionLevel="normal"
1654        android:label="@string/permlab_expandStatusBar"
1655        android:description="@string/permdesc_expandStatusBar" />
1656
1657    <!-- ============================================================== -->
1658    <!-- Permissions related to adding/removing shortcuts from Launcher -->
1659    <!-- ============================================================== -->
1660    <eat-comment />
1661
1662    <!-- Allows an application to install a shortcut in Launcher -->
1663    <permission
1664        android:name="com.android.launcher.permission.INSTALL_SHORTCUT"
1665        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1666        android:protectionLevel="dangerous"
1667        android:label="@string/permlab_install_shortcut"
1668        android:description="@string/permdesc_install_shortcut" />
1669
1670        <!-- Allows an application to uninstall a shortcut in Launcher -->
1671    <permission
1672        android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"
1673        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1674        android:protectionLevel="dangerous"
1675        android:label="@string/permlab_uninstall_shortcut"
1676        android:description="@string/permdesc_uninstall_shortcut"/>
1677
1678    <!-- ==================================================== -->
1679    <!-- Permissions related to accessing sync settings   -->
1680    <!-- ==================================================== -->
1681    <eat-comment />
1682
1683    <!-- Used for permissions that access the sync settings or sync
1684         related information. -->
1685    <permission-group android:name="android.permission-group.SYNC_SETTINGS"
1686        android:label="@string/permgrouplab_syncSettings"
1687        android:icon="@drawable/perm_group_sync_settings"
1688        android:description="@string/permgroupdesc_syncSettings"
1689        android:priority="120" />
1690
1691    <!-- Allows applications to read the sync settings -->
1692    <permission android:name="android.permission.READ_SYNC_SETTINGS"
1693        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1694        android:protectionLevel="normal"
1695        android:description="@string/permdesc_readSyncSettings"
1696        android:label="@string/permlab_readSyncSettings" />
1697
1698    <!-- Allows applications to write the sync settings -->
1699    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
1700        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1701        android:protectionLevel="normal"
1702        android:description="@string/permdesc_writeSyncSettings"
1703        android:label="@string/permlab_writeSyncSettings" />
1704
1705    <!-- Allows applications to read the sync stats -->
1706    <permission android:name="android.permission.READ_SYNC_STATS"
1707        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1708        android:protectionLevel="normal"
1709        android:description="@string/permdesc_readSyncStats"
1710        android:label="@string/permlab_readSyncStats" />
1711
1712
1713    <!-- ============================================ -->
1714    <!-- Permissions for low-level system interaction -->
1715    <!-- ============================================ -->
1716    <eat-comment />
1717
1718    <!-- Group of permissions that are related to system APIs.  Many
1719         of these are not permissions the user will be expected to understand,
1720         and such permissions should generally be marked as "normal" protection
1721         level so they don't get displayed.  This can also, however, be used
1722         for miscellaneous features that provide access to the operating system,
1723         such as writing the global system settings. -->
1724    <permission-group android:name="android.permission-group.SYSTEM_TOOLS"
1725        android:label="@string/permgrouplab_systemTools"
1726        android:icon="@drawable/perm_group_system_tools"
1727        android:description="@string/permgroupdesc_systemTools"
1728        android:priority="100" />
1729
1730    <!-- @SystemApi @hide Change the screen compatibility mode of applications -->
1731    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
1732        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1733        android:protectionLevel="signature"
1734        android:label="@string/permlab_setScreenCompatibility"
1735        android:description="@string/permdesc_setScreenCompatibility" />
1736
1737    <!-- Allows an application to access all multi-user external storage @hide -->
1738    <permission android:name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE"
1739        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1740        android:label="@string/permlab_sdcardAccessAll"
1741        android:description="@string/permdesc_sdcardAccessAll"
1742        android:protectionLevel="signature" />
1743
1744    <!-- @SystemApi Allows an application to modify the current configuration, such
1745         as locale. -->
1746    <permission android:name="android.permission.CHANGE_CONFIGURATION"
1747        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1748        android:protectionLevel="signature|system|development"
1749        android:label="@string/permlab_changeConfiguration"
1750        android:description="@string/permdesc_changeConfiguration" />
1751
1752    <!-- Allows an application to read or write the system settings. -->
1753    <permission android:name="android.permission.WRITE_SETTINGS"
1754        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1755        android:protectionLevel="normal"
1756        android:label="@string/permlab_writeSettings"
1757        android:description="@string/permdesc_writeSettings" />
1758
1759    <!-- @SystemApi Allows an application to modify the Google service map.
1760    <p>Not for use by third-party applications. -->
1761    <permission android:name="android.permission.WRITE_GSERVICES"
1762        android:protectionLevel="signature|system"
1763        android:label="@string/permlab_writeGservices"
1764        android:description="@string/permdesc_writeGservices" />
1765
1766    <!-- @SystemApi Allows an application to call
1767        {@link android.app.ActivityManager#forceStopPackage}.
1768        @hide -->
1769    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
1770        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1771        android:protectionLevel="signature|system"
1772        android:label="@string/permlab_forceStopPackages"
1773        android:description="@string/permdesc_forceStopPackages" />
1774
1775    <!-- @SystemApi @hide Allows an application to retrieve the content of the active window
1776         An active window is the window that has fired an accessibility event. -->
1777    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
1778        android:permissionGroup="android.permission-group.PERSONAL_INFO"
1779        android:protectionLevel="signature|system"
1780        android:label="@string/permlab_retrieve_window_content"
1781        android:description="@string/permdesc_retrieve_window_content" />
1782
1783    <!-- @SystemApi Modify the global animation scaling factor.
1784    <p>Not for use by third-party applications. -->
1785    <permission android:name="android.permission.SET_ANIMATION_SCALE"
1786        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1787        android:protectionLevel="signature|system|development"
1788        android:label="@string/permlab_setAnimationScale"
1789        android:description="@string/permdesc_setAnimationScale" />
1790
1791    <!-- @deprecated This functionality will be removed in the future; please do
1792         not use. Allow an application to make its activities persistent. -->
1793    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
1794        android:permissionGroup="android.permission-group.APP_INFO"
1795        android:protectionLevel="normal"
1796        android:label="@string/permlab_persistentActivity"
1797        android:description="@string/permdesc_persistentActivity" />
1798
1799    <!-- Allows an application to find out the space used by any package. -->
1800    <permission android:name="android.permission.GET_PACKAGE_SIZE"
1801        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1802        android:protectionLevel="normal"
1803        android:label="@string/permlab_getPackageSize"
1804        android:description="@string/permdesc_getPackageSize" />
1805
1806    <!-- @deprecated No longer useful, see
1807         {@link android.content.pm.PackageManager#addPackageToPreferred}
1808         for details. -->
1809    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
1810        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1811        android:protectionLevel="signature"
1812        android:label="@string/permlab_setPreferredApplications"
1813        android:description="@string/permdesc_setPreferredApplications" />
1814
1815    <!-- Allows an application to receive the
1816         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
1817         broadcast after the system finishes booting.  If you don't
1818         request this permission, you will not receive the broadcast at
1819         that time.  Though holding this permission does not have any
1820         security implications, it can have a negative impact on the
1821         user experience by increasing the amount of time it takes the
1822         system to start and allowing applications to have themselves
1823         running without the user being aware of them.  As such, you must
1824         explicitly declare your use of this facility to make that visible
1825         to the user. -->
1826    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
1827        android:permissionGroup="android.permission-group.APP_INFO"
1828        android:protectionLevel="normal"
1829        android:label="@string/permlab_receiveBootCompleted"
1830        android:description="@string/permdesc_receiveBootCompleted" />
1831
1832    <!-- Allows an application to broadcast sticky intents.  These are
1833         broadcasts whose data is held by the system after being finished,
1834         so that clients can quickly retrieve that data without having
1835         to wait for the next broadcast. -->
1836    <permission android:name="android.permission.BROADCAST_STICKY"
1837        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1838        android:protectionLevel="normal"
1839        android:label="@string/permlab_broadcastSticky"
1840        android:description="@string/permdesc_broadcastSticky" />
1841
1842    <!-- @SystemApi Allows mounting and unmounting file systems for removable storage.
1843    <p>Not for use by third-party applications.-->
1844    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
1845        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1846        android:protectionLevel="system|signature"
1847        android:label="@string/permlab_mount_unmount_filesystems"
1848        android:description="@string/permdesc_mount_unmount_filesystems" />
1849
1850    <!-- @SystemApi Allows formatting file systems for removable storage.
1851    <p>Not for use by third-party applications. -->
1852    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
1853        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1854        android:protectionLevel="system|signature"
1855        android:label="@string/permlab_mount_format_filesystems"
1856        android:description="@string/permdesc_mount_format_filesystems" />
1857
1858    <!-- Allows access to ASEC non-destructive API calls
1859         @hide  -->
1860    <permission android:name="android.permission.ASEC_ACCESS"
1861        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1862        android:protectionLevel="signature"
1863        android:label="@string/permlab_asec_access"
1864        android:description="@string/permdesc_asec_access" />
1865
1866    <!-- Allows creation of ASEC volumes
1867         @hide  -->
1868    <permission android:name="android.permission.ASEC_CREATE"
1869        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1870        android:protectionLevel="signature"
1871        android:label="@string/permlab_asec_create"
1872        android:description="@string/permdesc_asec_create" />
1873
1874    <!-- Allows destruction of ASEC volumes
1875         @hide  -->
1876    <permission android:name="android.permission.ASEC_DESTROY"
1877        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1878        android:protectionLevel="signature"
1879        android:label="@string/permlab_asec_destroy"
1880        android:description="@string/permdesc_asec_destroy" />
1881
1882    <!-- Allows mount / unmount of ASEC volumes
1883         @hide  -->
1884    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
1885        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1886        android:protectionLevel="signature"
1887        android:label="@string/permlab_asec_mount_unmount"
1888        android:description="@string/permdesc_asec_mount_unmount" />
1889
1890    <!-- Allows rename of ASEC volumes
1891         @hide  -->
1892    <permission android:name="android.permission.ASEC_RENAME"
1893        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1894        android:protectionLevel="signature"
1895        android:label="@string/permlab_asec_rename"
1896        android:description="@string/permdesc_asec_rename" />
1897
1898    <!-- @SystemApi Allows applications to write the apn settings.
1899    <p>Not for use by third-party applications. -->
1900    <permission android:name="android.permission.WRITE_APN_SETTINGS"
1901                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1902                android:protectionLevel="signature|system"
1903                android:description="@string/permdesc_writeApnSettings"
1904                android:label="@string/permlab_writeApnSettings" />
1905
1906    <!-- Allows an application to allow access the subscribed feeds
1907         ContentProvider. -->
1908    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
1909        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1910        android:label="@string/permlab_subscribedFeedsRead"
1911        android:description="@string/permdesc_subscribedFeedsRead"
1912        android:protectionLevel="normal" />
1913    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
1914        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1915        android:label="@string/permlab_subscribedFeedsWrite"
1916        android:description="@string/permdesc_subscribedFeedsWrite"
1917        android:protectionLevel="dangerous" />
1918
1919    <!-- Allows applications to change network connectivity state -->
1920    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
1921        android:permissionGroup="android.permission-group.NETWORK"
1922        android:protectionLevel="normal"
1923        android:description="@string/permdesc_changeNetworkState"
1924        android:label="@string/permlab_changeNetworkState" />
1925
1926    <!-- Allows an application to clear the caches of all installed
1927         applications on the device.  -->
1928    <permission android:name="android.permission.CLEAR_APP_CACHE"
1929        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1930        android:protectionLevel="dangerous"
1931        android:label="@string/permlab_clearAppCache"
1932        android:description="@string/permdesc_clearAppCache" />
1933
1934    <!-- @SystemApi Allows an application to use any media decoder when decoding for playback
1935         @hide -->
1936    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
1937        android:protectionLevel="signature|system"
1938        android:label="@string/permlab_anyCodecForPlayback"
1939        android:description="@string/permdesc_anyCodecForPlayback" />
1940
1941    <!-- @SystemApi Allows an application to install and/or uninstall CA certificates on
1942         behalf of the user.
1943         @hide -->
1944    <permission android:name="android.permission.MANAGE_CA_CERTIFICATES"
1945        android:protectionLevel="signature|system"
1946        android:label="@string/permlab_manageCaCertificates"
1947        android:description="@string/permdesc_manageCaCertificates" />
1948
1949    <!-- @SystemApi Allows an application to do certain operations needed for
1950         interacting with the recovery (system update) system.
1951         @hide -->
1952    <permission android:name="android.permission.RECOVERY"
1953        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1954        android:protectionLevel="signature|system"
1955        android:label="@string/permlab_recovery"
1956        android:description="@string/permdesc_recovery" />
1957
1958    <!-- Allows the system to bind to an application's task services
1959         @hide -->
1960    <permission android:name="android.permission.BIND_JOB_SERVICE"
1961        android:protectionLevel="signature"
1962        android:label="@string/permlab_bindJobService"
1963        android:description="@string/permdesc_bindJobService" />
1964    <uses-permission android:name="android.permission.BIND_JOB_SERVICE"/>
1965
1966    <!-- ========================================= -->
1967    <!-- Permissions for special development tools -->
1968    <!-- ========================================= -->
1969    <eat-comment />
1970
1971    <!-- Group of permissions that are related to development features.  These
1972         are not permissions that should appear in third-party applications; they
1973         protect APIs that are intended only to be used for development
1974         purposes. -->
1975    <permission-group android:name="android.permission-group.DEVELOPMENT_TOOLS"
1976        android:label="@string/permgrouplab_developmentTools"
1977        android:description="@string/permgroupdesc_developmentTools"
1978        android:priority="310" />
1979
1980    <!-- @SystemApi Allows an application to read or write the secure system settings.
1981    <p>Not for use by third-party applications. -->
1982    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
1983        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1984        android:protectionLevel="signature|system|development"
1985        android:label="@string/permlab_writeSecureSettings"
1986        android:description="@string/permdesc_writeSecureSettings" />
1987
1988    <!-- @SystemApi Allows an application to retrieve state dump information from system services.
1989    <p>Not for use by third-party applications. -->
1990    <permission android:name="android.permission.DUMP"
1991        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1992        android:protectionLevel="signature|system|development"
1993        android:label="@string/permlab_dump"
1994        android:description="@string/permdesc_dump" />
1995
1996    <!-- @SystemApi Allows an application to read the low-level system log files.
1997    <p>Not for use by third-party applications, because
1998    Log entries can contain the user's private information. -->
1999    <permission android:name="android.permission.READ_LOGS"
2000        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
2001        android:protectionLevel="signature|system|development"
2002        android:label="@string/permlab_readLogs"
2003        android:description="@string/permdesc_readLogs" />
2004
2005    <!-- @SystemApi Configure an application for debugging.
2006    <p>Not for use by third-party applications. -->
2007    <permission android:name="android.permission.SET_DEBUG_APP"
2008        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
2009        android:protectionLevel="signature|system|development"
2010        android:label="@string/permlab_setDebugApp"
2011        android:description="@string/permdesc_setDebugApp" />
2012
2013    <!-- @SystemApi Allows an application to set the maximum number of (not needed)
2014         application processes that can be running.
2015         <p>Not for use by third-party applications. -->
2016    <permission android:name="android.permission.SET_PROCESS_LIMIT"
2017        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
2018        android:protectionLevel="signature|system|development"
2019        android:label="@string/permlab_setProcessLimit"
2020        android:description="@string/permdesc_setProcessLimit" />
2021
2022    <!-- @SystemApi Allows an application to control whether activities are immediately
2023         finished when put in the background.
2024         <p>Not for use by third-party applications. -->
2025    <permission android:name="android.permission.SET_ALWAYS_FINISH"
2026        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
2027        android:protectionLevel="signature|system|development"
2028        android:label="@string/permlab_setAlwaysFinish"
2029        android:description="@string/permdesc_setAlwaysFinish" />
2030
2031    <!-- @SystemApi Allow an application to request that a signal be sent to all persistent processes.
2032    <p>Not for use by third-party applications. -->
2033    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
2034        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
2035        android:protectionLevel="signature|system|development"
2036        android:label="@string/permlab_signalPersistentProcesses"
2037        android:description="@string/permdesc_signalPersistentProcesses" />
2038
2039    <!-- ==================================== -->
2040    <!-- Private (signature-only) permissions -->
2041    <!-- ==================================== -->
2042    <eat-comment />
2043
2044    <!-- @SystemApi Allows applications to RW to diagnostic resources.
2045    <p>Not for use by third-party applications. -->
2046    <permission android:name="android.permission.DIAGNOSTIC"
2047        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2048        android:protectionLevel="signature"
2049        android:description="@string/permdesc_diagnostic"
2050        android:label="@string/permlab_diagnostic" />
2051
2052    <!-- @SystemApi Allows an application to open, close, or disable the status bar
2053         and its icons.
2054         <p>Not for use by third-party applications. -->
2055    <permission android:name="android.permission.STATUS_BAR"
2056        android:label="@string/permlab_statusBar"
2057        android:description="@string/permdesc_statusBar"
2058        android:protectionLevel="signature|system" />
2059
2060    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
2061    @hide -->
2062    <permission android:name="android.permission.STATUS_BAR_SERVICE"
2063        android:label="@string/permlab_statusBarService"
2064        android:description="@string/permdesc_statusBarService"
2065        android:protectionLevel="signature" />
2066
2067    <!-- Allows an application to force a BACK operation on whatever is the
2068         top activity.
2069         <p>Not for use by third-party applications. -->
2070    <permission android:name="android.permission.FORCE_BACK"
2071        android:label="@string/permlab_forceBack"
2072        android:description="@string/permdesc_forceBack"
2073        android:protectionLevel="signature" />
2074
2075    <!-- @SystemApi Allows an application to update device statistics.
2076    <p>Not for use by third-party applications. -->
2077    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
2078        android:label="@string/permlab_updateBatteryStats"
2079        android:description="@string/permdesc_updateBatteryStats"
2080        android:protectionLevel="signature|system" />
2081
2082    <!-- @SystemApi @hide Allows an application to collect battery statistics -->
2083    <permission android:name="android.permission.GET_APP_OPS_STATS"
2084        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2085        android:label="@string/permlab_getAppOpsStats"
2086        android:description="@string/permdesc_getAppOpsStats"
2087        android:protectionLevel="signature|system|development" />
2088
2089    <!-- @SystemApi Allows an application to update application operation statistics. Not for
2090         use by third party apps. @hide -->
2091    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
2092        android:label="@string/permlab_updateAppOpsStats"
2093        android:description="@string/permdesc_updateAppOpsStats"
2094        android:protectionLevel="signature|system" />
2095
2096    <!-- Allows an application to open windows that are for use by parts
2097         of the system user interface.
2098         <p>Not for use by third-party applications. -->
2099    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
2100        android:label="@string/permlab_internalSystemWindow"
2101        android:description="@string/permdesc_internalSystemWindow"
2102        android:protectionLevel="signature" />
2103
2104    <!-- Allows an application to manage (create, destroy,
2105         Z-order) application tokens in the window manager.
2106         <p>Not for use by third-party applications. -->
2107    <permission android:name="android.permission.MANAGE_APP_TOKENS"
2108        android:label="@string/permlab_manageAppTokens"
2109        android:description="@string/permdesc_manageAppTokens"
2110        android:protectionLevel="signature" />
2111
2112    <!-- @hide Allows the application to temporarily freeze the screen for a
2113         full-screen transition. -->
2114    <permission android:name="android.permission.FREEZE_SCREEN"
2115        android:label="@string/permlab_freezeScreen"
2116        android:description="@string/permdesc_freezeScreen"
2117        android:protectionLevel="signature" />
2118
2119    <!-- Allows an application to inject user events (keys, touch, trackball)
2120         into the event stream and deliver them to ANY window.  Without this
2121         permission, you can only deliver events to windows in your own process.
2122         <p>Not for use by third-party applications. -->
2123    <permission android:name="android.permission.INJECT_EVENTS"
2124        android:label="@string/permlab_injectEvents"
2125        android:description="@string/permdesc_injectEvents"
2126        android:protectionLevel="signature" />
2127
2128    <!-- @hide Allows an application to register an input filter which filters the stream
2129         of user events (keys, touch, trackball) before they are dispatched to any window. -->
2130    <permission android:name="android.permission.FILTER_EVENTS"
2131        android:label="@string/permlab_filter_events"
2132        android:description="@string/permdesc_filter_events"
2133        android:protectionLevel="signature" />
2134
2135    <!-- @hide Allows an application to retrieve the window token from the accessibility manager. -->
2136    <permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"
2137        android:label="@string/permlab_retrieveWindowToken"
2138        android:description="@string/permdesc_retrieveWindowToken"
2139        android:protectionLevel="signature" />
2140
2141    <!-- @hide Allows an application to collect frame statistics -->
2142    <permission android:name="android.permission.FRAME_STATS"
2143         android:label="@string/permlab_frameStats"
2144         android:description="@string/permdesc_frameStats"
2145         android:protectionLevel="signature" />
2146
2147    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
2148    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
2149        android:label="@string/permlab_temporary_enable_accessibility"
2150        android:description="@string/permdesc_temporary_enable_accessibility"
2151        android:protectionLevel="signature" />
2152
2153    <!-- Allows an application to watch and control how activities are
2154         started globally in the system.  Only for is in debugging
2155         (usually the monkey command).
2156         <p>Not for use by third-party applications. -->
2157    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
2158        android:label="@string/permlab_runSetActivityWatcher"
2159        android:description="@string/permdesc_runSetActivityWatcher"
2160        android:protectionLevel="signature" />
2161
2162    <!-- @SystemApi Allows an application to call the activity manager shutdown() API
2163         to put the higher-level system there into a shutdown state.
2164         @hide -->
2165    <permission android:name="android.permission.SHUTDOWN"
2166        android:label="@string/permlab_shutdown"
2167        android:description="@string/permdesc_shutdown"
2168        android:protectionLevel="signature|system" />
2169
2170    <!-- @SystemApi Allows an application to tell the activity manager to temporarily
2171         stop application switches, putting it into a special mode that
2172         prevents applications from immediately switching away from some
2173         critical UI such as the home screen.
2174         @hide -->
2175    <permission android:name="android.permission.STOP_APP_SWITCHES"
2176        android:label="@string/permlab_stopAppSwitches"
2177        android:description="@string/permdesc_stopAppSwitches"
2178        android:protectionLevel="signature|system" />
2179
2180    <!-- Allows an application to retrieve private information about
2181         the current top activity, such as any assist context it can provide.
2182         <p>Not for use by third-party applications. -->
2183    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
2184        android:label="@string/permlab_getTopActivityInfo"
2185        android:description="@string/permdesc_getTopActivityInfo"
2186        android:protectionLevel="signature" />
2187
2188    <!-- Allows an application to retrieve the current state of keys and
2189         switches.
2190         <p>Not for use by third-party applications.
2191         @deprecated The API that used this permission has been removed. -->
2192    <permission android:name="android.permission.READ_INPUT_STATE"
2193        android:label="@string/permlab_readInputState"
2194        android:description="@string/permdesc_readInputState"
2195        android:protectionLevel="signature" />
2196
2197    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
2198         to ensure that only the system can bind to it. -->
2199    <permission android:name="android.permission.BIND_INPUT_METHOD"
2200        android:label="@string/permlab_bindInputMethod"
2201        android:description="@string/permdesc_bindInputMethod"
2202        android:protectionLevel="signature" />
2203
2204    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
2205         to ensure that only the system can bind to it. -->
2206    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
2207        android:label="@string/permlab_bindAccessibilityService"
2208        android:description="@string/permdesc_bindAccessibilityService"
2209        android:protectionLevel="signature" />
2210
2211    <!-- Must be required by a {@link android.printservice.PrintService},
2212         to ensure that only the system can bind to it. -->
2213    <permission android:name="android.permission.BIND_PRINT_SERVICE"
2214        android:label="@string/permlab_bindPrintService"
2215        android:description="@string/permdesc_bindPrintService"
2216        android:protectionLevel="signature" />
2217
2218    <!-- Must be required by a {@link android.nfc.cardemulation.HostApduService}
2219         or {@link android.nfc.cardemulation.OffHostApduService} to ensure that only
2220         the system can bind to it. -->
2221    <permission android:name="android.permission.BIND_NFC_SERVICE"
2222        android:label="@string/permlab_bindNfcService"
2223        android:description="@string/permdesc_bindNfcService"
2224        android:protectionLevel="signature" />
2225
2226    <!-- Must be required by the PrintSpooler to ensure that only the system can bind to it.
2227         @hide -->
2228    <permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"
2229        android:label="@string/permlab_bindPrintSpoolerService"
2230        android:description="@string/permdesc_bindPrintSpoolerService"
2231        android:protectionLevel="signature" />
2232
2233    <!-- Must be required by a TextService (e.g. SpellCheckerService)
2234         to ensure that only the system can bind to it. -->
2235    <permission android:name="android.permission.BIND_TEXT_SERVICE"
2236        android:label="@string/permlab_bindTextService"
2237        android:description="@string/permdesc_bindTextService"
2238        android:protectionLevel="signature" />
2239
2240    <!-- Must be required by a {@link android.net.VpnService},
2241         to ensure that only the system can bind to it. -->
2242    <permission android:name="android.permission.BIND_VPN_SERVICE"
2243        android:label="@string/permlab_bindVpnService"
2244        android:description="@string/permdesc_bindVpnService"
2245        android:protectionLevel="signature" />
2246
2247    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
2248         to ensure that only the system can bind to it. -->
2249    <permission android:name="android.permission.BIND_WALLPAPER"
2250        android:label="@string/permlab_bindWallpaper"
2251        android:description="@string/permdesc_bindWallpaper"
2252        android:protectionLevel="signature|system" />
2253
2254    <!-- Must be required by a {@link android.service.voice.VoiceInteractionService},
2255         to ensure that only the system can bind to it. -->
2256    <permission android:name="android.permission.BIND_VOICE_INTERACTION"
2257        android:label="@string/permlab_bindVoiceInteraction"
2258        android:description="@string/permdesc_bindVoiceInteraction"
2259        android:protectionLevel="signature" />
2260
2261    <!-- Must be required by hotword enrollment application,
2262         to ensure that only the system can interact with it.
2263         @hide <p>Not for use by third-party applications.</p> -->
2264    <permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"
2265        android:label="@string/permlab_manageVoiceKeyphrases"
2266        android:description="@string/permdesc_manageVoiceKeyphrases"
2267        android:protectionLevel="signature|system" />
2268
2269    <!-- Must be required by a {@link com.android.media.remotedisplay.RemoteDisplayProvider},
2270         to ensure that only the system can bind to it.
2271         @hide -->
2272    <permission android:name="android.permission.BIND_REMOTE_DISPLAY"
2273        android:label="@string/permlab_bindRemoteDisplay"
2274        android:description="@string/permdesc_bindRemoteDisplay"
2275        android:protectionLevel="signature" />
2276
2277    <!-- Must be required by a {@link android.media.tv.TvInputService}
2278         to ensure that only the system can bind to it. -->
2279    <permission android:name="android.permission.BIND_TV_INPUT"
2280        android:label="@string/permlab_bindTvInput"
2281        android:description="@string/permdesc_bindTvInput"
2282        android:protectionLevel="signature|system" />
2283
2284    <!-- @SystemApi Allows an application to modify parental controls
2285         <p>Not for use by third-party applications.
2286         @hide -->
2287    <permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"
2288        android:label="@string/permlab_modifyParentalControls"
2289        android:description="@string/permdesc_modifyParentalControls"
2290        android:protectionLevel="signature|system" />
2291
2292    <!-- Must be required by device administration receiver, to ensure that only the
2293         system can interact with it. -->
2294    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
2295        android:label="@string/permlab_bindDeviceAdmin"
2296        android:description="@string/permdesc_bindDeviceAdmin"
2297        android:protectionLevel="signature" />
2298
2299    <!-- @SystemApi Required to add or remove another application as a device admin.
2300         <p>Not for use by third-party applications.
2301         @hide -->
2302    <permission android:name="android.permission.MANAGE_DEVICE_ADMINS"
2303        android:label="@string/permlab_manageDeviceAdmins"
2304        android:description="@string/permdesc_manageDeviceAdmins"
2305        android:protectionLevel="signature|system" />
2306
2307    <!-- Allows low-level access to setting the orientation (actually
2308         rotation) of the screen.
2309         <p>Not for use by third-party applications. -->
2310    <permission android:name="android.permission.SET_ORIENTATION"
2311        android:label="@string/permlab_setOrientation"
2312        android:description="@string/permdesc_setOrientation"
2313        android:protectionLevel="signature" />
2314
2315    <!-- Allows low-level access to setting the pointer speed.
2316         <p>Not for use by third-party applications. -->
2317    <permission android:name="android.permission.SET_POINTER_SPEED"
2318        android:label="@string/permlab_setPointerSpeed"
2319        android:description="@string/permdesc_setPointerSpeed"
2320        android:protectionLevel="signature" />
2321
2322    <!-- Allows low-level access to setting input device calibration.
2323         <p>Not for use by normal applications.
2324         @hide -->
2325    <permission android:name="android.permission.SET_INPUT_CALIBRATION"
2326        android:label="@string/permlab_setInputCalibration"
2327        android:description="@string/permdesc_setInputCalibration"
2328        android:protectionLevel="signature" />
2329
2330    <!-- Allows low-level access to setting the keyboard layout.
2331         <p>Not for use by third-party applications.
2332         @hide -->
2333    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
2334        android:label="@string/permlab_setKeyboardLayout"
2335        android:description="@string/permdesc_setKeyboardLayout"
2336        android:protectionLevel="signature" />
2337
2338    <!-- @SystemApi Allows an application to install packages.
2339    <p>Not for use by third-party applications. -->
2340    <permission android:name="android.permission.INSTALL_PACKAGES"
2341        android:label="@string/permlab_installPackages"
2342        android:description="@string/permdesc_installPackages"
2343        android:protectionLevel="signature|system" />
2344
2345    <!-- Allows an application to clear user data.
2346    <p>Not for use by third-party applications. -->
2347    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
2348        android:label="@string/permlab_clearAppUserData"
2349        android:description="@string/permdesc_clearAppUserData"
2350        android:protectionLevel="signature" />
2351
2352    <!-- @SystemApi Allows an application to delete cache files.
2353    <p>Not for use by third-party applications. -->
2354    <permission android:name="android.permission.DELETE_CACHE_FILES"
2355        android:label="@string/permlab_deleteCacheFiles"
2356        android:description="@string/permdesc_deleteCacheFiles"
2357        android:protectionLevel="signature|system" />
2358
2359    <!-- @SystemApi Allows an application to delete packages.
2360    <p>Not for use by third-party applications. -->
2361    <permission android:name="android.permission.DELETE_PACKAGES"
2362        android:label="@string/permlab_deletePackages"
2363        android:description="@string/permdesc_deletePackages"
2364        android:protectionLevel="signature|system" />
2365
2366    <!-- @SystemApi Allows an application to move location of installed package.
2367         @hide -->
2368    <permission android:name="android.permission.MOVE_PACKAGE"
2369        android:label="@string/permlab_movePackage"
2370        android:description="@string/permdesc_movePackage"
2371        android:protectionLevel="signature|system" />
2372
2373    <!-- @SystemApi Allows an application to change whether an application component (other than its own) is
2374         enabled or not.
2375         <p>Not for use by third-party applications. -->
2376    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
2377        android:label="@string/permlab_changeComponentState"
2378        android:description="@string/permdesc_changeComponentState"
2379        android:protectionLevel="signature|system" />
2380
2381    <!-- @hide Allows an application to grant or revoke specific permissions. -->
2382    <permission android:name="android.permission.GRANT_REVOKE_PERMISSIONS"
2383        android:label="@string/permlab_grantRevokePermissions"
2384        android:description="@string/permdesc_grantRevokePermissions"
2385        android:protectionLevel="signature" />
2386
2387    <!-- Allows an application to use SurfaceFlinger's low level features.
2388    <p>Not for use by third-party applications. -->
2389    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
2390        android:label="@string/permlab_accessSurfaceFlinger"
2391        android:description="@string/permdesc_accessSurfaceFlinger"
2392        android:protectionLevel="signature" />
2393
2394    <!-- @SystemApi Allows an application to take screen shots and more generally
2395         get access to the frame buffer data.
2396         <p>Not for use by third-party applications. -->
2397    <permission android:name="android.permission.READ_FRAME_BUFFER"
2398        android:label="@string/permlab_readFrameBuffer"
2399        android:description="@string/permdesc_readFrameBuffer"
2400        android:protectionLevel="signature|system" />
2401
2402    <!-- Allows an application to use InputFlinger's low level features.
2403         @hide -->
2404    <permission android:name="android.permission.ACCESS_INPUT_FLINGER"
2405        android:label="@string/permlab_accessInputFlinger"
2406        android:description="@string/permdesc_accessInputFlinger"
2407        android:protectionLevel="signature" />
2408
2409    <!-- Allows an application to configure and connect to Wifi displays
2410         @hide -->
2411    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
2412        android:label="@string/permlab_configureWifiDisplay"
2413        android:description="@string/permdesc_configureWifiDisplay"
2414        android:protectionLevel="signature" />
2415
2416    <!-- Allows an application to control low-level features of Wifi displays
2417         such as opening an RTSP socket.  This permission should only be used
2418         by the display manager.
2419         @hide -->
2420    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
2421        android:label="@string/permlab_controlWifiDisplay"
2422        android:description="@string/permdesc_controlWifiDisplay"
2423        android:protectionLevel="signature" />
2424
2425    <!-- @SystemApi Allows an application to control VPN.
2426         <p>Not for use by third-party applications.</p>
2427         @hide -->
2428    <permission android:name="android.permission.CONTROL_VPN"
2429        android:label="@string/permlab_controlVpn"
2430        android:description="@string/permdesc_controlVpn"
2431        android:protectionLevel="signature|system" />
2432    <uses-permission android:name="android.permission.CONTROL_VPN" />
2433
2434    <!-- @SystemApi Allows an application to capture audio output.
2435         <p>Not for use by third-party applications.</p> -->
2436    <permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"
2437        android:label="@string/permlab_captureAudioOutput"
2438        android:description="@string/permdesc_captureAudioOutput"
2439        android:protectionLevel="signature|system" />
2440
2441    <!-- @SystemApi Allows an application to capture audio for hotword detection.
2442         <p>Not for use by third-party applications.</p>
2443         @hide -->
2444    <permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"
2445        android:label="@string/permlab_captureAudioHotword"
2446        android:description="@string/permdesc_captureAudioHotword"
2447        android:protectionLevel="signature|system" />
2448
2449    <!-- @SystemApi Allows an application to modify audio routing and override policy decisions.
2450         <p>Not for use by third-party applications.</p>
2451         @hide -->
2452    <permission android:name="android.permission.MODIFY_AUDIO_ROUTING"
2453        android:label="@string/permlab_modifyAudioRouting"
2454        android:description="@string/permdesc_modifyAudioRouting"
2455        android:protectionLevel="signature|system" />
2456
2457    <!-- @SystemApi Allows an application to capture video output.
2458         <p>Not for use by third-party applications.</p> -->
2459    <permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"
2460        android:label="@string/permlab_captureVideoOutput"
2461        android:description="@string/permdesc_captureVideoOutput"
2462        android:protectionLevel="signature|system" />
2463
2464    <!-- @SystemApi Allows an application to capture secure video output.
2465         <p>Not for use by third-party applications.</p> -->
2466    <permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"
2467        android:label="@string/permlab_captureSecureVideoOutput"
2468        android:description="@string/permdesc_captureSecureVideoOutput"
2469        android:protectionLevel="signature|system" />
2470
2471    <!-- @SystemApi Allows an application to know what content is playing and control its playback.
2472         <p>Not for use by third-party applications due to privacy of media consumption</p>  -->
2473    <permission android:name="android.permission.MEDIA_CONTENT_CONTROL"
2474        android:label="@string/permlab_mediaContentControl"
2475        android:description="@string/permdesc_mediaContentControl"
2476        android:protectionLevel="signature|system" />
2477
2478    <!-- Required to be able to disable the device (very dangerous!).
2479    <p>Not for use by third-party applications.. -->
2480    <permission android:name="android.permission.BRICK"
2481        android:label="@string/permlab_brick"
2482        android:description="@string/permdesc_brick"
2483        android:protectionLevel="signature" />
2484
2485    <!-- @SystemApi Required to be able to reboot the device.
2486    <p>Not for use by third-party applications. -->
2487    <permission android:name="android.permission.REBOOT"
2488        android:label="@string/permlab_reboot"
2489        android:description="@string/permdesc_reboot"
2490        android:protectionLevel="signature|system" />
2491
2492   <!-- Allows low-level access to power management.
2493   <p>Not for use by third-party applications. -->
2494    <permission android:name="android.permission.DEVICE_POWER"
2495        android:label="@string/permlab_devicePower"
2496        android:description="@string/permdesc_devicePower"
2497        android:protectionLevel="signature" />
2498
2499   <!-- Allows access to the PowerManager.userActivity function.
2500   <p>Not for use by third-party applications. @hide @SystemApi -->
2501    <permission android:name="android.permission.USER_ACTIVITY"
2502        android:label="@string/permlab_userActivity"
2503        android:description="@string/permdesc_userActivity"
2504        android:protectionLevel="signature|system" />
2505
2506   <!-- @hide Allows low-level access to tun tap driver -->
2507    <permission android:name="android.permission.NET_TUNNELING"
2508        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2509        android:protectionLevel="signature" />
2510
2511    <!-- Run as a manufacturer test application, running as the root user.
2512         Only available when the device is running in manufacturer test mode.
2513         <p>Not for use by third-party applications. -->
2514    <permission android:name="android.permission.FACTORY_TEST"
2515        android:label="@string/permlab_factoryTest"
2516        android:description="@string/permdesc_factoryTest"
2517        android:protectionLevel="signature" />
2518
2519    <!-- Allows an application to broadcast a notification that an application
2520         package has been removed.
2521         <p>Not for use by third-party applications. -->
2522    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
2523        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2524        android:label="@string/permlab_broadcastPackageRemoved"
2525        android:description="@string/permdesc_broadcastPackageRemoved"
2526        android:protectionLevel="signature" />
2527
2528    <!-- Allows an application to broadcast an SMS receipt notification.
2529    <p>Not for use by third-party applications. -->
2530    <permission android:name="android.permission.BROADCAST_SMS"
2531        android:permissionGroup="android.permission-group.MESSAGES"
2532        android:label="@string/permlab_broadcastSmsReceived"
2533        android:description="@string/permdesc_broadcastSmsReceived"
2534        android:protectionLevel="signature" />
2535
2536    <!-- Allows an application to broadcast a WAP PUSH receipt notification.
2537    <p>Not for use by third-party applications. -->
2538    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
2539        android:permissionGroup="android.permission-group.MESSAGES"
2540        android:label="@string/permlab_broadcastWapPush"
2541        android:description="@string/permdesc_broadcastWapPush"
2542        android:protectionLevel="signature" />
2543
2544    <!-- @SystemApi Allows an application to broadcast privileged networking requests.
2545         <p>Not for use by third-party applications. @hide -->
2546    <permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"
2547        android:permissionGroup="android.permission-group.NETWORK"
2548        android:label="@string/permlab_broadcastNetworkPrivileged"
2549        android:description="@string/permdesc_broadcastNetworkPrivileged"
2550        android:protectionLevel="signature|system" />
2551
2552    <!-- @SystemApi Not for use by third-party applications. -->
2553    <permission android:name="android.permission.MASTER_CLEAR"
2554        android:label="@string/permlab_masterClear"
2555        android:description="@string/permdesc_masterClear"
2556        android:protectionLevel="signature|system" />
2557
2558    <!-- @SystemApi Allows an application to call any phone number, including emergency
2559         numbers, without going through the Dialer user interface for the user
2560         to confirm the call being placed.
2561         <p>Not for use by third-party applications. -->
2562    <permission android:name="android.permission.CALL_PRIVILEGED"
2563        android:label="@string/permlab_callPrivileged"
2564        android:description="@string/permdesc_callPrivileged"
2565        android:protectionLevel="signature|system" />
2566
2567    <!-- @SystemApi Allows an application to perform CDMA OTA provisioning @hide -->
2568    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
2569        android:label="@string/permlab_performCdmaProvisioning"
2570        android:description="@string/permdesc_performCdmaProvisioning"
2571        android:protectionLevel="signature|system" />
2572
2573    <!-- @SystemApi Allows enabling/disabling location update notifications from
2574         the radio.
2575         <p>Not for use by third-party applications. -->
2576    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
2577        android:label="@string/permlab_locationUpdates"
2578        android:description="@string/permdesc_locationUpdates"
2579        android:protectionLevel="signature|system" />
2580
2581    <!-- @SystemApi Allows read/write access to the "properties" table in the checkin
2582         database, to change values that get uploaded.
2583         <p>Not for use by third-party applications. -->
2584    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
2585        android:label="@string/permlab_checkinProperties"
2586        android:description="@string/permdesc_checkinProperties"
2587        android:protectionLevel="signature|system" />
2588
2589    <!-- @SystemApi Allows an application to collect component usage
2590         statistics @hide -->
2591    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
2592        android:label="@string/permlab_pkgUsageStats"
2593        android:description="@string/permdesc_pkgUsageStats"
2594        android:protectionLevel="signature|development|appop" />
2595    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
2596
2597    <!-- @SystemApi Allows an application to collect battery statistics -->
2598    <permission android:name="android.permission.BATTERY_STATS"
2599        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2600        android:label="@string/permlab_batteryStats"
2601        android:description="@string/permdesc_batteryStats"
2602        android:protectionLevel="signature|system|development" />
2603
2604    <!-- @SystemApi Allows an application to control the backup and restore process.
2605    <p>Not for use by third-party applications.
2606         @hide pending API council -->
2607    <permission android:name="android.permission.BACKUP"
2608        android:label="@string/permlab_backup"
2609        android:description="@string/permdesc_backup"
2610        android:protectionLevel="signature|system" />
2611
2612    <!-- Allows a package to launch the secure full-backup confirmation UI.
2613         ONLY the system process may hold this permission.
2614         @hide -->
2615    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
2616        android:label="@string/permlab_confirm_full_backup"
2617        android:description="@string/permdesc_confirm_full_backup"
2618        android:protectionLevel="signature" />
2619
2620    <!-- @SystemApi Must be required by a {@link android.widget.RemoteViewsService},
2621         to ensure that only the system can bind to it. -->
2622    <permission android:name="android.permission.BIND_REMOTEVIEWS"
2623        android:label="@string/permlab_bindRemoteViews"
2624        android:description="@string/permdesc_bindRemoteViews"
2625        android:protectionLevel="signature|system" />
2626
2627    <!-- @SystemApi Allows an application to tell the AppWidget service which application
2628         can access AppWidget's data.  The normal user flow is that a user
2629         picks an AppWidget to go into a particular host, thereby giving that
2630         host application access to the private data from the AppWidget app.
2631         An application that has this permission should honor that contract.
2632         <p>Not for use by third-party applications. -->
2633    <permission android:name="android.permission.BIND_APPWIDGET"
2634        android:permissionGroup="android.permission-group.PERSONAL_INFO"
2635        android:label="@string/permlab_bindGadget"
2636        android:description="@string/permdesc_bindGadget"
2637        android:protectionLevel="signature|system" />
2638
2639    <!-- @SystemApi Private permission, to restrict who can bring up a dialog to add a new
2640         keyguard widget
2641         @hide -->
2642    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
2643        android:permissionGroup="android.permission-group.PERSONAL_INFO"
2644        android:protectionLevel="signature|system" />
2645
2646    <!-- @SystemApi Internal permission allowing an application to query/set which
2647         applications can bind AppWidgets.
2648         @hide -->
2649    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
2650        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2651        android:protectionLevel="signature|system" />
2652
2653    <!-- Allows applications to change the background data setting.
2654    <p>Not for use by third-party applications.
2655         @hide pending API council -->
2656    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
2657        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2658        android:protectionLevel="signature"
2659        android:description="@string/permdesc_changeBackgroundDataSetting"
2660        android:label="@string/permlab_changeBackgroundDataSetting" />
2661
2662    <!-- @SystemApi This permission can be used on content providers to allow the global
2663         search system to access their data.  Typically it used when the
2664         provider has some permissions protecting it (which global search
2665         would not be expected to hold), and added as a read-only permission
2666         to the path in the provider where global search queries are
2667         performed.  This permission can not be held by regular applications;
2668         it is used by applications to protect themselves from everyone else
2669         besides global search. -->
2670    <permission android:name="android.permission.GLOBAL_SEARCH"
2671        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2672        android:protectionLevel="signature|system" />
2673
2674    <!-- Internal permission protecting access to the global search
2675         system: ensures that only the system can access the provider
2676         to perform queries (since this otherwise provides unrestricted
2677         access to a variety of content providers), and to write the
2678         search statistics (to keep applications from gaming the source
2679         ranking).
2680         @hide -->
2681    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
2682        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2683        android:protectionLevel="signature" />
2684
2685    <!-- @SystemApi Internal permission to allows an application to read indexable data.
2686        @hide -->
2687    <permission android:name="android.permission.READ_SEARCH_INDEXABLES"
2688        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2689        android:protectionLevel="signature|system" />
2690
2691    <!-- @SystemApi Allows applications to set a live wallpaper.
2692         @hide XXX Change to signature once the picker is moved to its
2693         own apk as Ghod Intended. -->
2694    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
2695        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2696        android:protectionLevel="signature|system" />
2697
2698    <!-- @SystemApi Allows applications to read dream settings and dream state.
2699         @hide -->
2700    <permission android:name="android.permission.READ_DREAM_STATE"
2701        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2702        android:protectionLevel="signature|system" />
2703
2704    <!-- @SystemApi Allows applications to write dream settings, and start or stop dreaming.
2705         @hide -->
2706    <permission android:name="android.permission.WRITE_DREAM_STATE"
2707        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2708        android:protectionLevel="signature|system" />
2709
2710    <!-- @SystemApi Allow an application to read and write the cache partition.
2711         @hide -->
2712    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
2713        android:label="@string/permlab_cache_filesystem"
2714        android:description="@string/permdesc_cache_filesystem"
2715        android:protectionLevel="signature|system" />
2716
2717    <!-- Must be required by default container service so that only
2718         the system can bind to it and use it to copy
2719         protected data to secure containers or files
2720         accessible to the system.
2721         @hide -->
2722    <permission android:name="android.permission.COPY_PROTECTED_DATA"
2723        android:label="@string/permlab_copyProtectedData"
2724        android:description="@string/permlab_copyProtectedData"
2725        android:protectionLevel="signature" />
2726
2727    <!-- @SystemApi Internal permission protecting access to the encryption methods
2728        @hide
2729    -->
2730    <permission android:name="android.permission.CRYPT_KEEPER"
2731        android:protectionLevel="signature|system" />
2732
2733    <!-- @SystemApi Allows an application to read historical network usage for
2734         specific networks and applications. @hide -->
2735    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
2736        android:label="@string/permlab_readNetworkUsageHistory"
2737        android:description="@string/permdesc_readNetworkUsageHistory"
2738        android:protectionLevel="signature|system" />
2739
2740    <!-- Allows an application to manage network policies (such as warning and disable
2741         limits) and to define application-specific rules. @hide -->
2742    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
2743        android:label="@string/permlab_manageNetworkPolicy"
2744        android:description="@string/permdesc_manageNetworkPolicy"
2745        android:protectionLevel="signature" />
2746
2747    <!-- @SystemApi Allows an application to account its network traffic against other UIDs. Used
2748         by system services like download manager and media server. Not for use by
2749         third party apps. @hide -->
2750    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
2751        android:label="@string/permlab_modifyNetworkAccounting"
2752        android:description="@string/permdesc_modifyNetworkAccounting"
2753        android:protectionLevel="signature|system" />
2754
2755    <!-- C2DM permission.
2756         @hide Used internally.
2757     -->
2758    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
2759          android:protectionLevel="signature" />
2760    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
2761
2762    <!-- @SystemApi @hide Package verifier needs to have this permission before the PackageManager will
2763         trust it to verify packages.
2764    -->
2765    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
2766        android:label="@string/permlab_packageVerificationAgent"
2767        android:description="@string/permdesc_packageVerificationAgent"
2768        android:protectionLevel="signature|system" />
2769
2770    <!-- Must be required by package verifier receiver, to ensure that only the
2771         system can interact with it.
2772         @hide
2773    -->
2774    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
2775        android:label="@string/permlab_bindPackageVerifier"
2776        android:description="@string/permdesc_bindPackageVerifier"
2777        android:protectionLevel="signature" />
2778
2779    <!-- @SystemApi Allows applications to access serial ports via the SerialManager.
2780         @hide -->
2781    <permission android:name="android.permission.SERIAL_PORT"
2782        android:label="@string/permlab_serialPort"
2783        android:description="@string/permdesc_serialPort"
2784        android:protectionLevel="signature|system" />
2785
2786    <!-- Allows the holder to access content providers from outside an ApplicationThread.
2787         This permission is enforced by the ActivityManagerService on the corresponding APIs,
2788         in particular ActivityManagerService#getContentProviderExternal(String) and
2789         ActivityManagerService#removeContentProviderExternal(String).
2790         @hide
2791    -->
2792    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
2793        android:label="@string/permlab_accessContentProvidersExternally"
2794        android:description="@string/permdesc_accessContentProvidersExternally"
2795        android:protectionLevel="signature" />
2796
2797    <!-- @SystemApi Allows an application to hold an UpdateLock, recommending that a headless
2798         OTA reboot *not* occur while the lock is held.
2799         @hide -->
2800    <permission android:name="android.permission.UPDATE_LOCK"
2801        android:label="@string/permlab_updateLock"
2802        android:description="@string/permdesc_updateLock"
2803        android:protectionLevel="signatureOrSystem" />
2804
2805    <!-- @SystemApi Allows an application to read the current set of notifications, including
2806         any metadata and intents attached.
2807         @hide -->
2808    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
2809        android:label="@string/permlab_accessNotifications"
2810        android:description="@string/permdesc_accessNotifications"
2811        android:protectionLevel="signature|system" />
2812
2813    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
2814        @hide -->
2815    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
2816        android:protectionLevel="signature"
2817        android:label="@string/permlab_access_keyguard_secure_storage"
2818        android:description="@string/permdesc_access_keyguard_secure_storage" />
2819
2820    <!-- Allows an application to control keyguard.  Only allowed for system processes.
2821        @hide -->
2822    <permission android:name="android.permission.CONTROL_KEYGUARD"
2823        android:protectionLevel="signature"
2824        android:label="@string/permlab_control_keyguard"
2825        android:description="@string/permdesc_control_keyguard" />
2826
2827    <!-- Allows an application to listen to trust changes.  Only allowed for system processes.
2828        @hide -->
2829    <permission android:name="android.permission.TRUST_LISTENER"
2830                android:protectionLevel="signature"
2831                android:label="@string/permlab_trust_listener"
2832                android:description="@string/permdesc_trust_listener" />
2833
2834    <!-- @SystemApi Allows an application to provide a trust agent.
2835         @hide For security reasons, this is a platform-only permission. -->
2836    <permission android:name="android.permission.PROVIDE_TRUST_AGENT"
2837                android:protectionLevel="signatureOrSystem"
2838                android:label="@string/permlab_provide_trust_agent"
2839                android:description="@string/permdesc_provide_trust_agent" />
2840
2841    <!-- Allows an application to launch the trust agent settings activity.
2842        @hide -->
2843    <permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"
2844        android:protectionLevel="signatureOrSystem"
2845        android:label="@string/permlab_launch_trust_agent_settings"
2846        android:description="@string/permdesc_launch_trust_agent_settings" />
2847
2848    <!-- @SystemApi Must be required by an {@link
2849        android.service.trust.TrustAgentService},
2850        to ensure that only the system can bind to it.
2851        @hide -->
2852    <permission android:name="android.permission.BIND_TRUST_AGENT"
2853                android:protectionLevel="signature"
2854                android:label="@string/permlab_bind_trust_agent_service"
2855                android:description="@string/permdesc_bind_trust_agent_service" />
2856
2857    <!-- Must be required by an {@link
2858         android.service.notification.NotificationListenerService},
2859         to ensure that only the system can bind to it. -->
2860    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
2861        android:label="@string/permlab_bindNotificationListenerService"
2862        android:description="@string/permdesc_bindNotificationListenerService"
2863        android:protectionLevel="signature" />
2864
2865    <!-- @SystemApi Must be required by a {@link
2866         android.service.notification.ConditionProviderService},
2867         to ensure that only the system can bind to it.
2868         @hide -->
2869    <permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"
2870        android:label="@string/permlab_bindConditionProviderService"
2871        android:description="@string/permdesc_bindConditionProviderService"
2872        android:protectionLevel="signature" />
2873
2874    <!-- Must be required by an {@link android.service.dreams.DreamService},
2875         to ensure that only the system can bind to it. -->
2876    <permission android:name="android.permission.BIND_DREAM_SERVICE"
2877        android:label="@string/permlab_bindDreamService"
2878        android:description="@string/permdesc_bindDreamService"
2879        android:protectionLevel="signature" />
2880
2881    <!-- @SystemApi Allows an application to call into a carrier setup flow. It is up to the
2882         carrier setup application to enforce that this permission is required
2883         @hide This is not a third-party API (intended for OEMs and system apps). -->
2884    <permission android:name="android.permission.INVOKE_CARRIER_SETUP"
2885        android:label="@string/permlab_invokeCarrierSetup"
2886        android:description="@string/permdesc_invokeCarrierSetup"
2887        android:protectionLevel="signature|system" />
2888
2889    <!-- @SystemApi Allows an application to listen for network condition observations.
2890         @hide This is not a third-party API (intended for system apps). -->
2891    <permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"
2892        android:label="@string/permlab_accessNetworkConditions"
2893        android:description="@string/permdesc_accessNetworkConditions"
2894        android:protectionLevel="signature|system" />
2895
2896    <!-- @SystemApi Allows an application to provision and access DRM certificates
2897         @hide This is not a third-party API (intended for system apps). -->
2898    <permission android:name="android.permission.ACCESS_DRM_CERTIFICATES"
2899        android:label="@string/permlab_accessDrmCertificates"
2900        android:description="@string/permdesc_accessDrmCertificates"
2901        android:protectionLevel="signature|system" />
2902
2903    <!-- Api Allows an application to manage media projection sessions.
2904         @hide This is not a third-party API (intended for system apps). -->
2905    <permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"
2906        android:label="@string/permlab_manageMediaProjection"
2907        android:description="@string/permdesc_manageMediaProjection"
2908        android:protectionLevel="signature" />
2909
2910    <!-- @SystemApi Allows an application to read install sessions
2911         @hide This is not a third-party API (intended for system apps). -->
2912    <permission android:name="android.permission.READ_INSTALL_SESSIONS"
2913        android:label="@string/permlab_readInstallSessions"
2914        android:description="@string/permdesc_readInstallSessions" />
2915
2916    <!-- @SystemApi Allows an application to remove DRM certificates
2917         @hide This is not a third-party API (intended for system apps). -->
2918    <permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"
2919        android:label="@string/permlab_removeDrmCertificates"
2920        android:description="@string/permdesc_removeDrmCertificates"
2921        android:protectionLevel="signature|system" />
2922
2923    <!-- Must be required by a {@link android.service.carrier.CarrierMessagingService}.
2924         Any service that filters for this intent must be a carrier privileged app. -->
2925    <permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"
2926        android:label="@string/permlab_bindCarrierMessagingService"
2927        android:description="@string/permdesc_bindCarrierMessagingService"
2928        android:protectionLevel="signature|system" />
2929
2930    <!-- The system process is explicitly the only one allowed to launch the
2931         confirmation UI for full backup/restore -->
2932    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
2933
2934    <application android:process="system"
2935                 android:persistent="true"
2936                 android:hasCode="false"
2937                 android:label="@string/android_system_label"
2938                 android:allowClearUserData="false"
2939                 android:backupAgent="com.android.server.backup.SystemBackupAgent"
2940                 android:killAfterRestore="false"
2941                 android:icon="@drawable/ic_launcher_android"
2942                 android:supportsRtl="true">
2943        <activity android:name="com.android.internal.app.ChooserActivity"
2944                android:theme="@style/Theme.DeviceDefault.Resolver"
2945                android:finishOnCloseSystemDialogs="true"
2946                android:excludeFromRecents="true"
2947                android:documentLaunchMode="never"
2948                android:relinquishTaskIdentity="true"
2949                android:process=":ui">
2950            <intent-filter>
2951                <action android:name="android.intent.action.CHOOSER" />
2952                <category android:name="android.intent.category.DEFAULT" />
2953            </intent-filter>
2954        </activity>
2955        <activity android:name="com.android.internal.app.IntentForwarderActivity"
2956                android:finishOnCloseSystemDialogs="true"
2957                android:theme="@style/Theme.NoDisplay"
2958                android:excludeFromRecents="true"
2959                android:label="@string/user_owner_label"
2960                android:exported="true"
2961                >
2962        </activity>
2963        <activity-alias android:name="com.android.internal.app.ForwardIntentToUserOwner"
2964                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
2965                android:exported="true"
2966                android:label="@string/user_owner_label">
2967        </activity-alias>
2968        <activity-alias android:name="com.android.internal.app.ForwardIntentToManagedProfile"
2969                android:targetActivity="com.android.internal.app.IntentForwarderActivity"
2970                android:icon="@drawable/ic_corp_icon"
2971                android:exported="true"
2972                android:label="@string/managed_profile_label">
2973        </activity-alias>
2974        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
2975                android:theme="@style/Theme.Material.Light.Dialog"
2976                android:label="@string/heavy_weight_switcher_title"
2977                android:finishOnCloseSystemDialogs="true"
2978                android:excludeFromRecents="true"
2979                android:process=":ui">
2980        </activity>
2981        <activity android:name="com.android.internal.app.PlatLogoActivity"
2982                android:theme="@style/Theme.Wallpaper.NoTitleBar.Fullscreen"
2983                android:configChanges="orientation|keyboardHidden"
2984                android:process=":ui">
2985        </activity>
2986        <activity android:name="com.android.internal.app.DisableCarModeActivity"
2987                android:theme="@style/Theme.NoDisplay"
2988                android:excludeFromRecents="true"
2989                android:process=":ui">
2990        </activity>
2991
2992        <activity android:name="android.accounts.ChooseAccountActivity"
2993                android:excludeFromRecents="true"
2994                android:exported="true"
2995                android:theme="@style/Theme.Material.Light.Dialog"
2996                android:label="@string/choose_account_label"
2997                android:process=":ui">
2998        </activity>
2999
3000        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
3001                android:excludeFromRecents="true"
3002                android:exported="true"
3003                android:theme="@style/Theme.Material.Light.Dialog"
3004                android:label="@string/choose_account_label"
3005                android:process=":ui">
3006        </activity>
3007
3008        <activity android:name="android.accounts.ChooseAccountTypeActivity"
3009                android:excludeFromRecents="true"
3010                android:theme="@style/Theme.Material.Light.Dialog"
3011                android:label="@string/choose_account_label"
3012                android:process=":ui">
3013        </activity>
3014
3015        <activity android:name="android.accounts.CantAddAccountActivity"
3016                android:excludeFromRecents="true"
3017                android:exported="true"
3018                android:theme="@style/Theme.Material.Light.Dialog.NoActionBar"
3019                android:process=":ui">
3020        </activity>
3021
3022        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
3023                android:excludeFromRecents="true"
3024                android:exported="true"
3025                android:theme="@style/Theme.Material.Light.DialogWhenLarge"
3026                android:process=":ui">
3027        </activity>
3028
3029        <activity android:name="android.content.SyncActivityTooManyDeletes"
3030               android:theme="@style/Theme.Material.Light.Dialog"
3031               android:label="@string/sync_too_many_deletes"
3032               android:process=":ui">
3033        </activity>
3034
3035        <activity android:name="com.android.internal.app.ShutdownActivity"
3036            android:permission="android.permission.SHUTDOWN"
3037            android:theme="@style/Theme.NoDisplay"
3038            android:excludeFromRecents="true">
3039            <intent-filter>
3040                <action android:name="android.intent.action.ACTION_REQUEST_SHUTDOWN" />
3041                <category android:name="android.intent.category.DEFAULT" />
3042            </intent-filter>
3043            <intent-filter>
3044                <action android:name="android.intent.action.REBOOT" />
3045                <category android:name="android.intent.category.DEFAULT" />
3046            </intent-filter>
3047        </activity>
3048
3049        <activity android:name="com.android.internal.app.NetInitiatedActivity"
3050                android:theme="@style/Theme.Material.Light.Dialog.Alert"
3051                android:excludeFromRecents="true"
3052                android:process=":ui">
3053        </activity>
3054
3055        <activity android:name="com.android.internal.app.RestrictionsPinActivity"
3056                android:theme="@style/Theme.Material.Light.Dialog.Alert"
3057                android:excludeFromRecents="true"
3058                android:windowSoftInputMode="adjustPan"
3059                android:process=":ui">
3060            <intent-filter android:priority="100">
3061                <action android:name="android.intent.action.RESTRICTIONS_CHALLENGE" />
3062                <category android:name="android.intent.category.DEFAULT" />
3063            </intent-filter>
3064        </activity>
3065
3066        <receiver android:name="com.android.server.BootReceiver"
3067                android:primaryUserOnly="true">
3068            <intent-filter android:priority="1000">
3069                <action android:name="android.intent.action.BOOT_COMPLETED" />
3070            </intent-filter>
3071        </receiver>
3072
3073        <receiver android:name="com.android.server.updates.CertPinInstallReceiver" >
3074            <intent-filter>
3075                <action android:name="android.intent.action.UPDATE_PINS" />
3076                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3077            </intent-filter>
3078        </receiver>
3079
3080        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver" >
3081            <intent-filter>
3082                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
3083                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3084            </intent-filter>
3085        </receiver>
3086
3087        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver" >
3088            <intent-filter>
3089                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
3090                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3091            </intent-filter>
3092        </receiver>
3093
3094        <receiver android:name="com.android.server.updates.CarrierProvisioningUrlsInstallReceiver" >
3095            <intent-filter>
3096                <action android:name="android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS" />
3097                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3098            </intent-filter>
3099        </receiver>
3100
3101        <receiver android:name="com.android.server.updates.TZInfoInstallReceiver" >
3102            <intent-filter>
3103                <action android:name="android.intent.action.UPDATE_TZINFO" />
3104                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3105            </intent-filter>
3106        </receiver>
3107
3108        <receiver android:name="com.android.server.updates.SELinuxPolicyInstallReceiver" >
3109            <intent-filter>
3110                <action android:name="android.intent.action.UPDATE_SEPOLICY" />
3111                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
3112            </intent-filter>
3113        </receiver>
3114
3115        <receiver android:name="com.android.server.MasterClearReceiver"
3116            android:permission="android.permission.MASTER_CLEAR">
3117            <intent-filter
3118                    android:priority="100" >
3119                <!-- For Checkin, Settings, etc.: action=MASTER_CLEAR -->
3120                <action android:name="android.intent.action.MASTER_CLEAR" />
3121
3122                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
3123                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
3124                <category android:name="android.intent.category.MASTER_CLEAR" />
3125            </intent-filter>
3126        </receiver>
3127
3128        <service android:name="com.android.internal.os.storage.ExternalStorageFormatter"
3129            android:permission="android.permission.MASTER_CLEAR"
3130            android:exported="true" />
3131
3132        <service android:name="android.hardware.location.GeofenceHardwareService"
3133            android:permission="android.permission.LOCATION_HARDWARE"
3134            android:exported="false" />
3135
3136        <service android:name="com.android.internal.backup.LocalTransportService"
3137                android:permission="android.permission.CONFIRM_FULL_BACKUP"
3138                android:exported="false">
3139            <intent-filter>
3140                <action android:name="android.backup.TRANSPORT_HOST" />
3141            </intent-filter>
3142        </service>
3143
3144        <service android:name="com.android.server.MountServiceIdler"
3145                 android:exported="true"
3146                 android:permission="android.permission.BIND_JOB_SERVICE" >
3147        </service>
3148
3149        <service android:name="com.android.server.backup.FullBackupJob"
3150                 android:exported="true"
3151                 android:permission="android.permission.BIND_JOB_SERVICE" >
3152        </service>
3153
3154        <service
3155            android:name="com.android.server.pm.BackgroundDexOptService"
3156            android:exported="true"
3157            android:permission="android.permission.BIND_JOB_SERVICE">
3158        </service>
3159
3160    </application>
3161
3162</manifest>
3163