AndroidManifest.xml revision b0381688b8556f4f0a86bb534c8bc52275f16d12
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" 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.UID_REMOVED" />
46    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
47    <protected-broadcast android:name="android.intent.action.LOCALE_CHANGED" />
48    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
49    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
50    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
51    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
52    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
53    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
54    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
55    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
56    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_FULL" />
57    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
58    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
59    <protected-broadcast android:name="android.intent.action.REBOOT" />
60    <protected-broadcast android:name="android.intent.action.DOCK_EVENT" />
61    <protected-broadcast android:name="android.intent.action.MASTER_CLEAR_NOTIFICATION" />
62
63    <protected-broadcast android:name="android.app.action.ENTER_CAR_MODE" />
64    <protected-broadcast android:name="android.app.action.EXIT_CAR_MODE" />
65    <protected-broadcast android:name="android.app.action.ENTER_DESK_MODE" />
66    <protected-broadcast android:name="android.app.action.EXIT_DESK_MODE" />
67
68    <protected-broadcast android:name="android.backup.intent.RUN" />
69    <protected-broadcast android:name="android.backup.intent.CLEAR" />
70    <protected-broadcast android:name="android.backup.intent.INIT" />
71
72    <protected-broadcast android:name="android.bluetooth.adapter.action.STATE_CHANGED" />
73    <protected-broadcast android:name="android.bluetooth.adapter.action.SCAN_MODE_CHANGED" />
74    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_STARTED" />
75    <protected-broadcast android:name="android.bluetooth.adapter.action.DISCOVERY_FINISHED" />
76    <protected-broadcast android:name="android.bluetooth.adapter.action.LOCAL_NAME_CHANGED" />
77    <protected-broadcast android:name="android.bluetooth.device.action.FOUND" />
78    <protected-broadcast android:name="android.bluetooth.device.action.DISAPPEARED" />
79    <protected-broadcast android:name="android.bluetooth.device.action.CLASS_CHANGED" />
80    <protected-broadcast android:name="android.bluetooth.device.action.ACL_CONNECTED" />
81    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECT_REQUESTED" />
82    <protected-broadcast android:name="android.bluetooth.device.action.ACL_DISCONNECTED" />
83    <protected-broadcast android:name="android.bluetooth.device.action.NAME_CHANGED" />
84    <protected-broadcast android:name="android.bluetooth.device.action.BOND_STATE_CHANGED" />
85    <protected-broadcast android:name="android.bluetooth.device.action.NAME_FAILED" />
86    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_REQUEST" />
87    <protected-broadcast android:name="android.bluetooth.device.action.PAIRING_CANCEL" />
88
89    <protected-broadcast android:name="android.hardware.usb.action.USB_STATE" />
90    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
91    <protected-broadcast android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />
92    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
93    <protected-broadcast android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
94
95    <protected-broadcast android:name="android.nfc.action.LLCP_LINK_STATE_CHANGED" />
96    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_ON_DETECTED" />
97    <protected-broadcast android:name="com.android.nfc_extras.action.RF_FIELD_OFF_DETECTED" />
98    <protected-broadcast android:name="com.android.nfc_extras.action.AID_SELECTED" />
99
100    <protected-broadcast android:name="android.nfc.action.TRANSACTION_DETECTED" />
101    <protected-broadcast android:name="android.intent.action.CLEAR_DNS_CACHE" />
102    <protected-broadcast android:name="android.intent.action.PROXY_CHANGE" />
103
104
105    <!-- ====================================== -->
106    <!-- Permissions for things that cost money -->
107    <!-- ====================================== -->
108    <eat-comment />
109
110    <!-- Used for permissions that can be used to make the user spend money
111         without their direct involvement.  For example, this is the group
112         for permissions that allow you to directly place phone calls,
113         directly send SMS messages, etc. -->
114    <permission-group android:name="android.permission-group.COST_MONEY"
115        android:label="@string/permgrouplab_costMoney"
116        android:description="@string/permgroupdesc_costMoney" />
117
118    <!-- Allows an application to send SMS messages. -->
119    <permission android:name="android.permission.SEND_SMS"
120        android:permissionGroup="android.permission-group.COST_MONEY"
121        android:protectionLevel="dangerous"
122        android:label="@string/permlab_sendSms"
123        android:description="@string/permdesc_sendSms" />
124
125    <!-- Allows an application to send SMS messages via the Messaging app with no user
126         input or confirmation.
127         @hide -->
128    <permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"
129        android:permissionGroup="android.permission-group.COST_MONEY"
130        android:protectionLevel="signatureOrSystem"
131        android:label="@string/permlab_sendSmsNoConfirmation"
132        android:description="@string/permdesc_sendSmsNoConfirmation" />
133
134    <!-- Allows an application to initiate a phone call without going through
135         the Dialer user interface for the user to confirm the call
136         being placed. -->
137    <permission android:name="android.permission.CALL_PHONE"
138        android:permissionGroup="android.permission-group.COST_MONEY"
139        android:protectionLevel="dangerous"
140        android:label="@string/permlab_callPhone"
141        android:description="@string/permdesc_callPhone" />
142
143    <!-- ================================== -->
144    <!-- Permissions for accessing messages -->
145    <!-- ================================== -->
146    <eat-comment />
147
148    <!-- Used for permissions that allow an application to send messages
149         on behalf of the user or intercept messages being received by the
150         user.  This is primarily intended for SMS/MMS messaging, such as
151         receiving or reading an MMS. -->
152    <permission-group android:name="android.permission-group.MESSAGES"
153        android:label="@string/permgrouplab_messages"
154        android:description="@string/permgroupdesc_messages" />
155
156    <!-- Allows an application to monitor incoming SMS messages, to record
157         or perform processing on them. -->
158    <permission android:name="android.permission.RECEIVE_SMS"
159        android:permissionGroup="android.permission-group.MESSAGES"
160        android:protectionLevel="dangerous"
161        android:label="@string/permlab_receiveSms"
162        android:description="@string/permdesc_receiveSms" />
163
164    <!-- Allows an application to monitor incoming MMS messages, to record
165         or perform processing on them. -->
166    <permission android:name="android.permission.RECEIVE_MMS"
167        android:permissionGroup="android.permission-group.MESSAGES"
168        android:protectionLevel="dangerous"
169        android:label="@string/permlab_receiveMms"
170        android:description="@string/permdesc_receiveMms" />
171
172    <!-- Allows an application to receive emergency cell broadcast messages,
173         to record or display them to the user. Reserved for system apps.
174         @hide Pending API council approval -->
175    <permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"
176        android:permissionGroup="android.permission-group.MESSAGES"
177        android:protectionLevel="signatureOrSystem"
178        android:label="@string/permlab_receiveEmergencyBroadcast"
179        android:description="@string/permdesc_receiveEmergencyBroadcast" />
180
181    <!-- Allows an application to read SMS messages. -->
182    <permission android:name="android.permission.READ_SMS"
183        android:permissionGroup="android.permission-group.MESSAGES"
184        android:protectionLevel="dangerous"
185        android:label="@string/permlab_readSms"
186        android:description="@string/permdesc_readSms" />
187
188    <!-- Allows an application to write SMS messages. -->
189    <permission android:name="android.permission.WRITE_SMS"
190        android:permissionGroup="android.permission-group.MESSAGES"
191        android:protectionLevel="dangerous"
192        android:label="@string/permlab_writeSms"
193        android:description="@string/permdesc_writeSms" />
194
195    <!-- Allows an application to monitor incoming WAP push messages. -->
196    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
197        android:permissionGroup="android.permission-group.MESSAGES"
198        android:protectionLevel="dangerous"
199        android:label="@string/permlab_receiveWapPush"
200        android:description="@string/permdesc_receiveWapPush" />
201
202    <!-- =============================================================== -->
203    <!-- Permissions for accessing personal info (contacts and calendar) -->
204    <!-- =============================================================== -->
205    <eat-comment />
206
207    <!-- Used for permissions that provide access to the user's private data,
208         such as contacts, calendar events, e-mail messages, etc.  This includes
209         both reading and writing of this data (which should generally be
210         expressed as two distinct permissions). -->
211    <permission-group android:name="android.permission-group.PERSONAL_INFO"
212        android:label="@string/permgrouplab_personalInfo"
213        android:description="@string/permgroupdesc_personalInfo" />
214
215    <!-- Allows an application to read the user's contacts data. -->
216    <permission android:name="android.permission.READ_CONTACTS"
217        android:permissionGroup="android.permission-group.PERSONAL_INFO"
218        android:protectionLevel="dangerous"
219        android:label="@string/permlab_readContacts"
220        android:description="@string/permdesc_readContacts" />
221
222    <!-- Allows an application to write (but not read) the user's
223         contacts data. -->
224    <permission android:name="android.permission.WRITE_CONTACTS"
225        android:permissionGroup="android.permission-group.PERSONAL_INFO"
226        android:protectionLevel="dangerous"
227        android:label="@string/permlab_writeContacts"
228        android:description="@string/permdesc_writeContacts" />
229
230
231    <!-- Allows an application to read the user's personal profile data. -->
232    <permission android:name="android.permission.READ_PROFILE"
233        android:permissionGroup="android.permission-group.PERSONAL_INFO"
234        android:protectionLevel="dangerous"
235        android:label="@string/permlab_readProfile"
236        android:description="@string/permdesc_readProfile" />
237
238    <!-- Allows an application to write (but not read) the user's
239         personal profile data. -->
240    <permission android:name="android.permission.WRITE_PROFILE"
241        android:permissionGroup="android.permission-group.PERSONAL_INFO"
242        android:protectionLevel="dangerous"
243        android:label="@string/permlab_writeProfile"
244        android:description="@string/permdesc_writeProfile" />
245
246    <!-- Allows an application to read the user's calendar data. -->
247    <permission android:name="android.permission.READ_CALENDAR"
248        android:permissionGroup="android.permission-group.PERSONAL_INFO"
249        android:protectionLevel="dangerous"
250        android:label="@string/permlab_readCalendar"
251        android:description="@string/permdesc_readCalendar" />
252
253    <!-- Allows an application to write (but not read) the user's
254         calendar data. -->
255    <permission android:name="android.permission.WRITE_CALENDAR"
256        android:permissionGroup="android.permission-group.PERSONAL_INFO"
257        android:protectionLevel="dangerous"
258        android:label="@string/permlab_writeCalendar"
259        android:description="@string/permdesc_writeCalendar" />
260
261    <!-- Allows an application to read the user dictionary. This should
262         really only be required by an IME, or a dictionary editor like
263         the Settings app.
264         @hide Pending API council approval -->
265    <permission android:name="android.permission.READ_USER_DICTIONARY"
266        android:permissionGroup="android.permission-group.PERSONAL_INFO"
267        android:protectionLevel="dangerous"
268        android:label="@string/permlab_readDictionary"
269        android:description="@string/permdesc_readDictionary" />
270
271    <!-- Allows an application to write to the user dictionary.
272         @hide Pending API council approval -->
273    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
274        android:permissionGroup="android.permission-group.PERSONAL_INFO"
275        android:protectionLevel="normal"
276        android:label="@string/permlab_writeDictionary"
277        android:description="@string/permdesc_writeDictionary" />
278
279    <!-- Allows an application to read (but not write) the user's
280        browsing history and bookmarks. -->
281    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
282        android:permissionGroup="android.permission-group.PERSONAL_INFO"
283        android:label="@string/permlab_readHistoryBookmarks"
284        android:description="@string/permdesc_readHistoryBookmarks"
285        android:protectionLevel="dangerous" />
286
287    <!-- Allows an application to write (but not read) the user's
288        browsing history and bookmarks. -->
289    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
290        android:permissionGroup="android.permission-group.PERSONAL_INFO"
291        android:label="@string/permlab_writeHistoryBookmarks"
292        android:description="@string/permdesc_writeHistoryBookmarks"
293        android:protectionLevel="dangerous" />
294
295    <!-- Allows an application to broadcast an Intent to set an alarm for the
296         user. -->
297    <permission android:name="com.android.alarm.permission.SET_ALARM"
298        android:permissionGroup="android.permission-group.PERSONAL_INFO"
299        android:label="@string/permlab_setAlarm"
300        android:description="@string/permdesc_setAlarm"
301        android:protectionLevel="normal" />
302
303   <!-- Allows an application to add voicemails into the system. -->
304    <permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"
305        android:permissionGroup="android.permission-group.PERSONAL_INFO"
306        android:protectionLevel="dangerous"
307        android:label="@string/permlab_addVoicemail"
308        android:description="@string/permdesc_addVoicemail" />
309
310    <!-- ======================================= -->
311    <!-- Permissions for accessing location info -->
312    <!-- ======================================= -->
313    <eat-comment />
314
315    <!-- Used for permissions that allow access to the user's current
316         location. -->
317    <permission-group android:name="android.permission-group.LOCATION"
318        android:label="@string/permgrouplab_location"
319        android:description="@string/permgroupdesc_location" />
320
321    <!-- Allows an application to access fine (e.g., GPS) location -->
322    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
323        android:permissionGroup="android.permission-group.LOCATION"
324        android:protectionLevel="dangerous"
325        android:label="@string/permlab_accessFineLocation"
326        android:description="@string/permdesc_accessFineLocation" />
327
328    <!-- Allows an application to access coarse (e.g., Cell-ID, WiFi) location -->
329    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
330        android:permissionGroup="android.permission-group.LOCATION"
331        android:protectionLevel="dangerous"
332        android:label="@string/permlab_accessCoarseLocation"
333        android:description="@string/permdesc_accessCoarseLocation" />
334
335    <!-- Allows an application to create mock location providers for testing -->
336    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
337        android:permissionGroup="android.permission-group.LOCATION"
338        android:protectionLevel="dangerous"
339        android:label="@string/permlab_accessMockLocation"
340        android:description="@string/permdesc_accessMockLocation" />
341
342    <!-- Allows an application to access extra location provider commands -->
343    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
344        android:permissionGroup="android.permission-group.LOCATION"
345        android:protectionLevel="normal"
346        android:label="@string/permlab_accessLocationExtraCommands"
347        android:description="@string/permdesc_accessLocationExtraCommands" />
348
349    <!-- Allows an application to install a location provider into the Location Manager -->
350    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
351        android:protectionLevel="signatureOrSystem"
352        android:label="@string/permlab_installLocationProvider"
353        android:description="@string/permdesc_installLocationProvider" />
354
355    <!-- ======================================= -->
356    <!-- Permissions for accessing networks -->
357    <!-- ======================================= -->
358    <eat-comment />
359
360    <!-- Used for permissions that provide access to networking services.  The
361         main permission here is internet access, but this is also an
362         appropriate group for accessing or modifying any network configuration
363         or other related network operations. -->
364    <permission-group android:name="android.permission-group.NETWORK"
365        android:label="@string/permgrouplab_network"
366        android:description="@string/permgroupdesc_network" />
367
368    <!-- Allows applications to open network sockets. -->
369    <permission android:name="android.permission.INTERNET"
370        android:permissionGroup="android.permission-group.NETWORK"
371        android:protectionLevel="dangerous"
372        android:description="@string/permdesc_createNetworkSockets"
373        android:label="@string/permlab_createNetworkSockets" />
374
375    <!-- Allows applications to access information about networks -->
376    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
377        android:permissionGroup="android.permission-group.NETWORK"
378        android:protectionLevel="normal"
379        android:description="@string/permdesc_accessNetworkState"
380        android:label="@string/permlab_accessNetworkState" />
381
382    <!-- Allows applications to access information about Wi-Fi networks -->
383    <permission android:name="android.permission.ACCESS_WIFI_STATE"
384        android:permissionGroup="android.permission-group.NETWORK"
385        android:protectionLevel="normal"
386        android:description="@string/permdesc_accessWifiState"
387        android:label="@string/permlab_accessWifiState" />
388
389    <!-- Allows applications to connect to paired bluetooth devices -->
390    <permission android:name="android.permission.BLUETOOTH"
391        android:permissionGroup="android.permission-group.NETWORK"
392        android:protectionLevel="dangerous"
393        android:description="@string/permdesc_bluetooth"
394        android:label="@string/permlab_bluetooth" />
395
396    <!-- Allows applications to perform I/O operations over NFC -->
397    <permission android:name="android.permission.NFC"
398        android:permissionGroup="android.permission-group.NETWORK"
399        android:protectionLevel="dangerous"
400        android:description="@string/permdesc_nfc"
401        android:label="@string/permlab_nfc" />
402
403    <!-- Allows an application to use SIP service -->
404    <permission android:name="android.permission.USE_SIP"
405        android:permissionGroup="android.permission-group.NETWORK"
406        android:protectionLevel="dangerous"
407        android:description="@string/permdesc_use_sip"
408        android:label="@string/permlab_use_sip" />
409
410    <!-- Allows applications to call into AccountAuthenticators. Only
411    the system can get this permission. -->
412    <permission android:name="android.permission.ACCOUNT_MANAGER"
413        android:permissionGroup="android.permission-group.ACCOUNTS"
414        android:protectionLevel="signature"
415        android:description="@string/permdesc_accountManagerService"
416        android:label="@string/permlab_accountManagerService" />
417
418    <!-- Allows an internal user to use privaledged ConnectivityManager
419    APIs.
420        @hide -->
421    <permission android:name="android.permission.CONNECTIVITY_INTERNAL"
422        android:permissionGroup="android.permission-group.NETWORK"
423        android:protectionLevel="signatureOrSystem" />
424
425    <!-- ================================== -->
426    <!-- Permissions for accessing accounts -->
427    <!-- ================================== -->
428    <eat-comment />
429
430    <!-- Permissions for direct access to the accounts managed
431         by the Account Manager. -->
432    <permission-group android:name="android.permission-group.ACCOUNTS"
433        android:label="@string/permgrouplab_accounts"
434        android:description="@string/permgroupdesc_accounts" />
435
436    <!-- Allows access to the list of accounts in the Accounts Service -->
437    <permission android:name="android.permission.GET_ACCOUNTS"
438        android:permissionGroup="android.permission-group.ACCOUNTS"
439        android:protectionLevel="normal"
440        android:description="@string/permdesc_getAccounts"
441        android:label="@string/permlab_getAccounts" />
442
443    <!-- Allows an application to act as an AccountAuthenticator for
444         the AccountManager -->
445    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
446        android:permissionGroup="android.permission-group.ACCOUNTS"
447        android:protectionLevel="dangerous"
448        android:label="@string/permlab_authenticateAccounts"
449        android:description="@string/permdesc_authenticateAccounts" />
450
451    <!-- Allows an application to request authtokens from the AccountManager -->
452    <permission android:name="android.permission.USE_CREDENTIALS"
453        android:permissionGroup="android.permission-group.ACCOUNTS"
454        android:protectionLevel="dangerous"
455        android:label="@string/permlab_useCredentials"
456        android:description="@string/permdesc_useCredentials" />
457
458    <!-- Allows an application to manage the list of accounts in the AccountManager -->
459    <permission android:name="android.permission.MANAGE_ACCOUNTS"
460        android:permissionGroup="android.permission-group.ACCOUNTS"
461        android:protectionLevel="dangerous"
462        android:label="@string/permlab_manageAccounts"
463        android:description="@string/permdesc_manageAccounts" />
464
465    <!-- ================================== -->
466    <!-- Permissions for accessing hardware -->
467    <!-- ================================== -->
468    <eat-comment />
469
470    <!-- Used for permissions that provide direct access to the hardware on
471         the device.  This includes audio, the camera, vibrator, etc. -->
472    <permission-group android:name="android.permission-group.HARDWARE_CONTROLS"
473        android:label="@string/permgrouplab_hardwareControls"
474        android:description="@string/permgroupdesc_hardwareControls" />
475
476    <!-- Allows an application to modify global audio settings -->
477    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
478        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
479        android:protectionLevel="dangerous"
480        android:label="@string/permlab_modifyAudioSettings"
481        android:description="@string/permdesc_modifyAudioSettings" />
482
483    <!-- Allows an application to record audio -->
484    <permission android:name="android.permission.RECORD_AUDIO"
485        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
486        android:protectionLevel="dangerous"
487        android:label="@string/permlab_recordAudio"
488        android:description="@string/permdesc_recordAudio" />
489
490    <!-- Required to be able to access the camera device.
491         <p>This will automatically enforce the <a
492         href="{@docRoot}guide/topics/manifest/uses-feature-element.html">{@code
493         &lt;uses-feature&gt;}</a> manifest element for <em>all</em> camera features.
494         If you do not require all camera features or can properly operate if a camera
495         is not available, then you must modify your manifest as appropriate in order to
496         install on devices that don't support all camera features.</p> -->
497    <permission android:name="android.permission.CAMERA"
498        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
499        android:protectionLevel="dangerous"
500        android:label="@string/permlab_camera"
501        android:description="@string/permdesc_camera" />
502
503    <!-- Allows access to the vibrator -->
504    <permission android:name="android.permission.VIBRATE"
505        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
506        android:protectionLevel="normal"
507        android:label="@string/permlab_vibrate"
508        android:description="@string/permdesc_vibrate" />
509
510    <!-- Allows access to the flashlight -->
511    <permission android:name="android.permission.FLASHLIGHT"
512        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
513        android:protectionLevel="normal"
514        android:label="@string/permlab_flashlight"
515        android:description="@string/permdesc_flashlight" />
516
517    <!-- Allows an application to manage preferences and permissions for USB devices
518         @hide -->
519    <permission android:name="android.permission.MANAGE_USB"
520        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
521        android:protectionLevel="signatureOrSystem"
522        android:label="@string/permlab_manageUsb"
523        android:description="@string/permdesc_manageUsb" />
524
525    <!-- Allows an application to access the MTP USB kernel driver.
526         For use only by the device side MTP implementation.
527         @hide -->
528    <permission android:name="android.permission.ACCESS_MTP"
529        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
530        android:protectionLevel="signatureOrSystem"
531        android:label="@string/permlab_accessMtp"
532        android:description="@string/permdesc_accessMtp" />
533
534    <!-- Allows access to hardware peripherals.  Intended only for hardware testing -->
535    <permission android:name="android.permission.HARDWARE_TEST"
536        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
537        android:protectionLevel="signature"
538        android:label="@string/permlab_hardware_test"
539        android:description="@string/permdesc_hardware_test" />
540
541    <!-- Allows access to configure network interfaces, configure/use IPSec, etc.
542         @hide -->
543    <permission android:name="android.permission.NET_ADMIN"
544        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
545        android:protectionLevel="signature" />
546
547    <!-- =========================================== -->
548    <!-- Permissions associated with telephony state -->
549    <!-- =========================================== -->
550    <eat-comment />
551
552    <!-- Used for permissions that are associated with accessing and modifyign
553         telephony state: intercepting outgoing calls, reading
554         and modifying the phone state.  Note that
555         placing phone calls is not in this group, since that is in the
556         more important "takin' yer moneys" group. -->
557    <permission-group android:name="android.permission-group.PHONE_CALLS"
558        android:label="@string/permgrouplab_phoneCalls"
559        android:description="@string/permgroupdesc_phoneCalls" />
560
561    <!-- Allows an application to monitor, modify, or abort outgoing
562         calls. -->
563    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
564        android:permissionGroup="android.permission-group.PHONE_CALLS"
565        android:protectionLevel="dangerous"
566        android:label="@string/permlab_processOutgoingCalls"
567        android:description="@string/permdesc_processOutgoingCalls" />
568
569    <!-- Allows modification of the telephony state - power on, mmi, etc.
570         Does not include placing calls. -->
571    <permission android:name="android.permission.MODIFY_PHONE_STATE"
572        android:permissionGroup="android.permission-group.PHONE_CALLS"
573        android:protectionLevel="signatureOrSystem"
574        android:label="@string/permlab_modifyPhoneState"
575        android:description="@string/permdesc_modifyPhoneState" />
576
577    <!-- Allows read only access to phone state. -->
578    <permission android:name="android.permission.READ_PHONE_STATE"
579        android:permissionGroup="android.permission-group.PHONE_CALLS"
580        android:protectionLevel="dangerous"
581        android:label="@string/permlab_readPhoneState"
582        android:description="@string/permdesc_readPhoneState" />
583
584    <!-- ================================== -->
585    <!-- Permissions for sdcard interaction -->
586    <!-- ================================== -->
587    <eat-comment />
588
589    <!-- Group of permissions that are related to SD card access. -->
590    <permission-group android:name="android.permission-group.STORAGE"
591        android:label="@string/permgrouplab_storage"
592        android:description="@string/permgroupdesc_storage" />
593
594    <!-- Allows an application to write to external storage -->
595    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
596        android:permissionGroup="android.permission-group.STORAGE"
597        android:label="@string/permlab_sdcardWrite"
598        android:description="@string/permdesc_sdcardWrite"
599        android:protectionLevel="dangerous" />
600
601    <!-- Allows an application to write to internal media storage
602         @hide  -->
603    <permission android:name="android.permission.WRITE_MEDIA_STORAGE"
604        android:permissionGroup="android.permission-group.STORAGE"
605        android:label="@string/permlab_mediaStorageWrite"
606        android:description="@string/permdesc_mediaStorageWrite"
607        android:protectionLevel="signatureOrSystem" />
608
609    <!-- ============================================ -->
610    <!-- Permissions for low-level system interaction -->
611    <!-- ============================================ -->
612    <eat-comment />
613
614    <!-- Group of permissions that are related to system APIs.  Many
615         of these are not permissions the user will be expected to understand,
616         and such permissions should generally be marked as "normal" protection
617         level so they don't get displayed.  This can also, however, be used
618         for miscellaneous features that provide access to the operating system,
619         such as writing the global system settings. -->
620    <permission-group android:name="android.permission-group.SYSTEM_TOOLS"
621        android:label="@string/permgrouplab_systemTools"
622        android:description="@string/permgroupdesc_systemTools" />
623
624    <!-- Allows an application to read or write the system settings. -->
625    <permission android:name="android.permission.WRITE_SETTINGS"
626        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
627        android:protectionLevel="dangerous"
628        android:label="@string/permlab_writeSettings"
629        android:description="@string/permdesc_writeSettings" />
630
631    <!-- Allows an application to read or write the secure system settings. -->
632    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
633        android:protectionLevel="signatureOrSystem"
634        android:label="@string/permlab_writeSecureSettings"
635        android:description="@string/permdesc_writeSecureSettings" />
636
637    <!-- Allows an application to modify the Google service map. -->
638    <permission android:name="android.permission.WRITE_GSERVICES"
639        android:protectionLevel="signatureOrSystem"
640        android:label="@string/permlab_writeGservices"
641        android:description="@string/permdesc_writeGservices" />
642
643    <!-- Allows an application to expand or collapse the status bar. -->
644    <permission android:name="android.permission.EXPAND_STATUS_BAR"
645        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
646        android:protectionLevel="normal"
647        android:label="@string/permlab_expandStatusBar"
648        android:description="@string/permdesc_expandStatusBar" />
649
650    <!-- Allows an application to get information about the currently
651         or recently running tasks: a thumbnail representation of the tasks,
652         what activities are running in it, etc. -->
653    <permission android:name="android.permission.GET_TASKS"
654        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
655        android:protectionLevel="dangerous"
656        android:label="@string/permlab_getTasks"
657        android:description="@string/permdesc_getTasks" />
658
659    <!-- Allows an application to change the Z-order of tasks -->
660    <permission android:name="android.permission.REORDER_TASKS"
661        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
662        android:protectionLevel="dangerous"
663        android:label="@string/permlab_reorderTasks"
664        android:description="@string/permdesc_reorderTasks" />
665
666    <!-- @hide Allows an application to change to remove/kill tasks -->
667    <permission android:name="android.permission.REMOVE_TASKS"
668        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
669        android:protectionLevel="signature"
670        android:label="@string/permlab_removeTasks"
671        android:description="@string/permdesc_removeTasks" />
672
673    <!-- Allows an application to modify the current configuration, such
674         as locale. -->
675    <permission android:name="android.permission.CHANGE_CONFIGURATION"
676        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
677        android:protectionLevel="dangerous"
678        android:label="@string/permlab_changeConfiguration"
679        android:description="@string/permdesc_changeConfiguration" />
680
681    <!-- @deprecated The {@link android.app.ActivityManager#restartPackage}
682        API is no longer supported. -->
683    <permission android:name="android.permission.RESTART_PACKAGES"
684        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
685        android:protectionLevel="normal"
686        android:label="@string/permlab_killBackgroundProcesses"
687        android:description="@string/permdesc_killBackgroundProcesses" />
688
689    <!-- Allows an application to call
690        {@link android.app.ActivityManager#killBackgroundProcesses}. -->
691    <permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"
692        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
693        android:protectionLevel="normal"
694        android:label="@string/permlab_killBackgroundProcesses"
695        android:description="@string/permdesc_killBackgroundProcesses" />
696
697    <!-- Allows an application to call
698        {@link android.app.ActivityManager#forceStopPackage}.
699        @hide -->
700    <permission android:name="android.permission.FORCE_STOP_PACKAGES"
701        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
702        android:protectionLevel="signature"
703        android:label="@string/permlab_forceStopPackages"
704        android:description="@string/permdesc_forceStopPackages" />
705
706    <!-- Allows an application to retrieve state dump information from system
707         services. -->
708    <permission android:name="android.permission.DUMP"
709        android:permissionGroup="android.permission-group.PERSONAL_INFO"
710        android:protectionLevel="signatureOrSystem"
711        android:label="@string/permlab_dump"
712        android:description="@string/permdesc_dump" />
713
714    <!-- @hide Allows an application to retrieve the content of the active window
715         An active window is the window that has fired an accessibility event. -->
716    <permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"
717        android:permissionGroup="android.permission-group.PERSONAL_INFO"
718        android:protectionLevel="signatureOrSystem"
719        android:label="@string/permlab_retrieve_window_content"
720        android:description="@string/permdesc_retrieve_window_content" />
721
722    <!-- Allows an application to open windows using the type
723         {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
724         shown on top of all other applications.  Very few applications
725         should use this permission; these windows are intended for
726         system-level interaction with the user. -->
727    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
728        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
729        android:protectionLevel="dangerous"
730        android:label="@string/permlab_systemAlertWindow"
731        android:description="@string/permdesc_systemAlertWindow" />
732
733    <!-- Modify the global animation scaling factor. -->
734    <permission android:name="android.permission.SET_ANIMATION_SCALE"
735        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
736        android:protectionLevel="dangerous"
737        android:label="@string/permlab_setAnimationScale"
738        android:description="@string/permdesc_setAnimationScale" />
739
740    <!-- @deprecated This functionality will be removed in the future; please do
741         not use.
742
743         Allow an application to make its activities persistent. -->
744    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
745        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
746        android:protectionLevel="dangerous"
747        android:label="@string/permlab_persistentActivity"
748        android:description="@string/permdesc_persistentActivity" />
749
750    <!-- Allows an application to find out the space used by any package. -->
751    <permission android:name="android.permission.GET_PACKAGE_SIZE"
752        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
753        android:protectionLevel="normal"
754        android:label="@string/permlab_getPackageSize"
755        android:description="@string/permdesc_getPackageSize" />
756
757    <!-- @deprecated No longer useful, see
758         {@link android.content.pm.PackageManager#addPackageToPreferred}
759         for details. -->
760    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
761        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
762        android:protectionLevel="signature"
763        android:label="@string/permlab_setPreferredApplications"
764        android:description="@string/permdesc_setPreferredApplications" />
765
766    <!-- Allows an application to receive the
767         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
768         broadcast after the system finishes booting.  If you don't
769         request this permission, you will not receive the broadcast at
770         that time.  Though holding this permission does not have any
771         security implications, it can have a negative impact on the
772         user experience by increasing the amount of time it takes the
773         system to start and allowing applications to have themselves
774         running without the user being aware of them.  As such, you must
775         explicitly declare your use of this facility to make that visible
776         to the user. -->
777    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
778        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
779        android:protectionLevel="normal"
780        android:label="@string/permlab_receiveBootCompleted"
781        android:description="@string/permdesc_receiveBootCompleted" />
782
783    <!-- Allows an application to broadcast sticky intents.  These are
784         broadcasts whose data is held by the system after being finished,
785         so that clients can quickly retrieve that data without having
786         to wait for the next broadcast. -->
787    <permission android:name="android.permission.BROADCAST_STICKY"
788        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
789        android:protectionLevel="normal"
790        android:label="@string/permlab_broadcastSticky"
791        android:description="@string/permdesc_broadcastSticky" />
792
793    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
794         from dimming -->
795    <permission android:name="android.permission.WAKE_LOCK"
796        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
797        android:protectionLevel="dangerous"
798        android:label="@string/permlab_wakeLock"
799        android:description="@string/permdesc_wakeLock" />
800
801    <!-- Allows applications to set the wallpaper -->
802    <permission android:name="android.permission.SET_WALLPAPER"
803        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
804        android:protectionLevel="normal"
805        android:label="@string/permlab_setWallpaper"
806        android:description="@string/permdesc_setWallpaper" />
807
808    <!-- Allows applications to set the wallpaper hints -->
809    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
810        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
811        android:protectionLevel="normal"
812        android:label="@string/permlab_setWallpaperHints"
813        android:description="@string/permdesc_setWallpaperHints" />
814
815    <!-- Allows applications to set the system time -->
816    <permission android:name="android.permission.SET_TIME"
817        android:protectionLevel="signatureOrSystem"
818        android:label="@string/permlab_setTime"
819        android:description="@string/permdesc_setTime" />
820
821    <!-- Allows applications to set the system time zone -->
822    <permission android:name="android.permission.SET_TIME_ZONE"
823        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
824        android:protectionLevel="dangerous"
825        android:label="@string/permlab_setTimeZone"
826        android:description="@string/permdesc_setTimeZone" />
827
828    <!-- Allows mounting and unmounting file systems for removable storage. -->
829    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
830        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
831        android:protectionLevel="dangerous"
832        android:label="@string/permlab_mount_unmount_filesystems"
833        android:description="@string/permdesc_mount_unmount_filesystems" />
834
835    <!-- Allows formatting file systems for removable storage. -->
836    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
837        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
838        android:protectionLevel="dangerous"
839        android:label="@string/permlab_mount_format_filesystems"
840        android:description="@string/permdesc_mount_format_filesystems" />
841
842    <!-- Allows access to ASEC non-destructive API calls
843         @hide  -->
844    <permission android:name="android.permission.ASEC_ACCESS"
845        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
846        android:protectionLevel="signature"
847        android:label="@string/permlab_asec_access"
848        android:description="@string/permdesc_asec_access" />
849
850    <!-- Allows creation of ASEC volumes
851         @hide  -->
852    <permission android:name="android.permission.ASEC_CREATE"
853        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
854        android:protectionLevel="signature"
855        android:label="@string/permlab_asec_create"
856        android:description="@string/permdesc_asec_create" />
857
858    <!-- Allows destruction of ASEC volumes
859         @hide  -->
860    <permission android:name="android.permission.ASEC_DESTROY"
861        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
862        android:protectionLevel="signature"
863        android:label="@string/permlab_asec_destroy"
864        android:description="@string/permdesc_asec_destroy" />
865
866    <!-- Allows mount / unmount of ASEC volumes
867         @hide  -->
868    <permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"
869        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
870        android:protectionLevel="signature"
871        android:label="@string/permlab_asec_mount_unmount"
872        android:description="@string/permdesc_asec_mount_unmount" />
873
874    <!-- Allows rename of ASEC volumes
875         @hide  -->
876    <permission android:name="android.permission.ASEC_RENAME"
877        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
878        android:protectionLevel="signature"
879        android:label="@string/permlab_asec_rename"
880        android:description="@string/permdesc_asec_rename" />
881
882    <!-- Allows applications to disable the keyguard -->
883    <permission android:name="android.permission.DISABLE_KEYGUARD"
884        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
885        android:protectionLevel="dangerous"
886        android:description="@string/permdesc_disableKeyguard"
887        android:label="@string/permlab_disableKeyguard" />
888
889    <!-- Allows applications to read the sync settings -->
890    <permission android:name="android.permission.READ_SYNC_SETTINGS"
891        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
892        android:protectionLevel="normal"
893        android:description="@string/permdesc_readSyncSettings"
894        android:label="@string/permlab_readSyncSettings" />
895
896    <!-- Allows applications to write the sync settings -->
897    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
898        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
899        android:protectionLevel="dangerous"
900        android:description="@string/permdesc_writeSyncSettings"
901        android:label="@string/permlab_writeSyncSettings" />
902
903    <!-- Allows applications to read the sync stats -->
904    <permission android:name="android.permission.READ_SYNC_STATS"
905        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
906        android:protectionLevel="normal"
907        android:description="@string/permdesc_readSyncStats"
908        android:label="@string/permlab_readSyncStats" />
909
910    <!-- Allows applications to write the apn settings -->
911    <permission android:name="android.permission.WRITE_APN_SETTINGS"
912                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
913                android:protectionLevel="dangerous"
914                android:description="@string/permdesc_writeApnSettings"
915                android:label="@string/permlab_writeApnSettings" />
916
917    <!-- Allows an application to allow access the subscribed feeds
918         ContentProvider. -->
919    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
920        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
921        android:label="@string/permlab_subscribedFeedsRead"
922        android:description="@string/permdesc_subscribedFeedsRead"
923        android:protectionLevel="normal" />
924    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
925        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
926        android:label="@string/permlab_subscribedFeedsWrite"
927        android:description="@string/permdesc_subscribedFeedsWrite"
928        android:protectionLevel="dangerous" />
929
930    <!-- Allows applications to change network connectivity state -->
931    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
932        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
933        android:protectionLevel="dangerous"
934        android:description="@string/permdesc_changeNetworkState"
935        android:label="@string/permlab_changeNetworkState" />
936
937    <!-- Allows applications to change Wi-Fi connectivity state -->
938    <permission android:name="android.permission.CHANGE_WIFI_STATE"
939        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
940        android:protectionLevel="dangerous"
941        android:description="@string/permdesc_changeWifiState"
942        android:label="@string/permlab_changeWifiState" />
943
944    <!-- Allows applications to enter Wi-Fi Multicast mode -->
945    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
946        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
947        android:protectionLevel="dangerous"
948        android:description="@string/permdesc_changeWifiMulticastState"
949        android:label="@string/permlab_changeWifiMulticastState" />
950
951    <!-- Allows applications to discover and pair bluetooth devices -->
952    <permission android:name="android.permission.BLUETOOTH_ADMIN"
953        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
954        android:protectionLevel="dangerous"
955        android:description="@string/permdesc_bluetoothAdmin"
956        android:label="@string/permlab_bluetoothAdmin" />
957
958    <!-- Allows an application to clear the caches of all installed
959         applications on the device.  -->
960    <permission android:name="android.permission.CLEAR_APP_CACHE"
961        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
962        android:protectionLevel="dangerous"
963        android:label="@string/permlab_clearAppCache"
964        android:description="@string/permdesc_clearAppCache" />
965
966    <!-- Allows an application to read the low-level system log files.
967         Log entries can contain the user's private information,
968         which is why this permission is 'dangerous'. -->
969    <permission android:name="android.permission.READ_LOGS"
970        android:permissionGroup="android.permission-group.PERSONAL_INFO"
971        android:protectionLevel="dangerous"
972        android:label="@string/permlab_readLogs"
973        android:description="@string/permdesc_readLogs" />
974
975    <!-- ========================================= -->
976    <!-- Permissions for special development tools -->
977    <!-- ========================================= -->
978    <eat-comment />
979
980    <!-- Group of permissions that are related to development features.  These
981         are not permissions that should appear in normal applications; they
982         protect APIs that are intended only to be used for development
983         purposes. -->
984    <permission-group android:name="android.permission-group.DEVELOPMENT_TOOLS"
985        android:label="@string/permgrouplab_developmentTools"
986        android:description="@string/permgroupdesc_developmentTools" />
987
988    <!-- Configure an application for debugging. -->
989    <permission android:name="android.permission.SET_DEBUG_APP"
990        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
991        android:protectionLevel="dangerous"
992        android:label="@string/permlab_setDebugApp"
993        android:description="@string/permdesc_setDebugApp" />
994
995    <!-- Allows an application to set the maximum number of (not needed)
996         application processes that can be running. -->
997    <permission android:name="android.permission.SET_PROCESS_LIMIT"
998        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
999        android:protectionLevel="dangerous"
1000        android:label="@string/permlab_setProcessLimit"
1001        android:description="@string/permdesc_setProcessLimit" />
1002
1003    <!-- Allows an application to control whether activities are immediately
1004         finished when put in the background. -->
1005    <permission android:name="android.permission.SET_ALWAYS_FINISH"
1006        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1007        android:protectionLevel="dangerous"
1008        android:label="@string/permlab_setAlwaysFinish"
1009        android:description="@string/permdesc_setAlwaysFinish" />
1010
1011    <!-- Allow an application to request that a signal be sent to all persistent processes -->
1012    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
1013        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
1014        android:protectionLevel="dangerous"
1015        android:label="@string/permlab_signalPersistentProcesses"
1016        android:description="@string/permdesc_signalPersistentProcesses" />
1017
1018    <!-- ==================================== -->
1019    <!-- Private (signature-only) permissions -->
1020    <!-- ==================================== -->
1021    <eat-comment />
1022
1023    <!-- Allows applications to RW to diagnostic resources. -->
1024    <permission android:name="android.permission.DIAGNOSTIC"
1025        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1026        android:protectionLevel="signature"
1027        android:description="@string/permdesc_diagnostic"
1028        android:label="@string/permlab_diagnostic" />
1029
1030    <!-- Allows an application to open, close, or disable the status bar
1031         and its icons. -->
1032    <permission android:name="android.permission.STATUS_BAR"
1033        android:label="@string/permlab_statusBar"
1034        android:description="@string/permdesc_statusBar"
1035        android:protectionLevel="signatureOrSystem" />
1036
1037    <!-- Allows an application to be the status bar.  Currently used only by SystemUI.apk
1038    @hide -->
1039    <permission android:name="android.permission.STATUS_BAR_SERVICE"
1040        android:label="@string/permlab_statusBarService"
1041        android:description="@string/permdesc_statusBarService"
1042        android:protectionLevel="signature" />
1043
1044    <!-- Allows an application to force a BACK operation on whatever is the
1045         top activity. -->
1046    <permission android:name="android.permission.FORCE_BACK"
1047        android:label="@string/permlab_forceBack"
1048        android:description="@string/permdesc_forceBack"
1049        android:protectionLevel="signature" />
1050
1051    <!-- Allows an application to update device statistics. Not for
1052         use by third party apps. -->
1053    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
1054        android:label="@string/permlab_batteryStats"
1055        android:description="@string/permdesc_batteryStats"
1056        android:protectionLevel="signatureOrSystem" />
1057
1058    <!-- Allows an application to open windows that are for use by parts
1059         of the system user interface.  Not for use by third party apps. -->
1060    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
1061        android:label="@string/permlab_internalSystemWindow"
1062        android:description="@string/permdesc_internalSystemWindow"
1063        android:protectionLevel="signature" />
1064
1065    <!-- Allows an application to manage (create, destroy,
1066         Z-order) application tokens in the window manager.  This is only
1067         for use by the system. -->
1068    <permission android:name="android.permission.MANAGE_APP_TOKENS"
1069        android:label="@string/permlab_manageAppTokens"
1070        android:description="@string/permdesc_manageAppTokens"
1071        android:protectionLevel="signature" />
1072
1073    <!-- Allows an application to inject user events (keys, touch, trackball)
1074         into the event stream and deliver them to ANY window.  Without this
1075         permission, you can only deliver events to windows in your own process.
1076         Very few applications should need to use this permission. -->
1077    <permission android:name="android.permission.INJECT_EVENTS"
1078        android:label="@string/permlab_injectEvents"
1079        android:description="@string/permdesc_injectEvents"
1080        android:protectionLevel="signature" />
1081
1082    <!-- Allows an application to watch and control how activities are
1083         started globally in the system.  Only for is in debugging
1084         (usually the monkey command). -->
1085    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
1086        android:label="@string/permlab_runSetActivityWatcher"
1087        android:description="@string/permdesc_runSetActivityWatcher"
1088        android:protectionLevel="signature" />
1089
1090    <!-- Allows an application to call the activity manager shutdown() API
1091         to put the higher-level system there into a shutdown state.
1092         @hide -->
1093    <permission android:name="android.permission.SHUTDOWN"
1094        android:label="@string/permlab_shutdown"
1095        android:description="@string/permdesc_shutdown"
1096        android:protectionLevel="signatureOrSystem" />
1097
1098    <!-- Allows an application to tell the activity manager to temporarily
1099         stop application switches, putting it into a special mode that
1100         prevents applications from immediately switching away from some
1101         critical UI such as the home screen.
1102         @hide -->
1103    <permission android:name="android.permission.STOP_APP_SWITCHES"
1104        android:label="@string/permlab_stopAppSwitches"
1105        android:description="@string/permdesc_stopAppSwitches"
1106        android:protectionLevel="signatureOrSystem" />
1107
1108    <!-- Allows an application to retrieve the current state of keys and
1109         switches.  This is only for use by the system.-->
1110    <permission android:name="android.permission.READ_INPUT_STATE"
1111        android:label="@string/permlab_readInputState"
1112        android:description="@string/permdesc_readInputState"
1113        android:protectionLevel="signature" />
1114
1115    <!-- Must be required by an {@link android.inputmethodservice.InputMethodService},
1116         to ensure that only the system can bind to it. -->
1117    <permission android:name="android.permission.BIND_INPUT_METHOD"
1118        android:label="@string/permlab_bindInputMethod"
1119        android:description="@string/permdesc_bindInputMethod"
1120        android:protectionLevel="signature" />
1121
1122    <!-- Must be required by a TextService (e.g. SpellCheckerService)
1123         to ensure that only the system can bind to it. -->
1124    <permission android:name="android.permission.BIND_TEXT_SERVICE"
1125        android:label="@string/permlab_bindTextService"
1126        android:description="@string/permdesc_bindTextService"
1127        android:protectionLevel="signature" />
1128
1129    <!-- Must be required by an {@link android.net.VpnService},
1130         to ensure that only the system can bind to it. -->
1131    <permission android:name="android.permission.BIND_VPN_SERVICE"
1132        android:label="@string/permlab_bindVpnService"
1133        android:description="@string/permdesc_bindVpnService"
1134        android:protectionLevel="signature" />
1135
1136    <!-- Must be required by a {@link android.service.wallpaper.WallpaperService},
1137         to ensure that only the system can bind to it. -->
1138    <permission android:name="android.permission.BIND_WALLPAPER"
1139        android:label="@string/permlab_bindWallpaper"
1140        android:description="@string/permdesc_bindWallpaper"
1141        android:protectionLevel="signatureOrSystem" />
1142
1143    <!-- Must be required by device administration receiver, to ensure that only the
1144         system can interact with it. -->
1145    <permission android:name="android.permission.BIND_DEVICE_ADMIN"
1146        android:label="@string/permlab_bindDeviceAdmin"
1147        android:description="@string/permdesc_bindDeviceAdmin"
1148        android:protectionLevel="signature" />
1149
1150    <!-- Allows low-level access to setting the orientation (actually
1151         rotation) of the screen.  Not for use by normal applications. -->
1152    <permission android:name="android.permission.SET_ORIENTATION"
1153        android:label="@string/permlab_setOrientation"
1154        android:description="@string/permdesc_setOrientation"
1155        android:protectionLevel="signature" />
1156
1157    <!-- Allows low-level access to setting the pointer speed.
1158         Not for use by normal applications. -->
1159    <permission android:name="android.permission.SET_POINTER_SPEED"
1160        android:label="@string/permlab_setPointerSpeed"
1161        android:description="@string/permdesc_setPointerSpeed"
1162        android:protectionLevel="signature" />
1163
1164    <!-- Allows an application to install packages. -->
1165    <permission android:name="android.permission.INSTALL_PACKAGES"
1166        android:label="@string/permlab_installPackages"
1167        android:description="@string/permdesc_installPackages"
1168        android:protectionLevel="signatureOrSystem" />
1169
1170    <!-- Allows an application to clear user data -->
1171    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
1172        android:label="@string/permlab_clearAppUserData"
1173        android:description="@string/permdesc_clearAppUserData"
1174        android:protectionLevel="signature" />
1175
1176    <!-- Allows an application to delete cache files. -->
1177    <permission android:name="android.permission.DELETE_CACHE_FILES"
1178        android:label="@string/permlab_deleteCacheFiles"
1179        android:description="@string/permdesc_deleteCacheFiles"
1180        android:protectionLevel="signatureOrSystem" />
1181
1182    <!-- Allows an application to delete packages. -->
1183    <permission android:name="android.permission.DELETE_PACKAGES"
1184        android:label="@string/permlab_deletePackages"
1185        android:description="@string/permdesc_deletePackages"
1186        android:protectionLevel="signatureOrSystem" />
1187
1188    <!-- Allows an application to move location of installed package.
1189         @hide -->
1190    <permission android:name="android.permission.MOVE_PACKAGE"
1191        android:label="@string/permlab_movePackage"
1192        android:description="@string/permdesc_movePackage"
1193        android:protectionLevel="signatureOrSystem" />
1194
1195    <!-- Allows an application to change whether an application component (other than its own) is
1196         enabled or not. -->
1197    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
1198        android:label="@string/permlab_changeComponentState"
1199        android:description="@string/permdesc_changeComponentState"
1200        android:protectionLevel="signatureOrSystem" />
1201
1202    <!-- Allows an application to use SurfaceFlinger's low level features -->
1203    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
1204        android:label="@string/permlab_accessSurfaceFlinger"
1205        android:description="@string/permdesc_accessSurfaceFlinger"
1206        android:protectionLevel="signature" />
1207
1208    <!-- Allows an application to take screen shots and more generally
1209         get access to the frame buffer data -->
1210    <permission android:name="android.permission.READ_FRAME_BUFFER"
1211        android:label="@string/permlab_readFrameBuffer"
1212        android:description="@string/permdesc_readFrameBuffer"
1213        android:protectionLevel="signatureOrSystem" />
1214
1215    <!-- Required to be able to disable the device (very dangerous!). -->
1216    <permission android:name="android.permission.BRICK"
1217        android:label="@string/permlab_brick"
1218        android:description="@string/permdesc_brick"
1219        android:protectionLevel="signature" />
1220
1221    <!-- Required to be able to reboot the device. -->
1222    <permission android:name="android.permission.REBOOT"
1223        android:label="@string/permlab_reboot"
1224        android:description="@string/permdesc_reboot"
1225        android:protectionLevel="signatureOrSystem" />
1226
1227   <!-- Allows low-level access to power management -->
1228    <permission android:name="android.permission.DEVICE_POWER"
1229        android:label="@string/permlab_devicePower"
1230        android:description="@string/permdesc_devicePower"
1231        android:protectionLevel="signature" />
1232
1233    <!-- Run as a manufacturer test application, running as the root user.
1234         Only available when the device is running in manufacturer test mode. -->
1235    <permission android:name="android.permission.FACTORY_TEST"
1236        android:label="@string/permlab_factoryTest"
1237        android:description="@string/permdesc_factoryTest"
1238        android:protectionLevel="signature" />
1239
1240    <!-- Allows an application to broadcast a notification that an application
1241         package has been removed. -->
1242    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
1243        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1244        android:label="@string/permlab_broadcastPackageRemoved"
1245        android:description="@string/permdesc_broadcastPackageRemoved"
1246        android:protectionLevel="signature" />
1247
1248    <!-- Allows an application to broadcast an SMS receipt notification -->
1249    <permission android:name="android.permission.BROADCAST_SMS"
1250        android:permissionGroup="android.permission-group.MESSAGES"
1251        android:label="@string/permlab_broadcastSmsReceived"
1252        android:description="@string/permdesc_broadcastSmsReceived"
1253        android:protectionLevel="signature" />
1254
1255    <!-- Allows an application to broadcast a WAP PUSH receipt notification -->
1256    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
1257        android:permissionGroup="android.permission-group.MESSAGES"
1258        android:label="@string/permlab_broadcastWapPush"
1259        android:description="@string/permdesc_broadcastWapPush"
1260        android:protectionLevel="signature" />
1261
1262    <permission android:name="android.permission.MASTER_CLEAR"
1263        android:label="@string/permlab_masterClear"
1264        android:description="@string/permdesc_masterClear"
1265        android:protectionLevel="signatureOrSystem" />
1266
1267    <!-- Allows an application to call any phone number, including emergency
1268         numbers, without going through the Dialer user interface for the user
1269         to confirm the call being placed. -->
1270    <permission android:name="android.permission.CALL_PRIVILEGED"
1271        android:label="@string/permlab_callPrivileged"
1272        android:description="@string/permdesc_callPrivileged"
1273        android:protectionLevel="signatureOrSystem" />
1274
1275    <!-- Allows an application to perform CDMA OTA provisioning @hide -->
1276    <permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"
1277        android:label="@string/permlab_performCdmaProvisioning"
1278        android:description="@string/permdesc_performCdmaProvisioning"
1279        android:protectionLevel="signatureOrSystem" />
1280
1281    <!-- Allows enabling/disabling location update notifications from
1282         the radio. Not for use by normal applications. -->
1283    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
1284        android:label="@string/permlab_locationUpdates"
1285        android:description="@string/permdesc_locationUpdates"
1286        android:protectionLevel="signatureOrSystem" />
1287
1288    <!-- Allows read/write access to the "properties" table in the checkin
1289         database, to change values that get uploaded. -->
1290    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
1291        android:label="@string/permlab_checkinProperties"
1292        android:description="@string/permdesc_checkinProperties"
1293        android:protectionLevel="signatureOrSystem" />
1294
1295    <!-- Allows an application to collect component usage
1296         statistics @hide -->
1297    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
1298        android:label="@string/permlab_pkgUsageStats"
1299        android:description="@string/permdesc_pkgUsageStats"
1300        android:protectionLevel="signatureOrSystem" />
1301
1302    <!-- Allows an application to collect battery statistics -->
1303    <permission android:name="android.permission.BATTERY_STATS"
1304        android:label="@string/permlab_batteryStats"
1305        android:description="@string/permdesc_batteryStats"
1306        android:protectionLevel="normal" />
1307
1308    <!-- Allows an application to control the backup and restore process
1309         @hide pending API council -->
1310    <permission android:name="android.permission.BACKUP"
1311        android:label="@string/permlab_backup"
1312        android:description="@string/permdesc_backup"
1313        android:protectionLevel="signatureOrSystem" />
1314
1315    <!-- Allows a package to launch the secure full-backup confirmation UI.
1316         ONLY the system process may hold this permission.
1317         @hide -->
1318    <permission android:name="android.permission.CONFIRM_FULL_BACKUP"
1319        android:label="@string/permlab_confirm_full_backup"
1320        android:description="@string/permdesc_confirm_full_backup"
1321        android:protectionLevel="signature" />
1322
1323    <!-- Must be required by a {@link android.widget.RemoteViewsService},
1324         to ensure that only the system can bind to it. -->
1325    <permission android:name="android.permission.BIND_REMOTEVIEWS"
1326        android:label="@string/permlab_bindRemoteViews"
1327        android:description="@string/permdesc_bindRemoteViews"
1328        android:protectionLevel="signatureOrSystem" />
1329
1330    <!-- Allows an application to tell the AppWidget service which application
1331         can access AppWidget's data.  The normal user flow is that a user
1332         picks an AppWidget to go into a particular host, thereby giving that
1333         host application access to the private data from the AppWidget app.
1334         An application that has this permission should honor that contract.
1335         Very few applications should need to use this permission. -->
1336    <permission android:name="android.permission.BIND_APPWIDGET"
1337        android:permissionGroup="android.permission-group.PERSONAL_INFO"
1338        android:label="@string/permlab_bindGadget"
1339        android:description="@string/permdesc_bindGadget"
1340        android:protectionLevel="signatureOrSystem" />
1341
1342    <!-- Allows applications to change the background data setting
1343         @hide pending API council -->
1344    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
1345        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1346        android:protectionLevel="signature"
1347        android:description="@string/permdesc_changeBackgroundDataSetting"
1348        android:label="@string/permlab_changeBackgroundDataSetting" />
1349
1350    <!-- This permission can be used on content providers to allow the global
1351         search system to access their data.  Typically it used when the
1352         provider has some permissions protecting it (which global search
1353         would not be expected to hold), and added as a read-only permission
1354         to the path in the provider where global search queries are
1355         performed.  This permission can not be held by regular applications;
1356         it is used by applications to protect themselves from everyone else
1357         besides global search. -->
1358    <permission android:name="android.permission.GLOBAL_SEARCH"
1359        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1360        android:protectionLevel="signatureOrSystem" />
1361
1362    <!-- Internal permission protecting access to the global search
1363         system: ensures that only the system can access the provider
1364         to perform queries (since this otherwise provides unrestricted
1365         access to a variety of content providers), and to write the
1366         search statistics (to keep applications from gaming the source
1367         ranking).
1368         @hide -->
1369    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
1370        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1371        android:protectionLevel="signature" />
1372
1373    <!-- Allows applications to set a live wallpaper.
1374         @hide XXX Change to signature once the picker is moved to its
1375         own apk as Ghod Intended. -->
1376    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
1377        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1378        android:protectionLevel="signatureOrSystem" />
1379
1380    <!-- Allow an application to read and write the cache partition.
1381         @hide -->
1382    <permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"
1383        android:label="@string/permlab_cache_filesystem"
1384        android:description="@string/permdesc_cache_filesystem"
1385        android:protectionLevel="signatureOrSystem" />
1386
1387    <!-- Must be required by default container service so that only
1388         the system can bind to it and use it to copy
1389         protected data to secure containers or files
1390         accessible to the system.
1391         @hide -->
1392    <permission android:name="android.permission.COPY_PROTECTED_DATA"
1393        android:label="@string/permlab_copyProtectedData"
1394        android:description="@string/permlab_copyProtectedData"
1395        android:protectionLevel="signature" />
1396
1397    <!-- Internal permission protecting access to the encryption methods
1398        @hide
1399    -->
1400    <permission android:name="android.permission.CRYPT_KEEPER"
1401        android:protectionLevel="signatureOrSystem" />
1402
1403    <!-- Allows an application to read historical network usage for
1404         specific networks and applications. @hide -->
1405    <permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"
1406        android:label="@string/permlab_readNetworkUsageHistory"
1407        android:description="@string/permdesc_readNetworkUsageHistory"
1408        android:protectionLevel="signatureOrSystem" />
1409
1410    <!-- Allows an application to manage network policies (such as warning and disable
1411         limits) and to define application-specific rules. @hide -->
1412    <permission android:name="android.permission.MANAGE_NETWORK_POLICY"
1413        android:label="@string/permlab_manageNetworkPolicy"
1414        android:description="@string/permdesc_manageNetworkPolicy"
1415        android:protectionLevel="signature" />
1416
1417    <!-- Allows an application to account its network traffic against other UIDs. Used
1418         by system services like download manager and media server. Not for use by
1419         third party apps. @hide -->
1420    <permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"
1421        android:label="@string/permlab_modifyNetworkAccounting"
1422        android:description="@string/permdesc_modifyNetworkAccounting"
1423        android:protectionLevel="signatureOrSystem" />
1424
1425    <!-- C2DM permission.
1426         @hide Used internally.
1427     -->
1428    <permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"
1429          android:protectionLevel="signature" />
1430    <uses-permission android:name="android.intent.category.MASTER_CLEAR.permission.C2D_MESSAGE"/>
1431
1432    <!-- The system process is explicitly the only one allowed to launch the
1433         confirmation UI for full backup/restore -->
1434    <uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"/>
1435
1436    <application android:process="system"
1437                 android:persistent="true"
1438                 android:hasCode="false"
1439                 android:label="@string/android_system_label"
1440                 android:allowClearUserData="false"
1441                 android:backupAgent="com.android.server.SystemBackupAgent"
1442                 android:killAfterRestore="false"
1443                 android:icon="@drawable/ic_launcher_android">
1444        <activity android:name="com.android.internal.app.ChooserActivity"
1445                android:theme="@style/Theme.Holo.Dialog.Alert"
1446                android:finishOnCloseSystemDialogs="true"
1447                android:excludeFromRecents="true"
1448                android:multiprocess="true">
1449            <intent-filter>
1450                <action android:name="android.intent.action.CHOOSER" />
1451                <category android:name="android.intent.category.DEFAULT" />
1452            </intent-filter>
1453        </activity>
1454        <activity android:name="com.android.internal.app.HeavyWeightSwitcherActivity"
1455                android:theme="@style/Theme.Holo.Dialog"
1456                android:label="@string/heavy_weight_switcher_title"
1457                android:finishOnCloseSystemDialogs="true"
1458                android:excludeFromRecents="true">
1459        </activity>
1460        <activity android:name="com.android.internal.app.PlatLogoActivity"
1461                android:theme="@style/Theme.Wallpaper.NoTitleBar.Fullscreen">
1462        </activity>
1463        <activity android:name="com.android.internal.app.DisableCarModeActivity"
1464                android:theme="@style/Theme.NoDisplay"
1465                android:excludeFromRecents="true">
1466        </activity>
1467        <activity android:name="com.android.internal.app.RingtonePickerActivity"
1468                android:theme="@style/Theme.Holo.Dialog.Alert"
1469                android:excludeFromRecents="true"
1470                android:multiprocess="true">
1471            <intent-filter>
1472                <action android:name="android.intent.action.RINGTONE_PICKER" />
1473                <category android:name="android.intent.category.DEFAULT" />
1474            </intent-filter>
1475        </activity>
1476
1477        <activity android:name="android.accounts.ChooseAccountActivity"
1478                android:excludeFromRecents="true"
1479                android:exported="true"
1480                android:theme="@android:style/Theme.Holo.Dialog"
1481                android:label="@string/choose_account_label">
1482        </activity>
1483
1484        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
1485                android:excludeFromRecents="true"
1486                android:exported="true"
1487                android:theme="@android:style/Theme.Holo.DialogWhenLarge">
1488        </activity>
1489
1490        <activity android:name="android.content.SyncActivityTooManyDeletes"
1491               android:theme="@android:style/Theme.Holo.Dialog"
1492               android:label="@string/sync_too_many_deletes">
1493        </activity>
1494
1495        <activity android:name="com.android.server.ShutdownActivity"
1496            android:permission="android.permission.SHUTDOWN"
1497            android:excludeFromRecents="true">
1498            <intent-filter>
1499                <action android:name="android.intent.action.ACTION_REQUEST_SHUTDOWN" />
1500                <category android:name="android.intent.category.DEFAULT" />
1501            </intent-filter>
1502            <intent-filter>
1503                <action android:name="android.intent.action.REBOOT" />
1504                <category android:name="android.intent.category.DEFAULT" />
1505            </intent-filter>
1506        </activity>
1507
1508        <activity android:name="com.android.internal.app.NetInitiatedActivity"
1509                android:theme="@style/Theme.Holo.Dialog.Alert"
1510                android:excludeFromRecents="true">
1511        </activity>
1512
1513        <receiver android:name="com.android.server.BootReceiver" >
1514            <intent-filter>
1515                <action android:name="android.intent.action.BOOT_COMPLETED" />
1516            </intent-filter>
1517        </receiver>
1518
1519        <receiver android:name="com.android.server.MasterClearReceiver"
1520            android:permission="android.permission.MASTER_CLEAR"
1521            android:priority="100" >
1522            <intent-filter>
1523                <!-- For Checkin, Settings, etc.: action=MASTER_CLEAR -->
1524                <action android:name="android.intent.action.MASTER_CLEAR" />
1525
1526                <!-- MCS always uses REMOTE_INTENT: category=MASTER_CLEAR -->
1527                <action android:name="com.google.android.c2dm.intent.RECEIVE" />
1528                <category android:name="android.intent.category.MASTER_CLEAR" />
1529            </intent-filter>
1530        </receiver>
1531
1532        <service android:name="com.android.internal.os.storage.ExternalStorageFormatter"
1533            android:permission="android.permission.MASTER_CLEAR"
1534            android:exported="true" />
1535
1536    </application>
1537
1538</manifest>
1539