AndroidManifest.xml revision 5c0bd520b8095a12c6cd0c8cf0a6837b2addf520
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_TICK" />
33    <protected-broadcast android:name="android.intent.action.TIMEZONE_CHANGED" />
34    <protected-broadcast android:name="android.intent.action.BOOT_COMPLETED" />
35    <protected-broadcast android:name="android.intent.action.PACKAGE_INSTALL" />
36    <protected-broadcast android:name="android.intent.action.PACKAGE_ADDED" />
37    <protected-broadcast android:name="android.intent.action.PACKAGE_REPLACED" />
38    <protected-broadcast android:name="android.intent.action.MY_PACKAGE_REPLACED" />
39    <protected-broadcast android:name="android.intent.action.PACKAGE_REMOVED" />
40    <protected-broadcast android:name="android.intent.action.PACKAGE_FULLY_REMOVED" />
41    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
42    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
43    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
44    <protected-broadcast android:name="android.intent.action.PACKAGE_FIRST_LAUNCH" />
45    <protected-broadcast android:name="android.intent.action.PACKAGE_NEEDS_VERIFICATION" />
46    <protected-broadcast android:name="android.intent.action.PACKAGE_VERIFIED" />
47    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
48    <protected-broadcast android:name="android.intent.action.QUERY_PACKAGE_RESTART" />
49    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
50    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
51    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
52    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
53    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
54    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
55    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
56    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
57    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
58    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
59    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
60    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
61    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
62    <protected-broadcast android:name="android.intent.action.REBOOT" />
63    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
64    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
65    <protected-broadcast android:name="android.intent.action.USER_ADDED" />
66    <protected-broadcast android:name="android.intent.action.USER_REMOVED" />
67    <protected-broadcast android:name="android.intent.action.USER_STOPPED" />
68    <protected-broadcast android:name="android.intent.action.USER_BACKGROUND" />
69    <protected-broadcast android:name="android.intent.action.USER_FOREGROUND" />
70    <protected-broadcast android:name="android.intent.action.USER_SWITCHED" />
71
72    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
73    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
74    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
75    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
76
77    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_UPDATE_OPTIONS" />
78    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DELETED" />
79    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_DISABLED" />
80    <protected-broadcast android:name="android.appwidget.action.APPWIDGET_ENABLED" />
81
82    <protected-broadcast android:name="android.backup.intent.RUN" />
83    <protected-broadcast android:name="android.backup.intent.CLEAR" />
84    <protected-broadcast android:name="android.backup.intent.INIT" />
85
86    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
87    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
88    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
89    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
90    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
91    <protected-broadcast android:name="android.bluetooth.adapter.action.CONNECTION_STATE_CHANGED" />
92    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
93    <protected-broadcast android:name="android.bluetooth.device.action.DISAPPEARED" />
94    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
95    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
96    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
97    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
98    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
99    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
100    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
101    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
102    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
103    <protected-broadcast android:name="android.bluetooth.device.action.CONNECTION_ACCESS_REPLY" />
104    <protected-broadcast
105        android:name="android.bluetooth.headset.profile.action.CONNECTION_STATE_CHANGED" />
106    <protected-broadcast
107        android:name="android.bluetooth.headset.profile.action.AUDIO_STATE_CHANGED" />
108    <protected-broadcast
109        android:name="android.bluetooth.headset.action.VENDOR_SPECIFIC_HEADSET_EVENT" />
110    <protected-broadcast
111        android:name="android.bluetooth.a2dp.profile.action.CONNECTION_STATE_CHANGED" />
112    <protected-broadcast
113        android:name="android.bluetooth.a2dp.profile.action.PLAYING_STATE_CHANGED" />
114    <protected-broadcast
115        android:name="android.bluetooth.input.profile.action.CONNECTION_STATE_CHANGED" />
116    <protected-broadcast
117        android:name="android.bluetooth.pan.profile.action.CONNECTION_STATE_CHANGED" />
118
119    <protected-broadcast android:name="android.hardware.display.action.WIFI_DISPLAY_STATUS_CHANGED" />
120
121    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
122    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
123    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
124    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
125    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
126
127    <protected-broadcast android:name="android.intent.action.HEADSET_PLUG" />
128    <protected-broadcast android:name="android.intent.action.ANALOG_AUDIO_DOCK_PLUG" />
129    <protected-broadcast android:name="android.intent.action.DIGITAL_AUDIO_DOCK_PLUG" />
130    <protected-broadcast android:name="android.intent.action.HDMI_AUDIO_PLUG" />
131    <protected-broadcast android:name="android.intent.action.USB_AUDIO_ACCESSORY_PLUG" />
132    <protected-broadcast android:name="android.intent.action.USB_AUDIO_DEVICE_PLUG" />
133
134    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE" />
135    <protected-broadcast android:name="android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE" />
136    <protected-broadcast android:name="android.net.conn.DATA_ACTIVITY_CHANGE" />
137    <protected-broadcast android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
138    <protected-broadcast android:name="android.net.conn.CAPTIVE_PORTAL_TEST_COMPLETED" />
139
140    <protected-broadcast android:name="android.nfc.action.LLCP_LINK_STATE_CHANGED" />
141    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
142    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
143    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
144
145    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
146    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
147    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
148
149    <protected-broadcast android:name="android.os.UpdateLock.UPDATE_LOCK_CHANGED" />
150
151    <protected-broadcast android:name="android.intent.action.DREAMING_STARTED" />
152    <protected-broadcast android:name="android.intent.action.DREAMING_STOPPED" />
153    <protected-broadcast android:name="android.intent.action.ANY_DATA_STATE" />
154
155    <protected-broadcast android:name="com.android.server.WifiManager.action.START_SCAN" />
156    <protected-broadcast android:name="com.android.server.WifiManager.action.DELAYED_DRIVER_STOP" />
157    <protected-broadcast android:name="android.net.wifi.WIFI_STATE_CHANGED" />
158    <protected-broadcast android:name="android.net.wifi.WIFI_AP_STATE_CHANGED" />
159    <protected-broadcast android:name="android.net.wifi.SCAN_RESULTS" />
160    <protected-broadcast android:name="android.net.wifi.RSSI_CHANGED" />
161    <protected-broadcast android:name="android.net.wifi.STATE_CHANGE" />
162    <protected-broadcast android:name="android.net.wifi.LINK_CONFIGURATION_CHANGED" />
163    <protected-broadcast android:name="android.net.wifi.CONFIGURED_NETWORKS_CHANGE" />
164    <protected-broadcast android:name="android.net.wifi.supplicant.CONNECTION_CHANGE" />
165    <protected-broadcast android:name="android.net.wifi.supplicant.STATE_CHANGE" />
166    <protected-broadcast android:name="android.net.wifi.p2p.STATE_CHANGED" />
167    <protected-broadcast android:name="android.net.wifi.p2p.DISCOVERY_STATE_CHANGE" />
168    <protected-broadcast android:name="android.net.wifi.p2p.THIS_DEVICE_CHANGED" />
169    <protected-broadcast android:name="android.net.wifi.p2p.PEERS_CHANGED" />
170    <protected-broadcast android:name="android.net.wifi.p2p.CONNECTION_STATE_CHANGE" />
171    <protected-broadcast android:name="android.net.wifi.p2p.PERSISTENT_GROUPS_CHANGED" />
172    <protected-broadcast android:name="android.net.conn.TETHER_STATE_CHANGED" />
173    <protected-broadcast android:name="android.net.conn.INET_CONDITION_ACTION" />
174    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_AVAILABLE" />
175    <protected-broadcast android:name="android.intent.action.EXTERNAL_APPLICATIONS_UNAVAILABLE" />
176    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
177    <protected-broadcast android:name="android.intent.action.ADVANCED_SETTINGS" />
178    <protected-broadcast android:name="android.intent.action.BUGREPORT_FINISHED" />
179
180    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_START" />
181    <protected-broadcast android:name="android.intent.action.ACTION_IDLE_MAINTENANCE_END" />
182
183    <!-- ====================================== -->
184    <!-- Permissions for things that cost money -->
185    <!-- ====================================== -->
186    <eat-comment />
187
188    <!-- Used for permissions that can be used to make the user spend money
189         without their direct involvement. -->
190    <permission-group android:name="android.permission-group.COST_MONEY"
191        android:label="@string/permgrouplab_costMoney"
192        android:description="@string/permgroupdesc_costMoney" />
193
194    <!-- ================================== -->
195    <!-- Permissions for accessing messages -->
196    <!-- ================================== -->
197    <eat-comment />
198
199    <!-- Used for permissions that allow an application to send messages
200         on behalf of the user or intercept messages being received by the
201         user.  This is primarily intended for SMS/MMS messaging, such as
202         receiving or reading an MMS. -->
203    <permission-group android:name="android.permission-group.MESSAGES"
204        android:label="@string/permgrouplab_messages"
205        android:icon="@drawable/perm_group_messages"
206        android:description="@string/permgroupdesc_messages"
207        android:permissionGroupFlags="personalInfo"
208        android:priority="360"/>
209
210    <!-- Allows an application to send SMS messages. -->
211    <permission android:name="android.permission.SEND_SMS"
212        android:permissionGroup="android.permission-group.MESSAGES"
213        android:protectionLevel="dangerous"
214        android:permissionFlags="costsMoney"
215        android:label="@string/permlab_sendSms"
216        android:description="@string/permdesc_sendSms" />
217
218    <!-- Allows an application (Phone) to send a request to other applications
219         to handle the respond-via-message action during incoming calls. -->
220    <permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"
221        android:permissionGroup="android.permission-group.MESSAGES"
222        android:protectionLevel="signature|system"
223        android:label="@string/permlab_sendRespondViaMessageRequest"
224        android:description="@string/permdesc_sendRespondViaMessageRequest" />
225
226    <!-- Allows an application to monitor incoming SMS messages, to record
227         or perform processing on them. -->
228    <permission android:name="android.permission.RECEIVE_SMS"
229        android:permissionGroup="android.permission-group.MESSAGES"
230        android:protectionLevel="dangerous"
231        android:label="@string/permlab_receiveSms"
232        android:description="@string/permdesc_receiveSms" />
233
234    <!-- Allows an application to monitor incoming MMS messages, to record
235         or perform processing on them. -->
236    <permission android:name="android.permission.RECEIVE_MMS"
237        android:permissionGroup="android.permission-group.MESSAGES"
238        android:protectionLevel="dangerous"
239        android:label="@string/permlab_receiveMms"
240        android:description="@string/permdesc_receiveMms" />
241
242    <!-- Allows an application to receive emergency cell broadcast messages,
243         to record or display them to the user. Reserved for system apps.
244         @hide Pending API council approval -->
245    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
246        android:permissionGroup="android.permission-group.MESSAGES"
247        android:protectionLevel="signature|system"
248        android:label="@string/permlab_receiveEmergencyBroadcast"
249        android:description="@string/permdesc_receiveEmergencyBroadcast" />
250
251    <!-- Allows an application to read previously received cell broadcast
252         messages and to register a content observer to get notifications when
253         a cell broadcast has been received and added to the database. For
254         emergency alerts, the database is updated immediately after the
255         alert dialog and notification sound/vibration/speech are presented.
256         The "read" column is then updated after the user dismisses the alert.
257         This enables supplementary emergency assistance apps to start loading
258         additional emergency information (if Internet access is available)
259         when the alert is first received, and to delay presenting the info
260         to the user until after the initial alert dialog is dismissed.
261         @hide Pending API council approval -->
262    <permission android:name="android.permission.READ_CELL_BROADCASTS"
263        android:permissionGroup="android.permission-group.MESSAGES"
264        android:protectionLevel="dangerous"
265        android:label="@string/permlab_readCellBroadcasts"
266        android:description="@string/permdesc_readCellBroadcasts" />
267
268    <!-- Allows an application to read SMS messages. -->
269    <permission android:name="android.permission.READ_SMS"
270        android:permissionGroup="android.permission-group.MESSAGES"
271        android:protectionLevel="dangerous"
272        android:label="@string/permlab_readSms"
273        android:description="@string/permdesc_readSms" />
274
275    <!-- Allows an application to write SMS messages. -->
276    <permission android:name="android.permission.WRITE_SMS"
277        android:permissionGroup="android.permission-group.MESSAGES"
278        android:protectionLevel="dangerous"
279        android:label="@string/permlab_writeSms"
280        android:description="@string/permdesc_writeSms" />
281
282    <!-- Allows an application to monitor incoming WAP push messages. -->
283    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
284        android:permissionGroup="android.permission-group.MESSAGES"
285        android:protectionLevel="dangerous"
286        android:label="@string/permlab_receiveWapPush"
287        android:description="@string/permdesc_receiveWapPush" />
288
289    <!-- =============================================================== -->
290    <!-- Permissions for accessing social info (contacts and social) -->
291    <!-- =============================================================== -->
292    <eat-comment />
293
294    <!-- Used for permissions that provide access to the user's social connections,
295         such as contacts, call logs, social stream, etc.  This includes
296         both reading and writing of this data (which should generally be
297         expressed as two distinct permissions). -->
298
299    <permission-group android:name="android.permission-group.SOCIAL_INFO"
300        android:label="@string/permgrouplab_socialInfo"
301        android:icon="@drawable/perm_group_social_info"
302        android:description="@string/permgroupdesc_socialInfo"
303        android:permissionGroupFlags="personalInfo"
304        android:priority="320" />
305
306    <!-- Allows an application to read the user's contacts data. -->
307    <permission android:name="android.permission.READ_CONTACTS"
308        android:permissionGroup="android.permission-group.SOCIAL_INFO"
309        android:protectionLevel="dangerous"
310        android:label="@string/permlab_readContacts"
311        android:description="@string/permdesc_readContacts" />
312
313    <!-- Allows an application to write (but not read) the user's
314         contacts data. -->
315    <permission android:name="android.permission.WRITE_CONTACTS"
316        android:permissionGroup="android.permission-group.SOCIAL_INFO"
317        android:protectionLevel="dangerous"
318        android:label="@string/permlab_writeContacts"
319        android:description="@string/permdesc_writeContacts" />
320
321    <!-- Allows an application to execute contacts directory search.
322         This should only be used by ContactsProvider. -->
323    <!-- @hide -->
324    <permission android:name="android.permission.BIND_DIRECTORY_SEARCH"
325        android:permissionGroup="android.permission-group.PERSONAL_INFO"
326        android:protectionLevel="signature|system" />
327
328    <!-- Allows an application to read the user's call log.
329         <p class="note"><strong>Note:</strong> If your app uses the
330         {@link #READ_CONTACTS} permission and <em>both</em> your <a
331         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
332         minSdkVersion}</a> and <a
333         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
334         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
335         grants your app this permission. If you don't need this permission, be sure your <a
336         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
337         targetSdkVersion}</a> is 16 or higher.</p> -->
338    <permission android:name="android.permission.READ_CALL_LOG"
339        android:permissionGroup="android.permission-group.SOCIAL_INFO"
340        android:protectionLevel="dangerous"
341        android:label="@string/permlab_readCallLog"
342        android:description="@string/permdesc_readCallLog" />
343
344    <!-- Allows an application to write (but not read) the user's
345         contacts data.
346         <p class="note"><strong>Note:</strong> If your app uses the
347         {@link #WRITE_CONTACTS} permission and <em>both</em> your <a
348         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
349         minSdkVersion}</a> and <a
350         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
351         targetSdkVersion}</a> values are set to 15 or lower, the system implicitly
352         grants your app this permission. If you don't need this permission, be sure your <a
353         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
354         targetSdkVersion}</a> is 16 or higher.</p>  -->
355    <permission android:name="android.permission.WRITE_CALL_LOG"
356        android:permissionGroup="android.permission-group.SOCIAL_INFO"
357        android:protectionLevel="dangerous"
358        android:label="@string/permlab_writeCallLog"
359        android:description="@string/permdesc_writeCallLog" />
360
361  <!-- Allows an application to read from the user's social stream. -->
362    <permission android:name="android.permission.READ_SOCIAL_STREAM"
363        android:permissionGroup="android.permission-group.SOCIAL_INFO"
364        android:protectionLevel="dangerous"
365        android:label="@string/permlab_readSocialStream"
366        android:description="@string/permdesc_readSocialStream" />
367
368    <!-- Allows an application to write (but not read) the user's
369         social stream data. -->
370    <permission android:name="android.permission.WRITE_SOCIAL_STREAM"
371        android:permissionGroup="android.permission-group.SOCIAL_INFO"
372        android:protectionLevel="dangerous"
373        android:label="@string/permlab_writeSocialStream"
374        android:description="@string/permdesc_writeSocialStream" />
375
376    <!-- =============================================================== -->
377    <!-- Permissions for accessing information about the device owner    -->
378    <!-- =============================================================== -->
379    <eat-comment />
380
381    <!-- Used for permissions that provide access to information about the device
382         user such as profile information.  This includes both reading and
383         writing of this data (which should generally be expressed as two
384         distinct permissions). -->
385    <permission-group android:name="android.permission-group.PERSONAL_INFO"
386        android:label="@string/permgrouplab_personalInfo"
387        android:icon="@drawable/perm_group_personal_info"
388        android:description="@string/permgroupdesc_personalInfo"
389        android:permissionGroupFlags="personalInfo"
390        android:priority="310" />
391
392    <!-- Allows an application to read the user's personal profile data. -->
393    <permission android:name="android.permission.READ_PROFILE"
394        android:permissionGroup="android.permission-group.PERSONAL_INFO"
395        android:protectionLevel="dangerous"
396        android:label="@string/permlab_readProfile"
397        android:description="@string/permdesc_readProfile" />
398
399    <!-- Allows an application to write (but not read) the user's
400         personal profile data. -->
401    <permission android:name="android.permission.WRITE_PROFILE"
402        android:permissionGroup="android.permission-group.PERSONAL_INFO"
403        android:protectionLevel="dangerous"
404        android:label="@string/permlab_writeProfile"
405        android:description="@string/permdesc_writeProfile" />
406
407    <!-- =============================================================== -->
408    <!-- Permissions for accessing the device calendar                   -->
409    <!-- =============================================================== -->
410    <eat-comment />
411
412    <!-- Used for permissions that provide access to the device
413         calendar to create / view events.-->
414    <permission-group android:name="android.permission-group.CALENDAR"
415        android:label="@string/permgrouplab_calendar"
416        android:icon="@drawable/perm_group_calendar"
417        android:description="@string/permgroupdesc_calendar"
418        android:permissionGroupFlags="personalInfo"
419        android:priority="290" />
420
421    <!-- Allows an application to read the user's calendar data. -->
422    <permission android:name="android.permission.READ_CALENDAR"
423        android:permissionGroup="android.permission-group.PERSONAL_INFO"
424        android:protectionLevel="dangerous"
425        android:label="@string/permlab_readCalendar"
426        android:description="@string/permdesc_readCalendar" />
427
428    <!-- Allows an application to write (but not read) the user's
429         calendar data. -->
430    <permission android:name="android.permission.WRITE_CALENDAR"
431        android:permissionGroup="android.permission-group.PERSONAL_INFO"
432        android:protectionLevel="dangerous"
433        android:label="@string/permlab_writeCalendar"
434        android:description="@string/permdesc_writeCalendar" />
435
436    <!-- =============================================================== -->
437    <!-- Permissions for accessing the user dictionary-->
438    <!-- =============================================================== -->
439    <eat-comment />
440
441    <!-- Used for permissions that provide access to the user
442         calendar to create / view events.-->
443    <permission-group android:name="android.permission-group.USER_DICTIONARY"
444        android:label="@string/permgrouplab_dictionary"
445        android:icon="@drawable/perm_group_user_dictionary"
446        android:description="@string/permgroupdesc_dictionary"
447        android:permissionGroupFlags="personalInfo"
448        android:priority="170" />
449
450    <!-- Allows an application to read the user dictionary. This should
451         really only be required by an IME, or a dictionary editor like
452         the Settings app. -->
453    <permission android:name="android.permission.READ_USER_DICTIONARY"
454        android:permissionGroup="android.permission-group.USER_DICTIONARY"
455        android:protectionLevel="dangerous"
456        android:label="@string/permlab_readDictionary"
457        android:description="@string/permdesc_readDictionary" />
458
459    <!-- Used for permissions that provide access to the user
460         calendar to create / view events.-->
461    <permission-group android:name="android.permission-group.WRITE_USER_DICTIONARY"
462        android:label="@string/permgrouplab_writeDictionary"
463        android:icon="@drawable/perm_group_user_dictionary_write"
464        android:description="@string/permgroupdesc_writeDictionary"
465        android:priority="160" />
466
467    <!-- Allows an application to write to the user dictionary. -->
468    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
469        android:permissionGroup="android.permission-group.WRITE_USER_DICTIONARY"
470        android:protectionLevel="normal"
471        android:label="@string/permlab_writeDictionary"
472        android:description="@string/permdesc_writeDictionary" />
473
474    <!-- =============================================================== -->
475    <!-- Permissions for accessing the user bookmarks                    -->
476    <!-- =============================================================== -->
477    <eat-comment />
478
479    <!-- Used for permissions that provide access to the user
480         bookmarks and browser history.-->
481    <permission-group android:name="android.permission-group.BOOKMARKS"
482        android:label="@string/permgrouplab_bookmarks"
483        android:icon="@drawable/perm_group_bookmarks"
484        android:description="@string/permgroupdesc_bookmarks"
485        android:permissionGroupFlags="personalInfo"
486        android:priority="300" />
487
488    <!-- Allows an application to read (but not write) the user's
489        browsing history and bookmarks. -->
490    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
491        android:permissionGroup="android.permission-group.BOOKMARKS"
492        android:label="@string/permlab_readHistoryBookmarks"
493        android:description="@string/permdesc_readHistoryBookmarks"
494        android:protectionLevel="dangerous" />
495
496    <!-- Allows an application to write (but not read) the user's
497        browsing history and bookmarks. -->
498    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
499        android:permissionGroup="android.permission-group.BOOKMARKS"
500        android:label="@string/permlab_writeHistoryBookmarks"
501        android:description="@string/permdesc_writeHistoryBookmarks"
502        android:protectionLevel="dangerous" />
503
504    <!-- =============================================================== -->
505    <!-- Permissions for setting the device alarm                        -->
506    <!-- =============================================================== -->
507    <eat-comment />
508
509    <!-- Used for permissions that provide access to the user voicemail box. -->
510    <permission-group android:name="android.permission-group.DEVICE_ALARMS"
511        android:label="@string/permgrouplab_deviceAlarms"
512        android:icon="@drawable/perm_group_device_alarms"
513        android:description="@string/permgroupdesc_deviceAlarms"
514        android:permissionGroupFlags="personalInfo"
515        android:priority="210" />
516
517    <!-- Allows an application to broadcast an Intent to set an alarm for the
518         user. -->
519    <permission android:name="com.android.alarm.permission.SET_ALARM"
520        android:permissionGroup="android.permission-group.DEVICE_ALARMS"
521        android:label="@string/permlab_setAlarm"
522        android:description="@string/permdesc_setAlarm"
523        android:protectionLevel="normal" />
524
525    <!-- =============================================================== -->
526    <!-- Permissions for accessing the user voicemail                    -->
527    <!-- =============================================================== -->
528    <eat-comment />
529
530    <!-- Used for permissions that provide access to the user voicemail box. -->
531    <permission-group android:name="android.permission-group.VOICEMAIL"
532        android:label="@string/permgrouplab_voicemail"
533        android:icon="@drawable/perm_group_voicemail"
534        android:description="@string/permgroupdesc_voicemail"
535        android:permissionGroupFlags="personalInfo"
536        android:priority="280" />
537
538   <!-- Allows an application to add voicemails into the system. -->
539    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
540        android:permissionGroup="android.permission-group.VOICEMAIL"
541        android:protectionLevel="dangerous"
542        android:label="@string/permlab_addVoicemail"
543        android:description="@string/permdesc_addVoicemail" />
544
545    <!-- =============================================== -->
546    <!-- Permissions for enabling accessibility features -->
547    <!-- =============================================== -->
548    <eat-comment />
549
550    <!-- Used for permissions that allow requesting certain accessibility features. -->
551    <permission-group android:name="android.permission-group.ACCESSIBILITY_FEATURES"
552        android:label="@string/permgrouplab_accessibilityFeatures"
553        android:icon="@drawable/perm_group_accessibility_features"
554        android:description="@string/permgroupdesc_accessibilityFeatures"
555        android:priority="380" />
556
557    <!-- ======================================= -->
558    <!-- Permissions for accessing location info -->
559    <!-- ======================================= -->
560    <eat-comment />
561
562    <!-- Used for permissions that allow access to the user's current
563         location. -->
564    <permission-group android:name="android.permission-group.LOCATION"
565        android:label="@string/permgrouplab_location"
566        android:icon="@drawable/perm_group_location"
567        android:description="@string/permgroupdesc_location"
568        android:permissionGroupFlags="personalInfo"
569        android:priority="330" />
570
571    <!-- Allows an app to access precise location from location sources such
572         as GPS, cell towers, and Wi-Fi. -->
573    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
574        android:permissionGroup="android.permission-group.LOCATION"
575        android:protectionLevel="dangerous"
576        android:label="@string/permlab_accessFineLocation"
577        android:description="@string/permdesc_accessFineLocation" />
578
579    <!-- Allows an app to access approximate location derived from network location
580         sources such as cell towers and Wi-Fi. -->
581    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
582        android:permissionGroup="android.permission-group.LOCATION"
583        android:protectionLevel="dangerous"
584        android:label="@string/permlab_accessCoarseLocation"
585        android:description="@string/permdesc_accessCoarseLocation" />
586
587    <!-- Allows an application to create mock location providers for testing -->
588    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
589        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
590        android:protectionLevel="dangerous"
591        android:label="@string/permlab_accessMockLocation"
592        android:description="@string/permdesc_accessMockLocation" />
593
594    <!-- Allows an application to access extra location provider commands -->
595    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
596        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
597        android:protectionLevel="normal"
598        android:label="@string/permlab_accessLocationExtraCommands"
599        android:description="@string/permdesc_accessLocationExtraCommands" />
600
601    <!-- Allows an application to install a location provider into the Location Manager -->
602    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
603        android:protectionLevel="signature|system"
604        android:label="@string/permlab_installLocationProvider"
605        android:description="@string/permdesc_installLocationProvider" />
606
607    <!-- Allows an application to use location features in hardware,
608         such as the geofencing api
609         Protected by signature|system protection level -->
610    <permission android:name="android.permission.LOCATION_HARDWARE"
611        android:permissionGroup="android.permission-group.LOCATION"
612        android:protectionLevel="signature|system" />
613    <uses-permission android:name="android.permission.LOCATION_HARDWARE"/>
614
615    <!-- ======================================= -->
616    <!-- Permissions for accessing networks -->
617    <!-- ======================================= -->
618    <eat-comment />
619
620    <!-- Used for permissions that provide access to networking services.  The
621         main permission here is internet access, but this is also an
622         appropriate group for accessing or modifying any network configuration
623         or other related network operations. -->
624    <permission-group android:name="android.permission-group.NETWORK"
625        android:label="@string/permgrouplab_network"
626        android:icon="@drawable/perm_group_network"
627        android:description="@string/permgroupdesc_network"
628        android:priority="270" />
629
630    <!-- Allows applications to open network sockets. -->
631    <permission android:name="android.permission.INTERNET"
632        android:permissionGroup="android.permission-group.NETWORK"
633        android:protectionLevel="dangerous"
634        android:description="@string/permdesc_createNetworkSockets"
635        android:label="@string/permlab_createNetworkSockets" />
636
637    <!-- Allows applications to access information about networks -->
638    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
639        android:permissionGroup="android.permission-group.NETWORK"
640        android:protectionLevel="normal"
641        android:description="@string/permdesc_accessNetworkState"
642        android:label="@string/permlab_accessNetworkState" />
643
644    <!-- Allows applications to access information about Wi-Fi networks -->
645    <permission android:name="android.permission.ACCESS_WIFI_STATE"
646        android:permissionGroup="android.permission-group.NETWORK"
647        android:protectionLevel="normal"
648        android:description="@string/permdesc_accessWifiState"
649        android:label="@string/permlab_accessWifiState" />
650
651    <!-- Allows applications to change Wi-Fi connectivity state -->
652    <permission android:name="android.permission.CHANGE_WIFI_STATE"
653        android:permissionGroup="android.permission-group.NETWORK"
654        android:protectionLevel="dangerous"
655        android:description="@string/permdesc_changeWifiState"
656        android:label="@string/permlab_changeWifiState" />
657
658    <!-- @hide -->
659    <permission android:name="android.permission.ACCESS_WIMAX_STATE"
660        android:permissionGroup="android.permission-group.NETWORK"
661        android:protectionLevel="normal"
662        android:description="@string/permdesc_accessWimaxState"
663        android:label="@string/permlab_accessWimaxState" />
664
665    <!-- @hide -->
666    <permission android:name="android.permission.CHANGE_WIMAX_STATE"
667        android:permissionGroup="android.permission-group.NETWORK"
668        android:protectionLevel="dangerous"
669        android:description="@string/permdesc_changeWimaxState"
670        android:label="@string/permlab_changeWimaxState" />
671
672    <!-- ======================================= -->
673    <!-- Permissions for short range, peripheral networks -->
674    <!-- ======================================= -->
675    <eat-comment />
676
677    <!-- Used for permissions that provide access to other devices through Bluetooth.-->
678    <permission-group android:name="android.permission-group.BLUETOOTH_NETWORK"
679        android:label="@string/permgrouplab_bluetoothNetwork"
680        android:icon="@drawable/perm_group_bluetooth"
681        android:description="@string/permgroupdesc_bluetoothNetwork"
682        android:priority="260" />
683
684    <!-- Allows applications to connect to paired bluetooth devices -->
685    <permission android:name="android.permission.BLUETOOTH"
686        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
687        android:protectionLevel="dangerous"
688        android:description="@string/permdesc_bluetooth"
689        android:label="@string/permlab_bluetooth" />
690
691    <!-- Allows applications to discover and pair bluetooth devices -->
692    <permission android:name="android.permission.BLUETOOTH_ADMIN"
693        android:permissionGroup="android.permission-group.BLUETOOTH_NETWORK"
694        android:protectionLevel="dangerous"
695        android:description="@string/permdesc_bluetoothAdmin"
696        android:label="@string/permlab_bluetoothAdmin" />
697
698    <!-- Allows bluetooth stack to access files
699         @hide This should only be used by Bluetooth apk.
700    -->
701    <permission android:name="android.permission.BLUETOOTH_STACK"
702        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
703        android:protectionLevel="signature" />
704
705    <!-- Allows applications to perform I/O operations over NFC -->
706    <permission android:name="android.permission.NFC"
707        android:permissionGroup="android.permission-group.NETWORK"
708        android:protectionLevel="dangerous"
709        android:description="@string/permdesc_nfc"
710        android:label="@string/permlab_nfc" />
711
712    <!-- Allows an internal user to use privileged ConnectivityManager APIs.
713        @hide -->
714    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
715        android:permissionGroup="android.permission-group.NETWORK"
716        android:protectionLevel="signature|system" />
717
718    <!-- @hide -->
719    <permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"
720        android:permissionGroup="android.permission-group.NETWORK"
721        android:protectionLevel="signature|system" />
722
723    <!-- Allows access to the loop radio (Android@Home mesh network) device.
724	@hide -->
725    <permission android:name="android.permission.LOOP_RADIO"
726	android:permissionGroup="android.permission-group.NETWORK"
727	android:protectionLevel="signature|system" />
728
729    <!-- ================================== -->
730    <!-- Permissions for accessing accounts -->
731    <!-- ================================== -->
732    <eat-comment />
733
734    <!-- Permissions for direct access to the accounts managed
735         by the Account Manager. -->
736    <permission-group android:name="android.permission-group.ACCOUNTS"
737        android:label="@string/permgrouplab_accounts"
738        android:icon="@drawable/perm_group_accounts"
739        android:description="@string/permgroupdesc_accounts"
740        android:permissionGroupFlags="personalInfo"
741        android:priority="200" />
742
743    <!-- Allows access to the list of accounts in the Accounts Service -->
744    <permission android:name="android.permission.GET_ACCOUNTS"
745        android:permissionGroup="android.permission-group.ACCOUNTS"
746        android:protectionLevel="normal"
747        android:description="@string/permdesc_getAccounts"
748        android:label="@string/permlab_getAccounts" />
749
750    <!-- Allows an application to act as an AccountAuthenticator for
751         the AccountManager -->
752    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
753        android:permissionGroup="android.permission-group.ACCOUNTS"
754        android:protectionLevel="dangerous"
755        android:label="@string/permlab_authenticateAccounts"
756        android:description="@string/permdesc_authenticateAccounts" />
757
758    <!-- Allows an application to request authtokens from the AccountManager -->
759    <permission android:name="android.permission.USE_CREDENTIALS"
760        android:permissionGroup="android.permission-group.ACCOUNTS"
761        android:protectionLevel="dangerous"
762        android:label="@string/permlab_useCredentials"
763        android:description="@string/permdesc_useCredentials" />
764
765    <!-- Allows an application to manage the list of accounts in the AccountManager -->
766    <permission android:name="android.permission.MANAGE_ACCOUNTS"
767        android:permissionGroup="android.permission-group.ACCOUNTS"
768        android:protectionLevel="dangerous"
769        android:label="@string/permlab_manageAccounts"
770        android:description="@string/permdesc_manageAccounts" />
771
772    <!-- Allows applications to call into AccountAuthenticators. Only
773         the system can get this permission. -->
774    <permission android:name="android.permission.ACCOUNT_MANAGER"
775        android:permissionGroup="android.permission-group.ACCOUNTS"
776        android:protectionLevel="signature"
777        android:description="@string/permdesc_accountManagerService"
778        android:label="@string/permlab_accountManagerService" />
779
780    <!-- ================================== -->
781    <!-- Permissions for accessing hardware that may effect battery life-->
782    <!-- ================================== -->
783    <eat-comment />
784
785    <!-- Used for permissions that provide direct access to the hardware on
786         the device that has an effect on battery life.  This includes vibrator,
787         flashlight,  etc. -->
788
789    <permission-group android:name="android.permission-group.AFFECTS_BATTERY"
790        android:label="@string/permgrouplab_affectsBattery"
791        android:icon="@drawable/perm_group_affects_battery"
792        android:description="@string/permgroupdesc_affectsBattery"
793        android:priority="180" />
794
795    <!-- Allows applications to enter Wi-Fi Multicast mode -->
796    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
797        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
798        android:protectionLevel="dangerous"
799        android:description="@string/permdesc_changeWifiMulticastState"
800        android:label="@string/permlab_changeWifiMulticastState" />
801
802    <!-- Allows access to the vibrator -->
803    <permission android:name="android.permission.VIBRATE"
804        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
805        android:protectionLevel="normal"
806        android:label="@string/permlab_vibrate"
807        android:description="@string/permdesc_vibrate" />
808
809    <!-- Allows access to the flashlight -->
810    <permission android:name="android.permission.FLASHLIGHT"
811        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
812        android:protectionLevel="normal"
813        android:label="@string/permlab_flashlight"
814        android:description="@string/permdesc_flashlight" />
815
816    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
817         from dimming -->
818    <permission android:name="android.permission.WAKE_LOCK"
819        android:permissionGroup="android.permission-group.AFFECTS_BATTERY"
820        android:protectionLevel="normal"
821        android:label="@string/permlab_wakeLock"
822        android:description="@string/permdesc_wakeLock" />
823
824    <!-- ==================================================== -->
825    <!-- Permissions related to changing audio settings   -->
826    <!-- ==================================================== -->
827    <eat-comment />
828
829    <!-- Used for permissions that provide direct access to speaker settings
830         the device. -->
831    <permission-group android:name="android.permission-group.AUDIO_SETTINGS"
832        android:label="@string/permgrouplab_audioSettings"
833        android:icon="@drawable/perm_group_audio_settings"
834        android:description="@string/permgroupdesc_audioSettings"
835        android:priority="130" />
836
837    <!-- Allows an application to modify global audio settings -->
838    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
839        android:permissionGroup="android.permission-group.AUDIO_SETTINGS"
840        android:protectionLevel="normal"
841        android:label="@string/permlab_modifyAudioSettings"
842        android:description="@string/permdesc_modifyAudioSettings" />
843
844    <!-- ================================== -->
845    <!-- Permissions for accessing hardware -->
846    <!-- ================================== -->
847    <eat-comment />
848
849    <!-- Used for permissions that provide direct access to the hardware on
850         the device.  This includes audio, the camera, vibrator, etc. -->
851    <permission-group android:name="android.permission-group.HARDWARE_CONTROLS"
852        android:label="@string/permgrouplab_hardwareControls"
853        android:description="@string/permgroupdesc_hardwareControls"
854        android:priority="260"/>
855
856    <!-- Allows an application to manage preferences and permissions for USB devices
857         @hide -->
858    <permission android:name="android.permission.MANAGE_USB"
859        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
860        android:protectionLevel="signature|system"
861        android:label="@string/permlab_manageUsb"
862        android:description="@string/permdesc_manageUsb" />
863
864    <!-- Allows an application to access the MTP USB kernel driver.
865         For use only by the device side MTP implementation.
866         @hide -->
867    <permission android:name="android.permission.ACCESS_MTP"
868        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
869        android:protectionLevel="signature|system"
870        android:label="@string/permlab_accessMtp"
871        android:description="@string/permdesc_accessMtp" />
872
873    <!-- Allows access to hardware peripherals.  Intended only for hardware testing -->
874    <permission android:name="android.permission.HARDWARE_TEST"
875        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
876        android:protectionLevel="signature"
877        android:label="@string/permlab_hardware_test"
878        android:description="@string/permdesc_hardware_test" />
879
880    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
881         @hide -->
882    <permission android:name="android.permission.NET_ADMIN"
883        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
884        android:protectionLevel="signature" />
885
886    <!-- Allows registration for remote audio playback. @hide -->
887    <permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"
888        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
889        android:protectionLevel="signature" />
890
891    <!-- =========================================== -->
892    <!-- Permissions associated with audio capture -->
893    <!-- =========================================== -->
894    <eat-comment />
895
896    <!-- Used for permissions that are associated with accessing
897         microphone audio from the device. Note that phone calls also capture audio
898         but are in a separate (more visible) permission group. -->
899    <permission-group android:name="android.permission-group.MICROPHONE"
900        android:label="@string/permgrouplab_microphone"
901        android:icon="@drawable/perm_group_microphone"
902        android:description="@string/permgroupdesc_microphone"
903        android:permissionGroupFlags="personalInfo"
904        android:priority="340" />
905
906    <!-- Allows an application to record audio -->
907    <permission android:name="android.permission.RECORD_AUDIO"
908        android:permissionGroup="android.permission-group.MICROPHONE"
909        android:protectionLevel="dangerous"
910        android:label="@string/permlab_recordAudio"
911        android:description="@string/permdesc_recordAudio" />
912
913
914    <!-- =========================================== -->
915    <!-- Permissions associated with camera and image capture -->
916    <!-- =========================================== -->
917    <eat-comment />
918
919    <!-- Used for permissions that are associated with accessing
920         camera or capturing images/video from the device. -->
921    <permission-group android:name="android.permission-group.CAMERA"
922        android:label="@string/permgrouplab_camera"
923        android:icon="@drawable/perm_group_camera"
924        android:description="@string/permgroupdesc_camera"
925        android:permissionGroupFlags="personalInfo"
926        android:priority="350" />
927
928    <!-- Required to be able to access the camera device.
929         <p>This will automatically enforce the <a
930         href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code
931         &lt;uses-feature&gt;}</a> manifest element for <em>all</em> camera features.
932         If you do not require all camera features or can properly operate if a camera
933         is not available, then you must modify your manifest as appropriate in order to
934         install on devices that don't support all camera features.</p> -->
935    <permission android:name="android.permission.CAMERA"
936        android:permissionGroup="android.permission-group.CAMERA"
937        android:protectionLevel="dangerous"
938        android:label="@string/permlab_camera"
939        android:description="@string/permdesc_camera" />
940
941    <!-- =========================================== -->
942    <!-- Permissions associated with telephony state -->
943    <!-- =========================================== -->
944    <eat-comment />
945
946    <!-- Used for permissions that are associated with accessing and modifyign
947         telephony state: placing calls, intercepting outgoing calls, reading
948         and modifying the phone state. -->
949    <permission-group android:name="android.permission-group.PHONE_CALLS"
950        android:label="@string/permgrouplab_phoneCalls"
951        android:icon="@drawable/perm_group_phone_calls"
952        android:description="@string/permgroupdesc_phoneCalls"
953        android:permissionGroupFlags="personalInfo"
954        android:priority="370" />
955
956    <!-- Allows an application to monitor, modify, or abort outgoing
957         calls. -->
958    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
959        android:permissionGroup="android.permission-group.PHONE_CALLS"
960        android:protectionLevel="dangerous"
961        android:label="@string/permlab_processOutgoingCalls"
962        android:description="@string/permdesc_processOutgoingCalls" />
963
964    <!-- Allows modification of the telephony state - power on, mmi, etc.
965         Does not include placing calls. -->
966    <permission android:name="android.permission.MODIFY_PHONE_STATE"
967        android:permissionGroup="android.permission-group.PHONE_CALLS"
968        android:protectionLevel="signature|system"
969        android:label="@string/permlab_modifyPhoneState"
970        android:description="@string/permdesc_modifyPhoneState" />
971
972    <!-- Allows read only access to phone state.
973         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
974         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
975         minSdkVersion}</a> and <a
976         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
977         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
978         grants your app this permission. If you don't need this permission, be sure your <a
979         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
980         targetSdkVersion}</a> is 4 or higher. -->
981    <permission android:name="android.permission.READ_PHONE_STATE"
982        android:permissionGroup="android.permission-group.PHONE_CALLS"
983        android:protectionLevel="dangerous"
984        android:label="@string/permlab_readPhoneState"
985        android:description="@string/permdesc_readPhoneState" />
986
987    <!-- Allows read access to privileged phone state.
988         @hide Used internally. -->
989    <permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
990        android:permissionGroup="android.permission-group.PHONE_CALLS"
991        android:protectionLevel="signature|system" />
992
993     <!-- Allows an application to initiate a phone call without going through
994         the Dialer user interface for the user to confirm the call
995         being placed. -->
996    <permission android:name="android.permission.CALL_PHONE"
997        android:permissionGroup="android.permission-group.PHONE_CALLS"
998        android:protectionLevel="dangerous"
999        android:permissionFlags="costsMoney"
1000        android:label="@string/permlab_callPhone"
1001        android:description="@string/permdesc_callPhone" />
1002
1003    <!-- Allows an application to use SIP service -->
1004    <permission android:name="android.permission.USE_SIP"
1005        android:permissionGroup="android.permission-group.PHONE_CALLS"
1006        android:protectionLevel="dangerous"
1007        android:description="@string/permdesc_use_sip"
1008        android:label="@string/permlab_use_sip" />
1009
1010    <!-- ================================== -->
1011    <!-- Permissions for sdcard interaction -->
1012    <!-- ================================== -->
1013    <eat-comment />
1014
1015    <!-- Group of permissions that are related to SD card access. -->
1016    <permission-group android:name="android.permission-group.STORAGE"
1017        android:label="@string/permgrouplab_storage"
1018        android:icon="@drawable/perm_group_storage"
1019        android:description="@string/permgroupdesc_storage"
1020        android:permissionGroupFlags="personalInfo"
1021        android:priority="240" />
1022
1023    <!-- Allows an application to read from external storage.
1024         <p>Any app that declares the {@link #WRITE_EXTERNAL_STORAGE} permission is implicitly
1025         granted this permission.</p>
1026         <p>Currently, this permission is not enforced and all apps still have access to read from
1027         external storage without this permission. That will change in a future release and apps
1028         will require this permission to read from external storage. So if your
1029         app reads from the external storage, you should add this permission to your app now
1030         to ensure that it continues to work on future versions of Android.</p>
1031         <p>You can test your app with the permission enforced by either running your app on the
1032         Android Emulator when running Android 4.1 or higher, or enabling <em>Protect USB
1033         storage</em> under Developer options in the Settings app on a device running Android 4.1 or
1034         higher.</p>
1035         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1036         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1037         minSdkVersion}</a> and <a
1038         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1039         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1040         grants your app this permission. If you don't need this permission, be sure your <a
1041         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1042         targetSdkVersion}</a> is 4 or higher.-->
1043    <permission android:name="android.permission.READ_EXTERNAL_STORAGE"
1044        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1045        android:label="@string/permlab_sdcardRead"
1046        android:description="@string/permdesc_sdcardRead"
1047        android:protectionLevel="normal" />
1048
1049    <!-- Allows an application to write to external storage.
1050         <p class="note"><strong>Note:</strong> If <em>both</em> your <a
1051         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
1052         minSdkVersion}</a> and <a
1053         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1054         targetSdkVersion}</a> values are set to 3 or lower, the system implicitly
1055         grants your app this permission. If you don't need this permission, be sure your <a
1056         href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code
1057         targetSdkVersion}</a> is 4 or higher. -->
1058    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
1059        android:permissionGroup="android.permission-group.STORAGE"
1060        android:label="@string/permlab_sdcardWrite"
1061        android:description="@string/permdesc_sdcardWrite"
1062        android:protectionLevel="dangerous" />
1063
1064    <!-- Allows an application to write to internal media storage
1065         @hide  -->
1066    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
1067        android:permissionGroup="android.permission-group.STORAGE"
1068        android:label="@string/permlab_mediaStorageWrite"
1069        android:description="@string/permdesc_mediaStorageWrite"
1070        android:protectionLevel="signature|system" />
1071
1072    <!-- ================================== -->
1073    <!-- Permissions for screenlock         -->
1074    <!-- ================================== -->
1075    <eat-comment />
1076
1077    <!-- Group of permissions that are related to the screenlock. -->
1078    <permission-group android:name="android.permission-group.SCREENLOCK"
1079        android:label="@string/permgrouplab_screenlock"
1080        android:icon="@drawable/perm_group_screenlock"
1081        android:permissionGroupFlags="personalInfo"
1082        android:description="@string/permgroupdesc_screenlock"
1083        android:priority="230" />
1084
1085    <!-- Allows applications to disable the keyguard -->
1086    <permission android:name="android.permission.DISABLE_KEYGUARD"
1087        android:permissionGroup="android.permission-group.SCREENLOCK"
1088        android:protectionLevel="dangerous"
1089        android:description="@string/permdesc_disableKeyguard"
1090        android:label="@string/permlab_disableKeyguard" />
1091
1092    <!-- ================================== -->
1093    <!-- Permissions to access other installed applications  -->
1094    <!-- ================================== -->
1095    <eat-comment />
1096
1097    <!-- Group of permissions that are related to the other applications
1098         installed on the system.  Examples include such as listing
1099         running apps, or killing background processes. -->
1100    <permission-group android:name="android.permission-group.APP_INFO"
1101        android:label="@string/permgrouplab_appInfo"
1102        android:icon="@drawable/perm_group_app_info"
1103        android:description="@string/permgroupdesc_appInfo"
1104        android:priority="220" />
1105
1106    <!-- Allows an application to get information about the currently
1107         or recently running tasks. -->
1108    <permission android:name="android.permission.GET_TASKS"
1109        android:permissionGroup="android.permission-group.APP_INFO"
1110        android:protectionLevel="dangerous"
1111        android:label="@string/permlab_getTasks"
1112        android:description="@string/permdesc_getTasks" />
1113    <!-- @hide Allows an application to call APIs that allow it to do interactions
1114         across the users on the device, using singleton services and
1115         user-targeted broadcasts.  This permission is not available to
1116         third party applications. -->
1117    <permission android:name="android.permission.INTERACT_ACROSS_USERS"
1118        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1119        android:protectionLevel="signature|system|development"
1120        android:label="@string/permlab_interactAcrossUsers"
1121        android:description="@string/permdesc_interactAcrossUsers" />
1122
1123    <!-- @hide Fuller form of {@link android.Manifest.permission#INTERACT_ACROSS_USERS}
1124         that removes restrictions on where broadcasts can be sent and allows other
1125         types of interactions. -->
1126    <permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"
1127        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1128        android:protectionLevel="signature"
1129        android:label="@string/permlab_interactAcrossUsersFull"
1130        android:description="@string/permdesc_interactAcrossUsersFull" />
1131
1132    <!-- @hide Allows an application to call APIs that allow it to query and manage
1133         users on the device. This permission is not available to
1134         third party applications. -->
1135    <permission android:name="android.permission.MANAGE_USERS"
1136        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1137        android:protectionLevel="signature|system"
1138        android:label="@string/permlab_manageUsers"
1139        android:description="@string/permdesc_manageUsers" />
1140
1141    <!-- Allows an application to get full detailed information about
1142         recently running tasks, with full fidelity to the real state.
1143         @hide -->
1144    <permission android:name="android.permission.GET_DETAILED_TASKS"
1145        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1146        android:protectionLevel="signature"
1147        android:label="@string/permlab_getDetailedTasks"
1148        android:description="@string/permdesc_getDetailedTasks" />
1149
1150    <!-- Allows an application to change the Z-order of tasks -->
1151    <permission android:name="android.permission.REORDER_TASKS"
1152        android:permissionGroup="android.permission-group.APP_INFO"
1153        android:protectionLevel="normal"
1154        android:label="@string/permlab_reorderTasks"
1155        android:description="@string/permdesc_reorderTasks" />
1156
1157    <!-- @hide Allows an application to change to remove/kill tasks -->
1158    <permission android:name="android.permission.REMOVE_TASKS"
1159        android:permissionGroup="android.permission-group.APP_INFO"
1160        android:protectionLevel="signature"
1161        android:label="@string/permlab_removeTasks"
1162        android:description="@string/permdesc_removeTasks" />
1163
1164    <!-- Allows an application to start any activity, regardless of permission
1165         protection or exported state. @hide -->
1166    <permission android:name="android.permission.START_ANY_ACTIVITY"
1167        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1168        android:protectionLevel="signature"
1169        android:label="@string/permlab_startAnyActivity"
1170        android:description="@string/permdesc_startAnyActivity" />
1171
1172    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
1173        API is no longer supported. -->
1174    <permission android:name="android.permission.RESTART_PACKAGES"
1175        android:permissionGroup="android.permission-group.APP_INFO"
1176        android:protectionLevel="normal"
1177        android:label="@string/permlab_killBackgroundProcesses"
1178        android:description="@string/permdesc_killBackgroundProcesses" />
1179
1180    <!-- Allows an application to call
1181        {@link android.app.ActivityManager#killBackgroundProcesses}. -->
1182    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
1183        android:permissionGroup="android.permission-group.APP_INFO"
1184        android:protectionLevel="normal"
1185        android:label="@string/permlab_killBackgroundProcesses"
1186        android:description="@string/permdesc_killBackgroundProcesses" />
1187
1188    <!-- ================================== -->
1189    <!-- Permissions affecting the display of other applications  -->
1190    <!-- ================================== -->
1191    <eat-comment />
1192
1193    <!-- Group of permissions that allow manipulation of how
1194         another application displays UI to the user. -->
1195    <permission-group android:name="android.permission-group.DISPLAY"
1196        android:label="@string/permgrouplab_display"
1197        android:icon="@drawable/perm_group_display"
1198        android:description="@string/permgroupdesc_display"
1199        android:priority="190"/>
1200
1201    <!-- Allows an application to open windows using the type
1202         {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
1203         shown on top of all other applications.  Very few applications
1204         should use this permission; these windows are intended for
1205         system-level interaction with the user. -->
1206    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
1207        android:permissionGroup="android.permission-group.DISPLAY"
1208        android:protectionLevel="dangerous"
1209        android:label="@string/permlab_systemAlertWindow"
1210        android:description="@string/permdesc_systemAlertWindow" />
1211
1212    <!-- ================================== -->
1213    <!-- Permissions affecting the system wallpaper -->
1214    <!-- ================================== -->
1215    <eat-comment />
1216
1217    <!-- Group of permissions that allow manipulation of how
1218         another application displays UI to the user. -->
1219    <permission-group android:name="android.permission-group.WALLPAPER"
1220        android:label="@string/permgrouplab_wallpaper"
1221        android:icon="@drawable/perm_group_wallpaper"
1222        android:description="@string/permgroupdesc_wallpaper"
1223        android:priority="150" />
1224
1225    <!-- Allows applications to set the wallpaper -->
1226    <permission android:name="android.permission.SET_WALLPAPER"
1227        android:permissionGroup="android.permission-group.WALLPAPER"
1228        android:protectionLevel="normal"
1229        android:label="@string/permlab_setWallpaper"
1230        android:description="@string/permdesc_setWallpaper" />
1231
1232    <!-- Allows applications to set the wallpaper hints -->
1233    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
1234        android:permissionGroup="android.permission-group.WALLPAPER"
1235        android:protectionLevel="normal"
1236        android:label="@string/permlab_setWallpaperHints"
1237        android:description="@string/permdesc_setWallpaperHints" />
1238
1239    <!-- ============================================ -->
1240    <!-- Permissions for changing the system clock -->
1241    <!-- ============================================ -->
1242    <eat-comment />
1243
1244    <!-- Group of permissions that are related to system clock. -->
1245    <permission-group android:name="android.permission-group.SYSTEM_CLOCK"
1246        android:label="@string/permgrouplab_systemClock"
1247        android:icon="@drawable/perm_group_system_clock"
1248        android:description="@string/permgroupdesc_systemClock"
1249        android:priority="140" />
1250
1251    <!-- Allows applications to set the system time -->
1252    <permission android:name="android.permission.SET_TIME"
1253        android:protectionLevel="signature|system"
1254        android:label="@string/permlab_setTime"
1255        android:description="@string/permdesc_setTime" />
1256
1257    <!-- Allows applications to set the system time zone -->
1258    <permission android:name="android.permission.SET_TIME_ZONE"
1259        android:permissionGroup="android.permission-group.SYSTEM_CLOCK"
1260        android:protectionLevel="normal"
1261        android:label="@string/permlab_setTimeZone"
1262        android:description="@string/permdesc_setTimeZone" />
1263
1264    <!-- ==================================================== -->
1265    <!-- Permissions related to changing status bar   -->
1266    <!-- ==================================================== -->
1267    <eat-comment />
1268
1269    <!-- Used for permissions that change the status bar -->
1270    <permission-group android:name="android.permission-group.STATUS_BAR"
1271        android:label="@string/permgrouplab_statusBar"
1272        android:icon="@drawable/perm_group_status_bar"
1273        android:description="@string/permgroupdesc_statusBar"
1274        android:priority="110" />
1275
1276    <!-- Allows an application to expand or collapse the status bar. -->
1277    <permission android:name="android.permission.EXPAND_STATUS_BAR"
1278        android:permissionGroup="android.permission-group.STATUS_BAR"
1279        android:protectionLevel="normal"
1280        android:label="@string/permlab_expandStatusBar"
1281        android:description="@string/permdesc_expandStatusBar" />
1282
1283    <!-- ==================================================== -->
1284    <!-- Permissions related to accessing sync settings   -->
1285    <!-- ==================================================== -->
1286    <eat-comment />
1287
1288    <!-- Used for permissions that access the sync settings or sync
1289         related information. -->
1290    <permission-group android:name="android.permission-group.SYNC_SETTINGS"
1291        android:label="@string/permgrouplab_syncSettings"
1292        android:icon="@drawable/perm_group_sync_settings"
1293        android:description="@string/permgroupdesc_syncSettings"
1294        android:priority="120" />
1295
1296    <!-- Allows applications to read the sync settings -->
1297    <permission android:name="android.permission.READ_SYNC_SETTINGS"
1298        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1299        android:protectionLevel="normal"
1300        android:description="@string/permdesc_readSyncSettings"
1301        android:label="@string/permlab_readSyncSettings" />
1302
1303    <!-- Allows applications to write the sync settings -->
1304    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
1305        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1306        android:protectionLevel="normal"
1307        android:description="@string/permdesc_writeSyncSettings"
1308        android:label="@string/permlab_writeSyncSettings" />
1309
1310    <!-- Allows applications to read the sync stats -->
1311    <permission android:name="android.permission.READ_SYNC_STATS"
1312        android:permissionGroup="android.permission-group.SYNC_SETTINGS"
1313        android:protectionLevel="normal"
1314        android:description="@string/permdesc_readSyncStats"
1315        android:label="@string/permlab_readSyncStats" />
1316
1317
1318    <!-- ============================================ -->
1319    <!-- Permissions for low-level system interaction -->
1320    <!-- ============================================ -->
1321    <eat-comment />
1322
1323    <!-- Group of permissions that are related to system APIs.  Many
1324         of these are not permissions the user will be expected to understand,
1325         and such permissions should generally be marked as "normal" protection
1326         level so they don't get displayed.  This can also, however, be used
1327         for miscellaneous features that provide access to the operating system,
1328         such as writing the global system settings. -->
1329    <permission-group android:name="android.permission-group.SYSTEM_TOOLS"
1330        android:label="@string/permgrouplab_systemTools"
1331        android:icon="@drawable/perm_group_system_tools"
1332        android:description="@string/permgroupdesc_systemTools"
1333        android:priority="100" />
1334
1335    <!-- @hide Change the screen compatibility mode of applications -->
1336    <permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"
1337        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1338        android:protectionLevel="signature"
1339        android:label="@string/permlab_setScreenCompatibility"
1340        android:description="@string/permdesc_setScreenCompatibility" />
1341
1342    <!-- Allows an application to access all multi-user external storage @hide -->
1343    <permission android:name="android.permission.ACCESS_ALL_EXTERNAL_STORAGE"
1344        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1345        android:label="@string/permlab_sdcardAccessAll"
1346        android:description="@string/permdesc_sdcardAccessAll"
1347        android:protectionLevel="signature" />
1348
1349    <!-- Allows an application to modify the current configuration, such
1350         as locale. -->
1351    <permission android:name="android.permission.CHANGE_CONFIGURATION"
1352        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1353        android:protectionLevel="signature|system|development"
1354        android:label="@string/permlab_changeConfiguration"
1355        android:description="@string/permdesc_changeConfiguration" />
1356
1357    <!-- Allows an application to read or write the system settings. -->
1358    <permission android:name="android.permission.WRITE_SETTINGS"
1359        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1360        android:protectionLevel="normal"
1361        android:label="@string/permlab_writeSettings"
1362        android:description="@string/permdesc_writeSettings" />
1363
1364    <!-- Allows an application to modify the Google service map. -->
1365    <permission android:name="android.permission.WRITE_GSERVICES"
1366        android:protectionLevel="signature|system"
1367        android:label="@string/permlab_writeGservices"
1368        android:description="@string/permdesc_writeGservices" />
1369
1370    <!-- Allows an application to call
1371        {@link android.app.ActivityManager#forceStopPackage}.
1372        @hide -->
1373    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
1374        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1375        android:protectionLevel="signature"
1376        android:label="@string/permlab_forceStopPackages"
1377        android:description="@string/permdesc_forceStopPackages" />
1378
1379    <!-- @hide Allows an application to retrieve the content of the active window
1380         An active window is the window that has fired an accessibility event. -->
1381    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
1382        android:permissionGroup="android.permission-group.PERSONAL_INFO"
1383        android:protectionLevel="signature|system"
1384        android:label="@string/permlab_retrieve_window_content"
1385        android:description="@string/permdesc_retrieve_window_content" />
1386
1387    <!-- Modify the global animation scaling factor. -->
1388    <permission android:name="android.permission.SET_ANIMATION_SCALE"
1389        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1390        android:protectionLevel="signature|system|development"
1391        android:label="@string/permlab_setAnimationScale"
1392        android:description="@string/permdesc_setAnimationScale" />
1393
1394    <!-- @deprecated This functionality will be removed in the future; please do
1395         not use. Allow an application to make its activities persistent. -->
1396    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
1397        android:permissionGroup="android.permission-group.APP_INFO"
1398        android:protectionLevel="normal"
1399        android:label="@string/permlab_persistentActivity"
1400        android:description="@string/permdesc_persistentActivity" />
1401
1402    <!-- Allows an application to find out the space used by any package. -->
1403    <permission android:name="android.permission.GET_PACKAGE_SIZE"
1404        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1405        android:protectionLevel="normal"
1406        android:label="@string/permlab_getPackageSize"
1407        android:description="@string/permdesc_getPackageSize" />
1408
1409    <!-- @deprecated No longer useful, see
1410         {@link android.content.pm.PackageManager#addPackageToPreferred}
1411         for details. -->
1412    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
1413        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1414        android:protectionLevel="signature"
1415        android:label="@string/permlab_setPreferredApplications"
1416        android:description="@string/permdesc_setPreferredApplications" />
1417
1418    <!-- Allows an application to receive the
1419         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
1420         broadcast after the system finishes booting.  If you don't
1421         request this permission, you will not receive the broadcast at
1422         that time.  Though holding this permission does not have any
1423         security implications, it can have a negative impact on the
1424         user experience by increasing the amount of time it takes the
1425         system to start and allowing applications to have themselves
1426         running without the user being aware of them.  As such, you must
1427         explicitly declare your use of this facility to make that visible
1428         to the user. -->
1429    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
1430        android:permissionGroup="android.permission-group.APP_INFO"
1431        android:protectionLevel="normal"
1432        android:label="@string/permlab_receiveBootCompleted"
1433        android:description="@string/permdesc_receiveBootCompleted" />
1434
1435    <!-- Allows an application to broadcast sticky intents.  These are
1436         broadcasts whose data is held by the system after being finished,
1437         so that clients can quickly retrieve that data without having
1438         to wait for the next broadcast. -->
1439    <permission android:name="android.permission.BROADCAST_STICKY"
1440        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1441        android:protectionLevel="normal"
1442        android:label="@string/permlab_broadcastSticky"
1443        android:description="@string/permdesc_broadcastSticky" />
1444
1445    <!-- Allows mounting and unmounting file systems for removable storage. -->
1446    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
1447        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1448        android:protectionLevel="system|signature"
1449        android:label="@string/permlab_mount_unmount_filesystems"
1450        android:description="@string/permdesc_mount_unmount_filesystems" />
1451
1452    <!-- Allows formatting file systems for removable storage. -->
1453    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
1454        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1455        android:protectionLevel="system|signature"
1456        android:label="@string/permlab_mount_format_filesystems"
1457        android:description="@string/permdesc_mount_format_filesystems" />
1458
1459    <!-- Allows access to ASEC non-destructive API calls
1460         @hide  -->
1461    <permission android:name="android.permission.ASEC_ACCESS"
1462        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1463        android:protectionLevel="signature"
1464        android:label="@string/permlab_asec_access"
1465        android:description="@string/permdesc_asec_access" />
1466
1467    <!-- Allows creation of ASEC volumes
1468         @hide  -->
1469    <permission android:name="android.permission.ASEC_CREATE"
1470        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1471        android:protectionLevel="signature"
1472        android:label="@string/permlab_asec_create"
1473        android:description="@string/permdesc_asec_create" />
1474
1475    <!-- Allows destruction of ASEC volumes
1476         @hide  -->
1477    <permission android:name="android.permission.ASEC_DESTROY"
1478        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1479        android:protectionLevel="signature"
1480        android:label="@string/permlab_asec_destroy"
1481        android:description="@string/permdesc_asec_destroy" />
1482
1483    <!-- Allows mount / unmount of ASEC volumes
1484         @hide  -->
1485    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
1486        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1487        android:protectionLevel="signature"
1488        android:label="@string/permlab_asec_mount_unmount"
1489        android:description="@string/permdesc_asec_mount_unmount" />
1490
1491    <!-- Allows rename of ASEC volumes
1492         @hide  -->
1493    <permission android:name="android.permission.ASEC_RENAME"
1494        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1495        android:protectionLevel="signature"
1496        android:label="@string/permlab_asec_rename"
1497        android:description="@string/permdesc_asec_rename" />
1498
1499    <!-- Allows applications to write the apn settings -->
1500    <permission android:name="android.permission.WRITE_APN_SETTINGS"
1501                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1502                android:protectionLevel="signature|system"
1503                android:description="@string/permdesc_writeApnSettings"
1504                android:label="@string/permlab_writeApnSettings" />
1505
1506    <!-- Allows an application to allow access the subscribed feeds
1507         ContentProvider. -->
1508    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
1509        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1510        android:label="@string/permlab_subscribedFeedsRead"
1511        android:description="@string/permdesc_subscribedFeedsRead"
1512        android:protectionLevel="normal" />
1513    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
1514        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1515        android:label="@string/permlab_subscribedFeedsWrite"
1516        android:description="@string/permdesc_subscribedFeedsWrite"
1517        android:protectionLevel="dangerous" />
1518
1519    <!-- Allows applications to change network connectivity state -->
1520    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
1521        android:permissionGroup="android.permission-group.NETWORK"
1522        android:protectionLevel="normal"
1523        android:description="@string/permdesc_changeNetworkState"
1524        android:label="@string/permlab_changeNetworkState" />
1525
1526    <!-- Allows an application to clear the caches of all installed
1527         applications on the device.  -->
1528    <permission android:name="android.permission.CLEAR_APP_CACHE"
1529        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1530        android:protectionLevel="dangerous"
1531        android:label="@string/permlab_clearAppCache"
1532        android:description="@string/permdesc_clearAppCache" />
1533
1534    <!-- Allows an application to use any media decoder when decoding for playback
1535         @hide -->
1536    <permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"
1537        android:protectionLevel="signature|system"
1538        android:label="@string/permlab_anyCodecForPlayback"
1539        android:description="@string/permdesc_anyCodecForPlayback" />
1540
1541    <!-- ========================================= -->
1542    <!-- Permissions for special development tools -->
1543    <!-- ========================================= -->
1544    <eat-comment />
1545
1546    <!-- Group of permissions that are related to development features.  These
1547         are not permissions that should appear in normal applications; they
1548         protect APIs that are intended only to be used for development
1549         purposes. -->
1550    <permission-group android:name="android.permission-group.DEVELOPMENT_TOOLS"
1551        android:label="@string/permgrouplab_developmentTools"
1552        android:description="@string/permgroupdesc_developmentTools"
1553        android:priority="310" />
1554
1555    <!-- Allows an application to read or write the secure system settings. -->
1556    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
1557        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1558        android:protectionLevel="signature|system|development"
1559        android:label="@string/permlab_writeSecureSettings"
1560        android:description="@string/permdesc_writeSecureSettings" />
1561
1562    <!-- Allows an application to retrieve state dump information from system
1563         services. -->
1564    <permission android:name="android.permission.DUMP"
1565        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1566        android:protectionLevel="signature|system|development"
1567        android:label="@string/permlab_dump"
1568        android:description="@string/permdesc_dump" />
1569
1570    <!-- Allows an application to read the low-level system log files.
1571         Log entries can contain the user's private information,
1572         which is why this permission is not available to normal apps. -->
1573    <permission android:name="android.permission.READ_LOGS"
1574        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1575        android:protectionLevel="signature|system|development"
1576        android:label="@string/permlab_readLogs"
1577        android:description="@string/permdesc_readLogs" />
1578
1579    <!-- Configure an application for debugging. -->
1580    <permission android:name="android.permission.SET_DEBUG_APP"
1581        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1582        android:protectionLevel="signature|system|development"
1583        android:label="@string/permlab_setDebugApp"
1584        android:description="@string/permdesc_setDebugApp" />
1585
1586    <!-- Allows an application to set the maximum number of (not needed)
1587         application processes that can be running. -->
1588    <permission android:name="android.permission.SET_PROCESS_LIMIT"
1589        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1590        android:protectionLevel="signature|system|development"
1591        android:label="@string/permlab_setProcessLimit"
1592        android:description="@string/permdesc_setProcessLimit" />
1593
1594    <!-- Allows an application to control whether activities are immediately
1595         finished when put in the background. -->
1596    <permission android:name="android.permission.SET_ALWAYS_FINISH"
1597        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1598        android:protectionLevel="signature|system|development"
1599        android:label="@string/permlab_setAlwaysFinish"
1600        android:description="@string/permdesc_setAlwaysFinish" />
1601
1602    <!-- Allow an application to request that a signal be sent to all persistent processes -->
1603    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
1604        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1605        android:protectionLevel="signature|system|development"
1606        android:label="@string/permlab_signalPersistentProcesses"
1607        android:description="@string/permdesc_signalPersistentProcesses" />
1608
1609    <!-- ==================================== -->
1610    <!-- Private (signature-only) permissions -->
1611    <!-- ==================================== -->
1612    <eat-comment />
1613
1614    <!-- Allows applications to RW to diagnostic resources. -->
1615    <permission android:name="android.permission.DIAGNOSTIC"
1616        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1617        android:protectionLevel="signature"
1618        android:description="@string/permdesc_diagnostic"
1619        android:label="@string/permlab_diagnostic" />
1620
1621    <!-- Allows an application to open, close, or disable the status bar
1622         and its icons. -->
1623    <permission android:name="android.permission.STATUS_BAR"
1624        android:label="@string/permlab_statusBar"
1625        android:description="@string/permdesc_statusBar"
1626        android:protectionLevel="signature|system" />
1627
1628    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
1629    @hide -->
1630    <permission android:name="android.permission.STATUS_BAR_SERVICE"
1631        android:label="@string/permlab_statusBarService"
1632        android:description="@string/permdesc_statusBarService"
1633        android:protectionLevel="signature" />
1634
1635    <!-- Allows an application to force a BACK operation on whatever is the
1636         top activity. -->
1637    <permission android:name="android.permission.FORCE_BACK"
1638        android:label="@string/permlab_forceBack"
1639        android:description="@string/permdesc_forceBack"
1640        android:protectionLevel="signature" />
1641
1642    <!-- Allows an application to update device statistics. Not for
1643         use by third party apps. -->
1644    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
1645        android:label="@string/permlab_updateBatteryStats"
1646        android:description="@string/permdesc_updateBatteryStats"
1647        android:protectionLevel="signature|system" />
1648
1649    <!-- @hide Allows an application to collect battery statistics -->
1650    <permission android:name="android.permission.GET_APP_OPS_STATS"
1651        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1652        android:label="@string/permlab_getAppOpsStats"
1653        android:description="@string/permdesc_getAppOpsStats"
1654        android:protectionLevel="signature|system|development" />
1655
1656    <!-- Allows an application to update application operation statistics. Not for
1657         use by third party apps. @hide -->
1658    <permission android:name="android.permission.UPDATE_APP_OPS_STATS"
1659        android:label="@string/permlab_updateAppOpsStats"
1660        android:description="@string/permdesc_updateAppOpsStats"
1661        android:protectionLevel="signature|system" />
1662
1663    <!-- Allows an application to open windows that are for use by parts
1664         of the system user interface.  Not for use by third party apps. -->
1665    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
1666        android:label="@string/permlab_internalSystemWindow"
1667        android:description="@string/permdesc_internalSystemWindow"
1668        android:protectionLevel="signature" />
1669
1670    <!-- Allows an application to manage (create, destroy,
1671         Z-order) application tokens in the window manager.  This is only
1672         for use by the system. -->
1673    <permission android:name="android.permission.MANAGE_APP_TOKENS"
1674        android:label="@string/permlab_manageAppTokens"
1675        android:description="@string/permdesc_manageAppTokens"
1676        android:protectionLevel="signature" />
1677
1678    <!-- @hide Allows the application to temporarily freeze the screen for a
1679         full-screen transition. -->
1680    <permission android:name="android.permission.FREEZE_SCREEN"
1681        android:label="@string/permlab_freezeScreen"
1682        android:description="@string/permdesc_freezeScreen"
1683        android:protectionLevel="signature" />
1684
1685    <!-- Allows an application to inject user events (keys, touch, trackball)
1686         into the event stream and deliver them to ANY window.  Without this
1687         permission, you can only deliver events to windows in your own process.
1688         Very few applications should need to use this permission. -->
1689    <permission android:name="android.permission.INJECT_EVENTS"
1690        android:label="@string/permlab_injectEvents"
1691        android:description="@string/permdesc_injectEvents"
1692        android:protectionLevel="signature" />
1693
1694    <!-- @hide Allows an application to register an input filter which filters the stream
1695         of user events (keys, touch, trackball) before they are dispatched to any window. -->
1696    <permission android:name="android.permission.FILTER_EVENTS"
1697        android:label="@string/permlab_filter_events"
1698        android:description="@string/permdesc_filter_events"
1699        android:protectionLevel="signature" />
1700
1701    <!-- @hide Allows an application to retrieve info for a window from the window manager. -->
1702    <permission android:name="android.permission.RETRIEVE_WINDOW_INFO"
1703        android:label="@string/permlab_retrieve_window_info"
1704        android:description="@string/permdesc_retrieve_window_info"
1705        android:protectionLevel="signature" />
1706
1707    <!-- @hide Allows an application to temporary enable accessibility on the device. -->
1708    <permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"
1709        android:label="@string/permlab_temporary_enable_accessibility"
1710        android:description="@string/permdesc_temporary_enable_accessibility"
1711        android:protectionLevel="signature" />
1712
1713    <!-- @hide Allows an application to magnify the content of a display. -->
1714    <permission android:name="android.permission.MAGNIFY_DISPLAY"
1715        android:label="@string/permlab_magnify_display"
1716        android:description="@string/permdesc_magnify_display"
1717        android:protectionLevel="signature" />
1718
1719    <!-- Allows an application to watch and control how activities are
1720         started globally in the system.  Only for is in debugging
1721         (usually the monkey command). -->
1722    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
1723        android:label="@string/permlab_runSetActivityWatcher"
1724        android:description="@string/permdesc_runSetActivityWatcher"
1725        android:protectionLevel="signature" />
1726
1727    <!-- Allows an application to call the activity manager shutdown() API
1728         to put the higher-level system there into a shutdown state.
1729         @hide -->
1730    <permission android:name="android.permission.SHUTDOWN"
1731        android:label="@string/permlab_shutdown"
1732        android:description="@string/permdesc_shutdown"
1733        android:protectionLevel="signature|system" />
1734
1735    <!-- Allows an application to tell the activity manager to temporarily
1736         stop application switches, putting it into a special mode that
1737         prevents applications from immediately switching away from some
1738         critical UI such as the home screen.
1739         @hide -->
1740    <permission android:name="android.permission.STOP_APP_SWITCHES"
1741        android:label="@string/permlab_stopAppSwitches"
1742        android:description="@string/permdesc_stopAppSwitches"
1743        android:protectionLevel="signature|system" />
1744
1745    <!-- Allows an application to retrieve private information about
1746         the current top activity, such as any assist context it can provide. -->
1747    <permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"
1748        android:label="@string/permlab_getTopActivityInfo"
1749        android:description="@string/permdesc_getTopActivityInfo"
1750        android:protectionLevel="signature" />
1751
1752    <!-- Allows an application to retrieve the current state of keys and
1753         switches.  This is only for use by the system.
1754         @deprecated The API that used this permission has been removed. -->
1755    <permission android:name="android.permission.READ_INPUT_STATE"
1756        android:label="@string/permlab_readInputState"
1757        android:description="@string/permdesc_readInputState"
1758        android:protectionLevel="signature" />
1759
1760    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
1761         to ensure that only the system can bind to it. -->
1762    <permission android:name="android.permission.BIND_INPUT_METHOD"
1763        android:label="@string/permlab_bindInputMethod"
1764        android:description="@string/permdesc_bindInputMethod"
1765        android:protectionLevel="signature" />
1766
1767    <!-- Must be required by an {@link android.accessibilityservice.AccessibilityService},
1768         to ensure that only the system can bind to it. -->
1769    <permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"
1770        android:label="@string/permlab_bindAccessibilityService"
1771        android:description="@string/permdesc_bindAccessibilityService"
1772        android:protectionLevel="signature" />
1773
1774    <!-- Must be required by a TextService (e.g. SpellCheckerService)
1775         to ensure that only the system can bind to it. -->
1776    <permission android:name="android.permission.BIND_TEXT_SERVICE"
1777        android:label="@string/permlab_bindTextService"
1778        android:description="@string/permdesc_bindTextService"
1779        android:protectionLevel="signature" />
1780
1781    <!-- Must be required by an {@link android.net.VpnService},
1782         to ensure that only the system can bind to it. -->
1783    <permission android:name="android.permission.BIND_VPN_SERVICE"
1784        android:label="@string/permlab_bindVpnService"
1785        android:description="@string/permdesc_bindVpnService"
1786        android:protectionLevel="signature" />
1787
1788    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
1789         to ensure that only the system can bind to it. -->
1790    <permission android:name="android.permission.BIND_WALLPAPER"
1791        android:label="@string/permlab_bindWallpaper"
1792        android:description="@string/permdesc_bindWallpaper"
1793        android:protectionLevel="signature|system" />
1794
1795    <!-- Must be required by device administration receiver, to ensure that only the
1796         system can interact with it. -->
1797    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
1798        android:label="@string/permlab_bindDeviceAdmin"
1799        android:description="@string/permdesc_bindDeviceAdmin"
1800        android:protectionLevel="signature" />
1801
1802    <!-- Allows low-level access to setting the orientation (actually
1803         rotation) of the screen.  Not for use by normal applications. -->
1804    <permission android:name="android.permission.SET_ORIENTATION"
1805        android:label="@string/permlab_setOrientation"
1806        android:description="@string/permdesc_setOrientation"
1807        android:protectionLevel="signature" />
1808
1809    <!-- Allows low-level access to setting the pointer speed.
1810         Not for use by normal applications. -->
1811    <permission android:name="android.permission.SET_POINTER_SPEED"
1812        android:label="@string/permlab_setPointerSpeed"
1813        android:description="@string/permdesc_setPointerSpeed"
1814        android:protectionLevel="signature" />
1815
1816    <!-- Allows low-level access to setting the keyboard layout.
1817         Not for use by normal applications.
1818         @hide -->
1819    <permission android:name="android.permission.SET_KEYBOARD_LAYOUT"
1820        android:label="@string/permlab_setKeyboardLayout"
1821        android:description="@string/permdesc_setKeyboardLayout"
1822        android:protectionLevel="signature" />
1823
1824    <!-- Allows an application to install packages. -->
1825    <permission android:name="android.permission.INSTALL_PACKAGES"
1826        android:label="@string/permlab_installPackages"
1827        android:description="@string/permdesc_installPackages"
1828        android:protectionLevel="signature|system" />
1829
1830    <!-- Allows an application to clear user data -->
1831    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
1832        android:label="@string/permlab_clearAppUserData"
1833        android:description="@string/permdesc_clearAppUserData"
1834        android:protectionLevel="signature" />
1835
1836    <!-- Allows an application to delete cache files. -->
1837    <permission android:name="android.permission.DELETE_CACHE_FILES"
1838        android:label="@string/permlab_deleteCacheFiles"
1839        android:description="@string/permdesc_deleteCacheFiles"
1840        android:protectionLevel="signature|system" />
1841
1842    <!-- Allows an application to delete packages. -->
1843    <permission android:name="android.permission.DELETE_PACKAGES"
1844        android:label="@string/permlab_deletePackages"
1845        android:description="@string/permdesc_deletePackages"
1846        android:protectionLevel="signature|system" />
1847
1848    <!-- Allows an application to move location of installed package.
1849         @hide -->
1850    <permission android:name="android.permission.MOVE_PACKAGE"
1851        android:label="@string/permlab_movePackage"
1852        android:description="@string/permdesc_movePackage"
1853        android:protectionLevel="signature|system" />
1854
1855    <!-- Allows an application to change whether an application component (other than its own) is
1856         enabled or not. -->
1857    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
1858        android:label="@string/permlab_changeComponentState"
1859        android:description="@string/permdesc_changeComponentState"
1860        android:protectionLevel="signature|system" />
1861
1862    <!-- @hide Allows an application to grant or revoke specific permissions. -->
1863    <permission android:name="android.permission.GRANT_REVOKE_PERMISSIONS"
1864        android:label="@string/permlab_grantRevokePermissions"
1865        android:description="@string/permdesc_grantRevokePermissions"
1866        android:protectionLevel="signature" />
1867
1868    <!-- Allows an application to use SurfaceFlinger's low level features -->
1869    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
1870        android:label="@string/permlab_accessSurfaceFlinger"
1871        android:description="@string/permdesc_accessSurfaceFlinger"
1872        android:protectionLevel="signature" />
1873
1874    <!-- Allows an application to take screen shots and more generally
1875         get access to the frame buffer data -->
1876    <permission android:name="android.permission.READ_FRAME_BUFFER"
1877        android:label="@string/permlab_readFrameBuffer"
1878        android:description="@string/permdesc_readFrameBuffer"
1879        android:protectionLevel="signature|system" />
1880
1881    <!-- Allows an application to configure and connect to Wifi displays
1882         @hide -->
1883    <permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"
1884        android:label="@string/permlab_configureWifiDisplay"
1885        android:description="@string/permdesc_configureWifiDisplay"
1886        android:protectionLevel="signature" />
1887
1888    <!-- Allows an application to control low-level features of Wifi displays
1889         such as opening an RTSP socket.  This permission should only be used
1890         by the display manager.
1891         @hide -->
1892    <permission android:name="android.permission.CONTROL_WIFI_DISPLAY"
1893        android:label="@string/permlab_controlWifiDisplay"
1894        android:description="@string/permdesc_controlWifiDisplay"
1895        android:protectionLevel="signature" />
1896
1897    <!-- Required to be able to disable the device (very dangerous!). -->
1898    <permission android:name="android.permission.BRICK"
1899        android:label="@string/permlab_brick"
1900        android:description="@string/permdesc_brick"
1901        android:protectionLevel="signature" />
1902
1903    <!-- Required to be able to reboot the device. -->
1904    <permission android:name="android.permission.REBOOT"
1905        android:label="@string/permlab_reboot"
1906        android:description="@string/permdesc_reboot"
1907        android:protectionLevel="signature|system" />
1908
1909   <!-- Allows low-level access to power management -->
1910    <permission android:name="android.permission.DEVICE_POWER"
1911        android:label="@string/permlab_devicePower"
1912        android:description="@string/permdesc_devicePower"
1913        android:protectionLevel="signature" />
1914
1915   <!-- @hide Allows low-level access to tun tap driver -->
1916    <permission android:name="android.permission.NET_TUNNELING"
1917        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1918        android:protectionLevel="signature" />
1919
1920    <!-- Run as a manufacturer test application, running as the root user.
1921         Only available when the device is running in manufacturer test mode. -->
1922    <permission android:name="android.permission.FACTORY_TEST"
1923        android:label="@string/permlab_factoryTest"
1924        android:description="@string/permdesc_factoryTest"
1925        android:protectionLevel="signature" />
1926
1927    <!-- Allows an application to broadcast a notification that an application
1928         package has been removed. -->
1929    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
1930        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1931        android:label="@string/permlab_broadcastPackageRemoved"
1932        android:description="@string/permdesc_broadcastPackageRemoved"
1933        android:protectionLevel="signature" />
1934
1935    <!-- Allows an application to broadcast an SMS receipt notification -->
1936    <permission android:name="android.permission.BROADCAST_SMS"
1937        android:permissionGroup="android.permission-group.MESSAGES"
1938        android:label="@string/permlab_broadcastSmsReceived"
1939        android:description="@string/permdesc_broadcastSmsReceived"
1940        android:protectionLevel="signature" />
1941
1942    <!-- Allows an application to broadcast a WAP PUSH receipt notification -->
1943    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
1944        android:permissionGroup="android.permission-group.MESSAGES"
1945        android:label="@string/permlab_broadcastWapPush"
1946        android:description="@string/permdesc_broadcastWapPush"
1947        android:protectionLevel="signature" />
1948
1949    <permission android:name="android.permission.MASTER_CLEAR"
1950        android:label="@string/permlab_masterClear"
1951        android:description="@string/permdesc_masterClear"
1952        android:protectionLevel="signature|system" />
1953
1954    <!-- Allows an application to call any phone number, including emergency
1955         numbers, without going through the Dialer user interface for the user
1956         to confirm the call being placed. -->
1957    <permission android:name="android.permission.CALL_PRIVILEGED"
1958        android:label="@string/permlab_callPrivileged"
1959        android:description="@string/permdesc_callPrivileged"
1960        android:protectionLevel="signature|system" />
1961
1962    <!-- Allows an application to perform CDMA OTA provisioning @hide -->
1963    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
1964        android:label="@string/permlab_performCdmaProvisioning"
1965        android:description="@string/permdesc_performCdmaProvisioning"
1966        android:protectionLevel="signature|system" />
1967
1968    <!-- Allows enabling/disabling location update notifications from
1969         the radio. Not for use by normal applications. -->
1970    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
1971        android:label="@string/permlab_locationUpdates"
1972        android:description="@string/permdesc_locationUpdates"
1973        android:protectionLevel="signature|system" />
1974
1975    <!-- Allows read/write access to the "properties" table in the checkin
1976         database, to change values that get uploaded. -->
1977    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
1978        android:label="@string/permlab_checkinProperties"
1979        android:description="@string/permdesc_checkinProperties"
1980        android:protectionLevel="signature|system" />
1981
1982    <!-- Allows an application to collect component usage
1983         statistics @hide -->
1984    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
1985        android:label="@string/permlab_pkgUsageStats"
1986        android:description="@string/permdesc_pkgUsageStats"
1987        android:protectionLevel="signature|system" />
1988
1989    <!-- Allows an application to collect battery statistics -->
1990    <permission android:name="android.permission.BATTERY_STATS"
1991        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1992        android:label="@string/permlab_batteryStats"
1993        android:description="@string/permdesc_batteryStats"
1994        android:protectionLevel="dangerous" />
1995
1996    <!-- Allows an application to control the backup and restore process
1997         @hide pending API council -->
1998    <permission android:name="android.permission.BACKUP"
1999        android:label="@string/permlab_backup"
2000        android:description="@string/permdesc_backup"
2001        android:protectionLevel="signature|system" />
2002
2003    <!-- Allows a package to launch the secure full-backup confirmation UI.
2004         ONLY the system process may hold this permission.
2005         @hide -->
2006    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
2007        android:label="@string/permlab_confirm_full_backup"
2008        android:description="@string/permdesc_confirm_full_backup"
2009        android:protectionLevel="signature" />
2010
2011    <!-- Must be required by a {@link android.widget.RemoteViewsService},
2012         to ensure that only the system can bind to it. -->
2013    <permission android:name="android.permission.BIND_REMOTEVIEWS"
2014        android:label="@string/permlab_bindRemoteViews"
2015        android:description="@string/permdesc_bindRemoteViews"
2016        android:protectionLevel="signature|system" />
2017
2018    <!-- Allows an application to tell the AppWidget service which application
2019         can access AppWidget's data.  The normal user flow is that a user
2020         picks an AppWidget to go into a particular host, thereby giving that
2021         host application access to the private data from the AppWidget app.
2022         An application that has this permission should honor that contract.
2023         Very few applications should need to use this permission. -->
2024    <permission android:name="android.permission.BIND_APPWIDGET"
2025        android:permissionGroup="android.permission-group.PERSONAL_INFO"
2026        android:label="@string/permlab_bindGadget"
2027        android:description="@string/permdesc_bindGadget"
2028        android:protectionLevel="signature|system" />
2029
2030    <!-- Private permission, to restrict who can bring up a dialog to add a new
2031         keyguard widget
2032         @hide -->
2033    <permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"
2034        android:permissionGroup="android.permission-group.PERSONAL_INFO"
2035        android:protectionLevel="signature|system" />
2036
2037    <!-- Internal permission allowing an application to query/set which
2038         applications can bind AppWidgets.
2039         @hide -->
2040    <permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"
2041        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2042        android:protectionLevel="signature|system" />
2043
2044    <!-- Allows applications to change the background data setting
2045         @hide pending API council -->
2046    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
2047        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2048        android:protectionLevel="signature"
2049        android:description="@string/permdesc_changeBackgroundDataSetting"
2050        android:label="@string/permlab_changeBackgroundDataSetting" />
2051
2052    <!-- This permission can be used on content providers to allow the global
2053         search system to access their data.  Typically it used when the
2054         provider has some permissions protecting it (which global search
2055         would not be expected to hold), and added as a read-only permission
2056         to the path in the provider where global search queries are
2057         performed.  This permission can not be held by regular applications;
2058         it is used by applications to protect themselves from everyone else
2059         besides global search. -->
2060    <permission android:name="android.permission.GLOBAL_SEARCH"
2061        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2062        android:protectionLevel="signature|system" />
2063
2064    <!-- Internal permission protecting access to the global search
2065         system: ensures that only the system can access the provider
2066         to perform queries (since this otherwise provides unrestricted
2067         access to a variety of content providers), and to write the
2068         search statistics (to keep applications from gaming the source
2069         ranking).
2070         @hide -->
2071    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
2072        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2073        android:protectionLevel="signature" />
2074
2075    <!-- Allows applications to set a live wallpaper.
2076         @hide XXX Change to signature once the picker is moved to its
2077         own apk as Ghod Intended. -->
2078    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
2079        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2080        android:protectionLevel="signature|system" />
2081
2082    <!-- Allows applications to read dream settings and dream state.
2083         @hide -->
2084    <permission android:name="android.permission.READ_DREAM_STATE"
2085        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2086        android:protectionLevel="signature" />
2087
2088    <!-- Allows applications to write dream settings, and start or stop dreaming.
2089         @hide -->
2090    <permission android:name="android.permission.WRITE_DREAM_STATE"
2091        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
2092        android:protectionLevel="signature" />
2093
2094    <!-- Allow an application to read and write the cache partition.
2095         @hide -->
2096    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
2097        android:label="@string/permlab_cache_filesystem"
2098        android:description="@string/permdesc_cache_filesystem"
2099        android:protectionLevel="signature|system" />
2100
2101    <!-- Must be required by default container service so that only
2102         the system can bind to it and use it to copy
2103         protected data to secure containers or files
2104         accessible to the system.
2105         @hide -->
2106    <permission android:name="android.permission.COPY_PROTECTED_DATA"
2107        android:label="@string/permlab_copyProtectedData"
2108        android:description="@string/permlab_copyProtectedData"
2109        android:protectionLevel="signature" />
2110
2111    <!-- Internal permission protecting access to the encryption methods
2112        @hide
2113    -->
2114    <permission android:name="android.permission.CRYPT_KEEPER"
2115        android:protectionLevel="signature|system" />
2116
2117    <!-- Allows an application to read historical network usage for
2118         specific networks and applications. @hide -->
2119    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
2120        android:label="@string/permlab_readNetworkUsageHistory"
2121        android:description="@string/permdesc_readNetworkUsageHistory"
2122        android:protectionLevel="signature|system" />
2123
2124    <!-- Allows an application to manage network policies (such as warning and disable
2125         limits) and to define application-specific rules. @hide -->
2126    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
2127        android:label="@string/permlab_manageNetworkPolicy"
2128        android:description="@string/permdesc_manageNetworkPolicy"
2129        android:protectionLevel="signature" />
2130
2131    <!-- Allows an application to account its network traffic against other UIDs. Used
2132         by system services like download manager and media server. Not for use by
2133         third party apps. @hide -->
2134    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
2135        android:label="@string/permlab_modifyNetworkAccounting"
2136        android:description="@string/permdesc_modifyNetworkAccounting"
2137        android:protectionLevel="signature|system" />
2138
2139    <!-- C2DM permission.
2140         @hide Used internally.
2141     -->
2142    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
2143          android:protectionLevel="signature" />
2144    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
2145
2146    <!-- @hide Package verifier needs to have this permission before the PackageManager will
2147         trust it to verify packages.
2148    -->
2149    <permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"
2150        android:label="@string/permlab_packageVerificationAgent"
2151        android:description="@string/permdesc_packageVerificationAgent"
2152        android:protectionLevel="signature|system" />
2153
2154    <!-- Must be required by package verifier receiver, to ensure that only the
2155         system can interact with it.
2156         @hide
2157    -->
2158    <permission android:name="android.permission.BIND_PACKAGE_VERIFIER"
2159        android:label="@string/permlab_bindPackageVerifier"
2160        android:description="@string/permdesc_bindPackageVerifier"
2161        android:protectionLevel="signature" />
2162
2163    <!-- Allows applications to access serial ports via the SerialManager.
2164         @hide -->
2165    <permission android:name="android.permission.SERIAL_PORT"
2166        android:label="@string/permlab_serialPort"
2167        android:description="@string/permdesc_serialPort"
2168        android:protectionLevel="signature|system" />
2169
2170    <!-- Allows the holder to access content providers from outside an ApplicationThread.
2171         This permission is enforced by the ActivityManagerService on the corresponding APIs,
2172         in particular ActivityManagerService#getContentProviderExternal(String) and
2173         ActivityManagerService#removeContentProviderExternal(String).
2174         @hide
2175    -->
2176    <permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"
2177        android:label="@string/permlab_accessContentProvidersExternally"
2178        android:description="@string/permdesc_accessContentProvidersExternally"
2179        android:protectionLevel="signature" />
2180    <!-- Allows an application to hold an UpdateLock, recommending that a headless
2181         OTA reboot *not* occur while the lock is held.
2182         @hide -->
2183    <permission android:name="android.permission.UPDATE_LOCK"
2184        android:label="@string/permlab_updateLock"
2185        android:description="@string/permdesc_updateLock"
2186        android:protectionLevel="signatureOrSystem" />
2187
2188    <!-- Allows an application to read the current set of notifications, including
2189         any metadata and intents attached.
2190         @hide -->
2191    <permission android:name="android.permission.ACCESS_NOTIFICATIONS"
2192        android:label="@string/permlab_accessNotifications"
2193        android:description="@string/permdesc_accessNotifications"
2194        android:protectionLevel="signature|system" />
2195
2196    <!-- Allows access to keyguard secure storage.  Only allowed for system processes.
2197        @hide -->
2198    <permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"
2199        android:protectionLevel="signature"
2200        android:label="@string/permlab_access_keyguard_secure_storage"
2201        android:description="@string/permdesc_access_keyguard_secure_storage" />
2202
2203    <!-- Must be required by an {@link
2204         android.service.notification.NotificationListenerService},
2205         to ensure that only the system can bind to it. -->
2206    <permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"
2207        android:label="@string/permlab_bindNotificationListenerService"
2208        android:description="@string/permdesc_bindNotificationListenerService"
2209        android:protectionLevel="signature" />
2210
2211    <!-- The system process is explicitly the only one allowed to launch the
2212         confirmation UI for full backup/restore -->
2213    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
2214
2215    <application android:process="system"
2216                 android:persistent="true"
2217                 android:hasCode="false"
2218                 android:label="@string/android_system_label"
2219                 android:allowClearUserData="false"
2220                 android:backupAgent="com.android.server.SystemBackupAgent"
2221                 android:killAfterRestore="false"
2222                 android:icon="@drawable/ic_launcher_android"
2223                 android:supportsRtl="true">
2224        <activity android:name="com.android.internal.app.ChooserActivity"
2225                android:theme="@style/Theme.Holo.Dialog.Alert"
2226                android:finishOnCloseSystemDialogs="true"
2227                android:excludeFromRecents="true"
2228                android:multiprocess="true">
2229            <intent-filter>
2230                <action android:name="android.intent.action.CHOOSER" />
2231                <category android:name="android.intent.category.DEFAULT" />
2232            </intent-filter>
2233        </activity>
2234        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
2235                android:theme="@style/Theme.Holo.Dialog"
2236                android:label="@string/heavy_weight_switcher_title"
2237                android:finishOnCloseSystemDialogs="true"
2238                android:excludeFromRecents="true"
2239                android:process=":ui">
2240        </activity>
2241        <activity android:name="com.android.internal.app.PlatLogoActivity"
2242                android:theme="@style/Theme.Wallpaper.NoTitleBar.Fullscreen"
2243                android:process=":ui">
2244        </activity>
2245        <activity android:name="com.android.internal.app.DisableCarModeActivity"
2246                android:theme="@style/Theme.NoDisplay"
2247                android:excludeFromRecents="true"
2248                android:process=":ui">
2249        </activity>
2250
2251        <activity android:name="android.accounts.ChooseAccountActivity"
2252                android:excludeFromRecents="true"
2253                android:exported="true"
2254                android:theme="@android:style/Theme.Holo.Dialog"
2255                android:label="@string/choose_account_label"
2256                android:process=":ui">
2257        </activity>
2258
2259        <activity android:name="android.accounts.ChooseTypeAndAccountActivity"
2260                android:excludeFromRecents="true"
2261                android:exported="true"
2262                android:theme="@android:style/Theme.Holo.Dialog"
2263                android:label="@string/choose_account_label"
2264                android:process=":ui">
2265        </activity>
2266
2267        <activity android:name="android.accounts.ChooseAccountTypeActivity"
2268                android:excludeFromRecents="true"
2269                android:theme="@android:style/Theme.Holo.Dialog"
2270                android:label="@string/choose_account_label"
2271                android:process=":ui">
2272        </activity>
2273
2274        <activity android:name="android.accounts.CantAddAccountActivity"
2275                android:excludeFromRecents="true"
2276                android:exported="true"
2277                android:theme="@android:style/Theme.Holo.Dialog"
2278                android:label="@string/error_message_title"
2279                android:process=":ui">
2280        </activity>
2281
2282        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
2283                android:excludeFromRecents="true"
2284                android:exported="true"
2285                android:theme="@android:style/Theme.Holo.DialogWhenLarge"
2286                android:process=":ui">
2287        </activity>
2288
2289        <activity android:name="android.content.SyncActivityTooManyDeletes"
2290               android:theme="@android:style/Theme.Holo.Dialog"
2291               android:label="@string/sync_too_many_deletes"
2292               android:process=":ui">
2293        </activity>
2294
2295        <activity android:name="com.android.server.ShutdownActivity"
2296            android:permission="android.permission.SHUTDOWN"
2297            android:excludeFromRecents="true">
2298            <intent-filter>
2299                <action android:name="android.intent.action.ACTION_REQUEST_SHUTDOWN" />
2300                <category android:name="android.intent.category.DEFAULT" />
2301            </intent-filter>
2302            <intent-filter>
2303                <action android:name="android.intent.action.REBOOT" />
2304                <category android:name="android.intent.category.DEFAULT" />
2305            </intent-filter>
2306        </activity>
2307
2308        <activity android:name="com.android.internal.app.NetInitiatedActivity"
2309                android:theme="@style/Theme.Holo.Dialog.Alert"
2310                android:excludeFromRecents="true"
2311                android:process=":ui">
2312        </activity>
2313
2314        <receiver android:name="com.android.server.BootReceiver"
2315                android:primaryUserOnly="true">
2316            <intent-filter>
2317                <action android:name="android.intent.action.BOOT_COMPLETED" />
2318            </intent-filter>
2319        </receiver>
2320
2321        <receiver android:name="com.android.server.updates.CertPinInstallReceiver" >
2322            <intent-filter>
2323                <action android:name="android.intent.action.UPDATE_PINS" />
2324            </intent-filter>
2325        </receiver>
2326
2327        <receiver android:name="com.android.server.updates.IntentFirewallInstallReceiver" >
2328            <intent-filter>
2329                <action android:name="android.intent.action.UPDATE_INTENT_FIREWALL" />
2330            </intent-filter>
2331        </receiver>
2332
2333        <receiver android:name="com.android.server.updates.SmsShortCodesInstallReceiver" >
2334            <intent-filter>
2335                <action android:name="android.intent.action.UPDATE_SMS_SHORT_CODES" />
2336            </intent-filter>
2337        </receiver>
2338
2339        <receiver android:name="com.android.server.updates.TZInfoInstallReceiver" >
2340            <intent-filter>
2341                <action android:name="android.intent.action.UPDATE_TZINFO" />
2342            </intent-filter>
2343        </receiver>
2344
2345        <receiver android:name="com.android.server.updates.SELinuxPolicyInstallReceiver" >
2346            <intent-filter>
2347                <action android:name="android.intent.action.UPDATE_SEPOLICY" />
2348            </intent-filter>
2349        </receiver>
2350
2351        <receiver android:name="com.android.server.MasterClearReceiver"
2352            android:permission="android.permission.MASTER_CLEAR"
2353            android:priority="100" >
2354            <intent-filter>
2355                <!-- For Checkin, Settings, etc.: action=MASTER_CLEAR -->
2356                <action android:name="android.intent.action.MASTER_CLEAR" />
2357
2358                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
2359                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
2360                <category android:name="android.intent.category.MASTER_CLEAR" />
2361            </intent-filter>
2362        </receiver>
2363
2364        <service android:name="com.android.internal.os.storage.ExternalStorageFormatter"
2365            android:permission="android.permission.MASTER_CLEAR"
2366            android:exported="true" />
2367
2368        <service android:name="android.hardware.location.GeofenceHardwareService"
2369            android:permission="android.permission.LOCATION_HARDWARE"
2370            android:exported="false" />
2371    </application>
2372
2373</manifest>
2374