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