AndroidManifest.xml revision 4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3
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.PACKAGE_REMOVED" />
39    <protected-broadcast android:name="android.intent.action.PACKAGE_CHANGED" />
40    <protected-broadcast android:name="android.intent.action.PACKAGE_RESTARTED" />
41    <protected-broadcast android:name="android.intent.action.PACKAGE_DATA_CLEARED" />
42    <protected-broadcast android:name="android.intent.action.UID_REMOVED" />
43    <protected-broadcast android:name="android.intent.action.CONFIGURATION_CHANGED" />
44    <protected-broadcast android:name="android.intent.action.BATTERY_CHANGED" />
45    <protected-broadcast android:name="android.intent.action.BATTERY_LOW" />
46    <protected-broadcast android:name="android.intent.action.BATTERY_OKAY" />
47    <protected-broadcast android:name="android.intent.action.ACTION_POWER_CONNECTED" />
48    <protected-broadcast android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
49    <protected-broadcast android:name="android.intent.action.ACTION_SHUTDOWN" />
50    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_LOW" />
51    <protected-broadcast android:name="android.intent.action.DEVICE_STORAGE_OK" />
52    <protected-broadcast android:name="android.intent.action.AIRPLANE_MODE" />
53    <protected-broadcast android:name="android.intent.action.NEW_OUTGOING_CALL" />
54    <protected-broadcast android:name="android.intent.action.REBOOT" />
55
56    <!-- ====================================== -->
57    <!-- Permissions for things that cost money -->
58    <!-- ====================================== -->
59    <eat-comment />
60
61    <!-- Used for permissions that can be used to make the user spend money
62         without their direct involvement.  For example, this is the group
63         for permissions that allow you to directly place phone calls,
64         directly send SMS messages, etc. -->
65    <permission-group android:name="android.permission-group.COST_MONEY"
66        android:label="@string/permgrouplab_costMoney"
67        android:description="@string/permgroupdesc_costMoney" />
68
69    <!-- Allows an application to send SMS messages. -->
70    <permission android:name="android.permission.SEND_SMS"
71        android:permissionGroup="android.permission-group.COST_MONEY"
72        android:protectionLevel="dangerous"
73        android:label="@string/permlab_sendSms"
74        android:description="@string/permdesc_sendSms" />
75
76    <!-- Allows an application to initiate a phone call without going through
77         the Dialer user interface for the user to confirm the call
78         being placed. -->
79    <permission android:name="android.permission.CALL_PHONE"
80        android:permissionGroup="android.permission-group.COST_MONEY"
81        android:protectionLevel="dangerous"
82        android:label="@string/permlab_callPhone"
83        android:description="@string/permdesc_callPhone" />
84
85    <!-- ================================== -->
86    <!-- Permissions for accessing messages -->
87    <!-- ================================== -->
88    <eat-comment />
89
90    <!-- Used for permissions that allow an application to send messages
91         on behalf of the user or intercept messages being received by the
92         user.  This is primarily intended for SMS/MMS messaging, such as
93         receiving or reading an MMS. -->
94    <permission-group android:name="android.permission-group.MESSAGES"
95        android:label="@string/permgrouplab_messages"
96        android:description="@string/permgroupdesc_messages" />
97
98    <!-- Allows an application to monitor incoming SMS messages, to record
99         or perform processing on them. -->
100    <permission android:name="android.permission.RECEIVE_SMS"
101        android:permissionGroup="android.permission-group.MESSAGES"
102        android:protectionLevel="dangerous"
103        android:label="@string/permlab_receiveSms"
104        android:description="@string/permdesc_receiveSms" />
105
106    <!-- Allows an application to monitor incoming MMS messages, to record
107         or perform processing on them. -->
108    <permission android:name="android.permission.RECEIVE_MMS"
109        android:permissionGroup="android.permission-group.MESSAGES"
110        android:protectionLevel="dangerous"
111        android:label="@string/permlab_receiveMms"
112        android:description="@string/permdesc_receiveMms" />
113
114    <!-- Allows an application to read SMS messages. -->
115    <permission android:name="android.permission.READ_SMS"
116        android:permissionGroup="android.permission-group.MESSAGES"
117        android:protectionLevel="dangerous"
118        android:label="@string/permlab_readSms"
119        android:description="@string/permdesc_readSms" />
120
121    <!-- Allows an application to write SMS messages. -->
122    <permission android:name="android.permission.WRITE_SMS"
123        android:permissionGroup="android.permission-group.MESSAGES"
124        android:protectionLevel="dangerous"
125        android:label="@string/permlab_writeSms"
126        android:description="@string/permdesc_writeSms" />
127
128    <!-- Allows an application to monitor incoming WAP push messages. -->
129    <permission android:name="android.permission.RECEIVE_WAP_PUSH"
130        android:permissionGroup="android.permission-group.MESSAGES"
131        android:protectionLevel="dangerous"
132        android:label="@string/permlab_receiveWapPush"
133        android:description="@string/permdesc_receiveWapPush" />
134
135    <!-- =============================================================== -->
136    <!-- Permissions for accessing personal info (contacts and calendar) -->
137    <!-- =============================================================== -->
138    <eat-comment />
139
140    <!-- Used for permissions that provide access to the user's private data,
141         such as contacts, calendar events, e-mail messages, etc.  This includes
142         both reading and writing of this data (which should generally be
143         expressed as two distinct permissions). -->
144    <permission-group android:name="android.permission-group.PERSONAL_INFO"
145        android:label="@string/permgrouplab_personalInfo"
146        android:description="@string/permgroupdesc_personalInfo" />
147
148    <!-- Allows an application to read the user's contacts data. -->
149    <permission android:name="android.permission.READ_CONTACTS"
150        android:permissionGroup="android.permission-group.PERSONAL_INFO"
151        android:protectionLevel="dangerous"
152        android:label="@string/permlab_readContacts"
153        android:description="@string/permdesc_readContacts" />
154
155    <!-- Allows an application to write (but not read) the user's
156         contacts data. -->
157    <permission android:name="android.permission.WRITE_CONTACTS"
158        android:permissionGroup="android.permission-group.PERSONAL_INFO"
159        android:protectionLevel="dangerous"
160        android:label="@string/permlab_writeContacts"
161        android:description="@string/permdesc_writeContacts" />
162
163    <!-- Allows an application to read the owner's data. -->
164    <permission android:name="android.permission.READ_OWNER_DATA"
165        android:permissionGroup="android.permission-group.PERSONAL_INFO"
166        android:protectionLevel="dangerous"
167        android:label="@string/permlab_readOwnerData"
168        android:description="@string/permdesc_readOwnerData" />
169
170    <!-- Allows an application to write (but not read) the owner's data. -->
171    <permission android:name="android.permission.WRITE_OWNER_DATA"
172        android:permissionGroup="android.permission-group.PERSONAL_INFO"
173        android:protectionLevel="dangerous"
174        android:label="@string/permlab_writeOwnerData"
175        android:description="@string/permdesc_writeOwnerData" />
176
177    <!-- Allows an application to read the user's calendar data. -->
178    <permission android:name="android.permission.READ_CALENDAR"
179        android:permissionGroup="android.permission-group.PERSONAL_INFO"
180        android:protectionLevel="dangerous"
181        android:label="@string/permlab_readCalendar"
182        android:description="@string/permdesc_readCalendar" />
183
184    <!-- Allows an application to write (but not read) the user's
185         calendar data. -->
186    <permission android:name="android.permission.WRITE_CALENDAR"
187        android:permissionGroup="android.permission-group.PERSONAL_INFO"
188        android:protectionLevel="dangerous"
189        android:label="@string/permlab_writeCalendar"
190        android:description="@string/permdesc_writeCalendar" />
191
192    <!-- Allows an application to read the user dictionary. This should
193         really only be required by an IME, or a dictionary editor like
194         the Settings app.
195         @hide Pending API council approval -->
196    <permission android:name="android.permission.READ_USER_DICTIONARY"
197        android:permissionGroup="android.permission-group.PERSONAL_INFO"
198        android:protectionLevel="dangerous"
199        android:label="@string/permlab_readDictionary"
200        android:description="@string/permdesc_readDictionary" />
201
202    <!-- Allows an application to write to the user dictionary.
203         @hide Pending API council approval -->
204    <permission android:name="android.permission.WRITE_USER_DICTIONARY"
205        android:permissionGroup="android.permission-group.PERSONAL_INFO"
206        android:protectionLevel="normal"
207        android:label="@string/permlab_writeDictionary"
208        android:description="@string/permdesc_writeDictionary" />
209
210    <!-- Allows an application to read (but not write) the user's
211        browsing history and bookmarks. -->
212    <permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"
213        android:permissionGroup="android.permission-group.PERSONAL_INFO"
214        android:label="@string/permlab_readHistoryBookmarks"
215        android:description="@string/permdesc_readHistoryBookmarks"
216        android:protectionLevel="dangerous" />
217
218    <!-- Allows an application to write (but not read) the user's
219        browsing history and bookmarks. -->
220    <permission android:name="com.android.browser.permission.WRITE_HISTORY_BOOKMARKS"
221        android:permissionGroup="android.permission-group.PERSONAL_INFO"
222        android:label="@string/permlab_writeHistoryBookmarks"
223        android:description="@string/permdesc_writeHistoryBookmarks"
224        android:protectionLevel="dangerous" />
225
226    <!-- ======================================= -->
227    <!-- Permissions for accessing location info -->
228    <!-- ======================================= -->
229    <eat-comment />
230
231    <!-- Used for permissions that allow access to the user's current
232         location. -->
233    <permission-group android:name="android.permission-group.LOCATION"
234        android:label="@string/permgrouplab_location"
235        android:description="@string/permgroupdesc_location" />
236
237    <!-- Allows an application to access fine (e.g., GPS) location -->
238    <permission android:name="android.permission.ACCESS_FINE_LOCATION"
239        android:permissionGroup="android.permission-group.LOCATION"
240        android:protectionLevel="dangerous"
241        android:label="@string/permlab_accessFineLocation"
242        android:description="@string/permdesc_accessFineLocation" />
243
244    <!-- Allows an application to access coarse (e.g., Cell-ID, WiFi) location -->
245    <permission android:name="android.permission.ACCESS_COARSE_LOCATION"
246        android:permissionGroup="android.permission-group.LOCATION"
247        android:protectionLevel="dangerous"
248        android:label="@string/permlab_accessCoarseLocation"
249        android:description="@string/permdesc_accessCoarseLocation" />
250
251    <!-- Allows an application to create mock location providers for testing -->
252    <permission android:name="android.permission.ACCESS_MOCK_LOCATION"
253        android:permissionGroup="android.permission-group.LOCATION"
254        android:protectionLevel="dangerous"
255        android:label="@string/permlab_accessMockLocation"
256        android:description="@string/permdesc_accessMockLocation" />
257
258    <!-- Allows an application to access extra location provider commands -->
259    <permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"
260        android:permissionGroup="android.permission-group.LOCATION"
261        android:protectionLevel="normal"
262        android:label="@string/permlab_accessLocationExtraCommands"
263        android:description="@string/permdesc_accessLocationExtraCommands" />
264
265    <!-- Allows an application to install a location provider into the Location Manager -->
266    <permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"
267        android:protectionLevel="signatureOrSystem"
268        android:label="@string/permlab_installLocationProvider"
269        android:description="@string/permdesc_installLocationProvider" />
270
271    <!-- ======================================= -->
272    <!-- Permissions for accessing networks -->
273    <!-- ======================================= -->
274    <eat-comment />
275
276    <!-- Used for permissions that provide access to networking services.  The
277         main permission here is internet access, but this is also an
278         appropriate group for accessing or modifying any network configuration
279         or other related network operations. -->
280    <permission-group android:name="android.permission-group.NETWORK"
281        android:label="@string/permgrouplab_network"
282        android:description="@string/permgroupdesc_network" />
283
284    <!-- Allows applications to open network sockets. -->
285    <permission android:name="android.permission.INTERNET"
286        android:permissionGroup="android.permission-group.NETWORK"
287        android:protectionLevel="dangerous"
288        android:description="@string/permdesc_createNetworkSockets"
289        android:label="@string/permlab_createNetworkSockets" />
290
291    <!-- Allows applications to access information about networks -->
292    <permission android:name="android.permission.ACCESS_NETWORK_STATE"
293        android:permissionGroup="android.permission-group.NETWORK"
294        android:protectionLevel="normal"
295        android:description="@string/permdesc_accessNetworkState"
296        android:label="@string/permlab_accessNetworkState" />
297
298    <!-- Allows applications to access information about Wi-Fi networks -->
299    <permission android:name="android.permission.ACCESS_WIFI_STATE"
300        android:permissionGroup="android.permission-group.NETWORK"
301        android:protectionLevel="normal"
302        android:description="@string/permdesc_accessWifiState"
303        android:label="@string/permlab_accessWifiState" />
304
305    <!-- Allows applications to connect to paired bluetooth devices -->
306    <permission android:name="android.permission.BLUETOOTH"
307        android:permissionGroup="android.permission-group.NETWORK"
308        android:protectionLevel="dangerous"
309        android:description="@string/permdesc_bluetooth"
310        android:label="@string/permlab_bluetooth" />
311
312    <!-- Allows applications to call into AccountAuthenticators. Only
313    the system can get this permission. -->
314    <permission android:name="android.permission.ACCOUNT_MANAGER_SERVICE"
315        android:permissionGroup="android.permission-group.ACCOUNTS"
316        android:protectionLevel="signature"
317        android:description="@string/permdesc_accountManagerService"
318        android:label="@string/permlab_accountManagerService" />
319
320    <!-- ================================== -->
321    <!-- Permissions for accessing accounts -->
322    <!-- ================================== -->
323    <eat-comment />
324
325    <!-- Permissions for direct access to Google accounts.
326         Note that while right now this is only used for Google accounts,
327         we expect in the future to have a more general account management
328         facility so this is specified as a general platform permission
329         group for accessing accounts. -->
330    <permission-group android:name="android.permission-group.ACCOUNTS"
331        android:label="@string/permgrouplab_accounts"
332        android:description="@string/permgroupdesc_accounts" />
333
334    <!-- Allows access to the list of accounts in the Accounts Service -->
335    <permission android:name="android.permission.GET_ACCOUNTS"
336        android:permissionGroup="android.permission-group.ACCOUNTS"
337        android:protectionLevel="normal"
338        android:description="@string/permdesc_getAccounts"
339        android:label="@string/permlab_getAccounts" />
340
341    <!-- Allows an application to act as an AccountAuthenticator for
342         the AccountManager -->
343    <permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"
344        android:permissionGroup="android.permission-group.ACCOUNTS"
345        android:protectionLevel="dangerous"
346        android:label="@string/permlab_authenticateAccounts"
347        android:description="@string/permdesc_authenticateAccounts" />
348
349    <!-- Allows an application to request authtokens from the AccountManager -->
350    <permission android:name="android.permission.USE_CREDENTIALS"
351        android:permissionGroup="android.permission-group.ACCOUNTS"
352        android:protectionLevel="dangerous"
353        android:label="@string/permlab_useCredentials"
354        android:description="@string/permdesc_useCredentials" />
355
356    <!-- Allows an application to manage the list of accounts in the AccountManager -->
357    <permission android:name="android.permission.MANAGE_ACCOUNTS"
358        android:permissionGroup="android.permission-group.ACCOUNTS"
359        android:protectionLevel="dangerous"
360        android:label="@string/permlab_manageAccounts"
361        android:description="@string/permdesc_manageAccounts" />
362
363    <!-- ================================== -->
364    <!-- Permissions for accessing hardware -->
365    <!-- ================================== -->
366    <eat-comment />
367
368    <!-- Used for permissions that provide direct access to the hardware on
369         the device.  This includes audio, the camera, vibrator, etc. -->
370    <permission-group android:name="android.permission-group.HARDWARE_CONTROLS"
371        android:label="@string/permgrouplab_hardwareControls"
372        android:description="@string/permgroupdesc_hardwareControls" />
373
374    <!-- Allows an application to modify global audio settings -->
375    <permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"
376        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
377        android:protectionLevel="dangerous"
378        android:label="@string/permlab_modifyAudioSettings"
379        android:description="@string/permdesc_modifyAudioSettings" />
380
381    <!-- Allows an application to record audio -->
382    <permission android:name="android.permission.RECORD_AUDIO"
383        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
384        android:protectionLevel="dangerous"
385        android:label="@string/permlab_recordAudio"
386        android:description="@string/permdesc_recordAudio" />
387
388    <!-- Required to be able to access the camera device. -->
389    <permission android:name="android.permission.CAMERA"
390        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
391        android:protectionLevel="dangerous"
392        android:label="@string/permlab_camera"
393        android:description="@string/permdesc_camera" />
394
395    <!-- Allows access to the vibrator -->
396    <permission android:name="android.permission.VIBRATE"
397        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
398        android:protectionLevel="normal"
399        android:label="@string/permlab_vibrate"
400        android:description="@string/permdesc_vibrate" />
401
402    <!-- Allows access to the flashlight -->
403    <permission android:name="android.permission.FLASHLIGHT"
404        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
405        android:protectionLevel="normal"
406        android:label="@string/permlab_flashlight"
407        android:description="@string/permdesc_flashlight" />
408
409    <!-- Allows access to hardware peripherals.  Intended only for hardware testing -->
410    <permission android:name="android.permission.HARDWARE_TEST"
411        android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
412        android:protectionLevel="signature"
413        android:label="@string/permlab_hardware_test"
414        android:description="@string/permdesc_hardware_test" />
415
416    <!-- =========================================== -->
417    <!-- Permissions associated with telephony state -->
418    <!-- =========================================== -->
419    <eat-comment />
420
421    <!-- Used for permissions that are associated with accessing and modifyign
422         telephony state: intercepting outgoing calls, reading
423         and modifying the phone state.  Note that
424         placing phone calls is not in this group, since that is in the
425         more important "takin' yer moneys" group. -->
426    <permission-group android:name="android.permission-group.PHONE_CALLS"
427        android:label="@string/permgrouplab_phoneCalls"
428        android:description="@string/permgroupdesc_phoneCalls" />
429
430    <!-- Allows an application to monitor, modify, or abort outgoing
431         calls. -->
432    <permission android:name="android.permission.PROCESS_OUTGOING_CALLS"
433        android:permissionGroup="android.permission-group.PHONE_CALLS"
434        android:protectionLevel="dangerous"
435        android:label="@string/permlab_processOutgoingCalls"
436        android:description="@string/permdesc_processOutgoingCalls" />
437
438    <!-- Allows modification of the telephony state - power on, mmi, etc.
439         Does not include placing calls. -->
440    <permission android:name="android.permission.MODIFY_PHONE_STATE"
441        android:permissionGroup="android.permission-group.PHONE_CALLS"
442        android:protectionLevel="dangerous"
443        android:label="@string/permlab_modifyPhoneState"
444        android:description="@string/permdesc_modifyPhoneState" />
445
446    <!-- Allows read only access to phone state. -->
447    <permission android:name="android.permission.READ_PHONE_STATE"
448        android:permissionGroup="android.permission-group.PHONE_CALLS"
449        android:protectionLevel="dangerous"
450        android:label="@string/permlab_readPhoneState"
451        android:description="@string/permdesc_readPhoneState" />
452
453    <!-- ================================== -->
454    <!-- Permissions for sdcard interaction -->
455    <!-- ================================== -->
456    <eat-comment />
457
458    <!-- Group of permissions that are related to SD card access. -->
459    <permission-group android:name="android.permission-group.STORAGE"
460        android:label="@string/permgrouplab_storage"
461        android:description="@string/permgroupdesc_storage" />
462
463    <!-- Allows an application to write to external storage -->
464    <permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
465        android:permissionGroup="android.permission-group.STORAGE"
466        android:label="@string/permlab_sdcardWrite"
467        android:description="@string/permdesc_sdcardWrite"
468        android:protectionLevel="dangerous" />
469
470    <!-- ============================================ -->
471    <!-- Permissions for low-level system interaction -->
472    <!-- ============================================ -->
473    <eat-comment />
474
475    <!-- Group of permissions that are related to system APIs.  Many
476         of these are not permissions the user will be expected to understand,
477         and such permissions should generally be marked as "normal" protection
478         level so they don't get displayed.  This can also, however, be used
479         for miscellaneous features that provide access to the operating system,
480         such as writing the global system settings. -->
481    <permission-group android:name="android.permission-group.SYSTEM_TOOLS"
482        android:label="@string/permgrouplab_systemTools"
483        android:description="@string/permgroupdesc_systemTools" />
484
485    <!-- Allows an application to read or write the system settings. -->
486    <permission android:name="android.permission.WRITE_SETTINGS"
487        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
488        android:protectionLevel="dangerous"
489        android:label="@string/permlab_writeSettings"
490        android:description="@string/permdesc_writeSettings" />
491
492    <!-- Allows an application to read or write the secure system settings. -->
493    <permission android:name="android.permission.WRITE_SECURE_SETTINGS"
494        android:protectionLevel="signatureOrSystem"
495        android:label="@string/permlab_writeSecureSettings"
496        android:description="@string/permdesc_writeSecureSettings" />
497
498    <!-- Allows an application to modify the Google service map. -->
499    <permission android:name="android.permission.WRITE_GSERVICES"
500        android:protectionLevel="signature"
501        android:label="@string/permlab_writeGservices"
502        android:description="@string/permdesc_writeGservices" />
503
504    <!-- Allows an application to expand or collapse the status bar. -->
505    <permission android:name="android.permission.EXPAND_STATUS_BAR"
506        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
507        android:protectionLevel="normal"
508        android:label="@string/permlab_expandStatusBar"
509        android:description="@string/permdesc_expandStatusBar" />
510
511    <!-- Allows an application to get information about the currently
512         or recently running tasks: a thumbnail representation of the tasks,
513         what activities are running in it, etc. -->
514    <permission android:name="android.permission.GET_TASKS"
515        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
516        android:protectionLevel="dangerous"
517        android:label="@string/permlab_getTasks"
518        android:description="@string/permdesc_getTasks" />
519
520    <!-- Allows an application to change the Z-order of tasks -->
521    <permission android:name="android.permission.REORDER_TASKS"
522        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
523        android:protectionLevel="dangerous"
524        android:label="@string/permlab_reorderTasks"
525        android:description="@string/permdesc_reorderTasks" />
526
527    <!-- Allows an application to modify the current configuration, such
528         as locale. -->
529    <permission android:name="android.permission.CHANGE_CONFIGURATION"
530        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
531        android:protectionLevel="dangerous"
532        android:label="@string/permlab_changeConfiguration"
533        android:description="@string/permdesc_changeConfiguration" />
534
535    <!-- Allows an application to restart other applications. -->
536    <permission android:name="android.permission.RESTART_PACKAGES"
537        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
538        android:protectionLevel="dangerous"
539        android:label="@string/permlab_restartPackages"
540        android:description="@string/permdesc_restartPackages" />
541
542    <!-- Allows an application to retrieve state dump information from system
543         services. -->
544    <permission android:name="android.permission.DUMP"
545        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
546        android:protectionLevel="dangerous"
547        android:label="@string/permlab_dump"
548        android:description="@string/permdesc_dump" />
549
550    <!-- Allows an application to open windows using the type
551         {@link android.view.WindowManager.LayoutParams#TYPE_SYSTEM_ALERT},
552         shown on top of all other applications.  Very few applications
553         should use this permission; these windows are intended for
554         system-level interaction with the user. -->
555    <permission android:name="android.permission.SYSTEM_ALERT_WINDOW"
556        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
557        android:protectionLevel="dangerous"
558        android:label="@string/permlab_systemAlertWindow"
559        android:description="@string/permdesc_systemAlertWindow" />
560
561    <!-- Modify the global animation scaling factor. -->
562    <permission android:name="android.permission.SET_ANIMATION_SCALE"
563        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
564        android:protectionLevel="dangerous"
565        android:label="@string/permlab_setAnimationScale"
566        android:description="@string/permdesc_setAnimationScale" />
567
568    <!-- Allow an application to make its activities persistent. -->
569    <permission android:name="android.permission.PERSISTENT_ACTIVITY"
570        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
571        android:protectionLevel="dangerous"
572        android:label="@string/permlab_persistentActivity"
573        android:description="@string/permdesc_persistentActivity" />
574
575    <!-- Allows an application to find out the space used by any package. -->
576    <permission android:name="android.permission.GET_PACKAGE_SIZE"
577        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
578        android:protectionLevel="normal"
579        android:label="@string/permlab_getPackageSize"
580        android:description="@string/permdesc_getPackageSize" />
581
582    <!-- Allows an application to modify the list of preferred applications
583         with the {@link android.content.pm.PackageManager#addPackageToPreferred
584         PackageManager.addPackageToPreferred()} and
585         {@link android.content.pm.PackageManager#removePackageFromPreferred
586         PackageManager.removePackageFromPreferred()} methods. -->
587    <permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"
588        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
589        android:protectionLevel="dangerous"
590        android:label="@string/permlab_setPreferredApplications"
591        android:description="@string/permdesc_setPreferredApplications" />
592
593    <!-- Allows an application to receive the
594         {@link android.content.Intent#ACTION_BOOT_COMPLETED} that is
595         broadcast after the system finishes booting.  If you don't
596         request this permission, you will not receive the broadcast at
597         that time.  Though holding this permission does not have any
598         security implications, it can have a negative impact on the
599         user experience by increasing the amount of time it takes the
600         system to start and allowing applications to have themselves
601         running without the user being aware of them.  As such, you must
602         explicitly declare your use of this facility to make that visible
603         to the user. -->
604    <permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"
605        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
606        android:protectionLevel="normal"
607        android:label="@string/permlab_receiveBootCompleted"
608        android:description="@string/permdesc_receiveBootCompleted" />
609
610    <!-- Allows an application to broadcast sticky intents.  These are
611         broadcasts whose data is held by the system after being finished,
612         so that clients can quickly retrieve that data without having
613         to wait for the next broadcast. -->
614    <permission android:name="android.permission.BROADCAST_STICKY"
615        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
616        android:protectionLevel="normal"
617        android:label="@string/permlab_broadcastSticky"
618        android:description="@string/permdesc_broadcastSticky" />
619
620    <!-- Allows using PowerManager WakeLocks to keep processor from sleeping or screen
621         from dimming -->
622    <permission android:name="android.permission.WAKE_LOCK"
623        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
624        android:protectionLevel="dangerous"
625        android:label="@string/permlab_wakeLock"
626        android:description="@string/permdesc_wakeLock" />
627
628    <!-- Allows applications to set the wallpaper -->
629    <permission android:name="android.permission.SET_WALLPAPER"
630        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
631        android:protectionLevel="normal"
632        android:label="@string/permlab_setWallpaper"
633        android:description="@string/permdesc_setWallpaper" />
634
635    <!-- Allows applications to set the wallpaper hints -->
636    <permission android:name="android.permission.SET_WALLPAPER_HINTS"
637        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
638        android:protectionLevel="normal"
639        android:label="@string/permlab_setWallpaperHints"
640        android:description="@string/permdesc_setWallpaperHints" />
641
642    <!-- Allows applications to set the system time zone -->
643    <permission android:name="android.permission.SET_TIME_ZONE"
644        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
645        android:protectionLevel="dangerous"
646        android:label="@string/permlab_setTimeZone"
647        android:description="@string/permdesc_setTimeZone" />
648
649    <!-- Allows mounting and unmounting file systems for removable storage. -->
650    <permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
651        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
652        android:protectionLevel="dangerous"
653        android:label="@string/permlab_mount_unmount_filesystems"
654        android:description="@string/permdesc_mount_unmount_filesystems" />
655
656    <!-- Allows formatting file systems for removable storage. -->
657    <permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"
658        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
659        android:protectionLevel="dangerous"
660        android:label="@string/permlab_mount_format_filesystems"
661        android:description="@string/permdesc_mount_format_filesystems" />
662
663    <!-- Allows applications to disable the keyguard -->
664    <permission android:name="android.permission.DISABLE_KEYGUARD"
665        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
666        android:protectionLevel="normal"
667        android:description="@string/permdesc_disableKeyguard"
668        android:label="@string/permlab_disableKeyguard" />
669
670    <!-- Allows applications to read the sync settings -->
671    <permission android:name="android.permission.READ_SYNC_SETTINGS"
672        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
673        android:protectionLevel="normal"
674        android:description="@string/permdesc_readSyncSettings"
675        android:label="@string/permlab_readSyncSettings" />
676
677    <!-- Allows applications to write the sync settings -->
678    <permission android:name="android.permission.WRITE_SYNC_SETTINGS"
679        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
680        android:protectionLevel="dangerous"
681        android:description="@string/permdesc_writeSyncSettings"
682        android:label="@string/permlab_writeSyncSettings" />
683
684    <!-- Allows applications to read the sync stats -->
685    <permission android:name="android.permission.READ_SYNC_STATS"
686        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
687        android:protectionLevel="normal"
688        android:description="@string/permdesc_readSyncStats"
689        android:label="@string/permlab_readSyncStats" />
690
691    <!-- Allows applications to write the apn settings -->
692    <permission android:name="android.permission.WRITE_APN_SETTINGS"
693                android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
694                android:protectionLevel="dangerous"
695                android:description="@string/permdesc_writeApnSettings"
696                android:label="@string/permlab_writeApnSettings" />
697
698    <!-- Allows an application to allow access the subscribed feeds
699         ContentProvider. -->
700    <permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"
701        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
702        android:label="@string/permlab_subscribedFeedsRead"
703        android:description="@string/permdesc_subscribedFeedsRead"
704        android:protectionLevel="normal" />
705    <permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"
706        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
707        android:label="@string/permlab_subscribedFeedsWrite"
708        android:description="@string/permdesc_subscribedFeedsWrite"
709        android:protectionLevel="dangerous" />
710
711    <!-- Allows applications to change network connectivity state -->
712    <permission android:name="android.permission.CHANGE_NETWORK_STATE"
713        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
714        android:protectionLevel="dangerous"
715        android:description="@string/permdesc_changeNetworkState"
716        android:label="@string/permlab_changeNetworkState" />
717
718    <!-- Allows applications to change Wi-Fi connectivity state -->
719    <permission android:name="android.permission.CHANGE_WIFI_STATE"
720        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
721        android:protectionLevel="dangerous"
722        android:description="@string/permdesc_changeWifiState"
723        android:label="@string/permlab_changeWifiState" />
724
725    <!-- Allows applications to enter Wi-Fi Multicast mode -->
726    <permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"
727        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
728        android:protectionLevel="dangerous"
729        android:description="@string/permdesc_changeWifiMulticastState"
730        android:label="@string/permlab_changeWifiMulticastState" />
731
732    <!-- Allows applications to discover and pair bluetooth devices -->
733    <permission android:name="android.permission.BLUETOOTH_ADMIN"
734        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
735        android:protectionLevel="dangerous"
736        android:description="@string/permdesc_bluetoothAdmin"
737        android:label="@string/permlab_bluetoothAdmin" />
738
739    <!-- Allows an application to clear the caches of all installed
740         applications on the device.  -->
741    <permission android:name="android.permission.CLEAR_APP_CACHE"
742        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
743        android:protectionLevel="dangerous"
744        android:label="@string/permlab_clearAppCache"
745        android:description="@string/permdesc_clearAppCache" />
746
747    <!-- Allows an application to read the low-level system log files.
748         These can contain slightly private information about what is
749         happening on the device, but should never contain the user's
750         private information. -->
751    <permission android:name="android.permission.READ_LOGS"
752        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
753        android:protectionLevel="dangerous"
754        android:label="@string/permlab_readLogs"
755        android:description="@string/permdesc_readLogs" />
756
757    <!-- ========================================= -->
758    <!-- Permissions for special development tools -->
759    <!-- ========================================= -->
760    <eat-comment />
761
762    <!-- Group of permissions that are related to development features.  These
763         are not permissions that should appear in normal applications; they
764         protect APIs that are intended only to be used for development
765         purposes. -->
766    <permission-group android:name="android.permission-group.DEVELOPMENT_TOOLS"
767        android:label="@string/permgrouplab_developmentTools"
768        android:description="@string/permgroupdesc_developmentTools" />
769
770    <!-- Configure an application for debugging. -->
771    <permission android:name="android.permission.SET_DEBUG_APP"
772        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
773        android:protectionLevel="dangerous"
774        android:label="@string/permlab_setDebugApp"
775        android:description="@string/permdesc_setDebugApp" />
776
777    <!-- Allows an application to set the maximum number of (not needed)
778         application processes that can be running. -->
779    <permission android:name="android.permission.SET_PROCESS_LIMIT"
780        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
781        android:protectionLevel="dangerous"
782        android:label="@string/permlab_setProcessLimit"
783        android:description="@string/permdesc_setProcessLimit" />
784
785    <!-- Allows an application to control whether activities are immediately
786         finished when put in the background. -->
787    <permission android:name="android.permission.SET_ALWAYS_FINISH"
788        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
789        android:protectionLevel="dangerous"
790        android:label="@string/permlab_setAlwaysFinish"
791        android:description="@string/permdesc_setAlwaysFinish" />
792
793    <!-- Allow an application to request that a signal be sent to all persistent processes -->
794    <permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"
795        android:permissionGroup="android.permission-group.DEVELOPMENT_TOOLS"
796        android:protectionLevel="dangerous"
797        android:label="@string/permlab_signalPersistentProcesses"
798        android:description="@string/permdesc_signalPersistentProcesses" />
799
800    <!-- ==================================== -->
801    <!-- Private (signature-only) permissions -->
802    <!-- ==================================== -->
803    <eat-comment />
804
805    <!-- Allows applications to RW to diagnostic resources. -->
806    <permission android:name="android.permission.DIAGNOSTIC"
807        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
808        android:protectionLevel="signature"
809        android:description="@string/permdesc_diagnostic"
810        android:label="@string/permlab_diagnostic" />
811
812    <!-- Allows an application to open, close, or disable the status bar
813         and its icons. -->
814    <permission android:name="android.permission.STATUS_BAR"
815        android:label="@string/permlab_statusBar"
816        android:description="@string/permdesc_statusBar"
817        android:protectionLevel="signatureOrSystem" />
818
819    <!-- Allows an application to force a BACK operation on whatever is the
820         top activity. -->
821    <permission android:name="android.permission.FORCE_BACK"
822        android:label="@string/permlab_forceBack"
823        android:description="@string/permdesc_forceBack"
824        android:protectionLevel="signature" />
825
826    <!-- Allows an application to update device statistics. Not for
827         use by third party apps. -->
828    <permission android:name="android.permission.UPDATE_DEVICE_STATS"
829        android:label="@string/permlab_batteryStats"
830        android:description="@string/permdesc_batteryStats"
831        android:protectionLevel="signature" />
832
833    <!-- Allows an application to open windows that are for use by parts
834         of the system user interface.  Not for use by third party apps. -->
835    <permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"
836        android:label="@string/permlab_internalSystemWindow"
837        android:description="@string/permdesc_internalSystemWindow"
838        android:protectionLevel="signature" />
839
840    <!-- Allows an application to manage (create, destroy,
841         Z-order) application tokens in the window manager.  This is only
842         for use by the system. -->
843    <permission android:name="android.permission.MANAGE_APP_TOKENS"
844        android:label="@string/permlab_manageAppTokens"
845        android:description="@string/permdesc_manageAppTokens"
846        android:protectionLevel="signature" />
847
848    <!-- Allows an application to inject user events (keys, touch, trackball)
849         into the event stream and deliver them to ANY window.  Without this
850         permission, you can only deliver events to windows in your own process.
851         Very few applications should need to use this permission. -->
852    <permission android:name="android.permission.INJECT_EVENTS"
853        android:label="@string/permlab_injectEvents"
854        android:description="@string/permdesc_injectEvents"
855        android:protectionLevel="signature" />
856
857    <!-- Allows an application to watch and control how activities are
858         started globally in the system.  Only for is in debugging
859         (usually the monkey command). -->
860    <permission android:name="android.permission.SET_ACTIVITY_WATCHER"
861        android:label="@string/permlab_runSetActivityWatcher"
862        android:description="@string/permdesc_runSetActivityWatcher"
863        android:protectionLevel="signature" />
864
865    <!-- Allows an application to call the activity manager shutdown() API
866         to put the higher-level system there into a shutdown state.
867         @hide -->
868    <permission android:name="android.permission.SHUTDOWN"
869        android:label="@string/permlab_shutdown"
870        android:description="@string/permdesc_shutdown"
871        android:protectionLevel="signature" />
872
873    <!-- Allows an application to tell the activity manager to temporarily
874         stop application switches, putting it into a special mode that
875         prevents applications from immediately switching away from some
876         critical UI such as the home screen.
877         @hide -->
878    <permission android:name="android.permission.STOP_APP_SWITCHES"
879        android:label="@string/permlab_stopAppSwitches"
880        android:description="@string/permdesc_stopAppSwitches"
881        android:protectionLevel="signature" />
882
883    <!-- Allows an application to retrieve the current state of keys and
884         switches.  This is only for use by the system.-->
885    <permission android:name="android.permission.READ_INPUT_STATE"
886        android:label="@string/permlab_readInputState"
887        android:description="@string/permdesc_readInputState"
888        android:protectionLevel="signature" />
889
890    <!-- Must be required by input method services, to ensure that only the
891         system can bind to them. -->
892    <permission android:name="android.permission.BIND_INPUT_METHOD"
893        android:label="@string/permlab_bindInputMethod"
894        android:description="@string/permdesc_bindInputMethod"
895        android:protectionLevel="signature" />
896
897    <!-- Must be required by wallpaper services, to ensure that only the
898         system can bind to them. -->
899    <permission android:name="android.permission.BIND_WALLPAPER"
900        android:label="@string/permlab_bindWallpaper"
901        android:description="@string/permdesc_bindWallpaper"
902        android:protectionLevel="signature" />
903
904    <!-- Allows low-level access to setting the orientation (actually
905         rotation) of the screen.  Not for use by normal applications. -->
906    <permission android:name="android.permission.SET_ORIENTATION"
907        android:label="@string/permlab_setOrientation"
908        android:description="@string/permdesc_setOrientation"
909        android:protectionLevel="signature" />
910
911    <!-- Allows an application to install packages. -->
912    <permission android:name="android.permission.INSTALL_PACKAGES"
913        android:label="@string/permlab_installPackages"
914        android:description="@string/permdesc_installPackages"
915        android:protectionLevel="signatureOrSystem" />
916
917    <!-- Allows an application to clear user data -->
918    <permission android:name="android.permission.CLEAR_APP_USER_DATA"
919        android:label="@string/permlab_clearAppUserData"
920        android:description="@string/permdesc_clearAppUserData"
921        android:protectionLevel="signature" />
922
923    <!-- Allows an application to delete cache files. -->
924    <permission android:name="android.permission.DELETE_CACHE_FILES"
925        android:label="@string/permlab_deleteCacheFiles"
926        android:description="@string/permdesc_deleteCacheFiles"
927        android:protectionLevel="signature" />
928
929    <!-- Allows an application to delete packages. -->
930    <permission android:name="android.permission.DELETE_PACKAGES"
931        android:label="@string/permlab_deletePackages"
932        android:description="@string/permdesc_deletePackages"
933        android:protectionLevel="signatureOrSystem" />
934
935    <!-- Allows an application to change whether an application component (other than its own) is
936         enabled or not. -->
937    <permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"
938        android:label="@string/permlab_changeComponentState"
939        android:description="@string/permdesc_changeComponentState"
940        android:protectionLevel="signature" />
941
942    <!-- Allows an application to use SurfaceFlinger's low level features -->
943    <permission android:name="android.permission.ACCESS_SURFACE_FLINGER"
944        android:label="@string/permlab_accessSurfaceFlinger"
945        android:description="@string/permdesc_accessSurfaceFlinger"
946        android:protectionLevel="signature" />
947
948    <!-- Allows an application to take screen shots and more generally
949         get access to the frame buffer data -->
950    <permission android:name="android.permission.READ_FRAME_BUFFER"
951        android:label="@string/permlab_readFrameBuffer"
952        android:description="@string/permdesc_readFrameBuffer"
953        android:protectionLevel="signature" />
954
955    <!-- Required to be able to disable the device (very dangerous!). -->
956    <permission android:name="android.permission.BRICK"
957        android:label="@string/permlab_brick"
958        android:description="@string/permdesc_brick"
959        android:protectionLevel="signature" />
960
961    <!-- Required to be able to reboot the device. -->
962    <permission android:name="android.permission.REBOOT"
963        android:label="@string/permlab_reboot"
964        android:description="@string/permdesc_reboot"
965        android:protectionLevel="signature" />
966
967   <!-- Allows low-level access to power management -->
968    <permission android:name="android.permission.DEVICE_POWER"
969        android:label="@string/permlab_devicePower"
970        android:description="@string/permdesc_devicePower"
971        android:protectionLevel="signature" />
972
973    <!-- Run as a manufacturer test application, running as the root user.
974         Only available when the device is running in manufacturer test mode. -->
975    <permission android:name="android.permission.FACTORY_TEST"
976        android:label="@string/permlab_factoryTest"
977        android:description="@string/permdesc_factoryTest"
978        android:protectionLevel="signature" />
979
980    <!-- Allows an application to broadcast a notification that an application
981         package has been removed. -->
982    <permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"
983        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
984        android:label="@string/permlab_broadcastPackageRemoved"
985        android:description="@string/permdesc_broadcastPackageRemoved"
986        android:protectionLevel="signature" />
987
988    <!-- Allows an application to broadcast an SMS receipt notification -->
989    <permission android:name="android.permission.BROADCAST_SMS"
990        android:permissionGroup="android.permission-group.MESSAGES"
991        android:label="@string/permlab_broadcastSmsReceived"
992        android:description="@string/permdesc_broadcastSmsReceived"
993        android:protectionLevel="signature" />
994
995    <!-- Allows an application to broadcast a WAP PUSH receipt notification -->
996    <permission android:name="android.permission.BROADCAST_WAP_PUSH"
997        android:permissionGroup="android.permission-group.MESSAGES"
998        android:label="@string/permlab_broadcastWapPush"
999        android:description="@string/permdesc_broadcastWapPush"
1000        android:protectionLevel="signature" />
1001
1002    <permission android:name="android.permission.MASTER_CLEAR"
1003        android:label="@string/permlab_masterClear"
1004        android:description="@string/permdesc_masterClear"
1005        android:protectionLevel="signatureOrSystem" />
1006
1007    <!-- Allows an application to call any phone number, including emergency
1008         numbers, without going through the Dialer user interface for the user
1009         to confirm the call being placed. -->
1010    <permission android:name="android.permission.CALL_PRIVILEGED"
1011        android:label="@string/permlab_callPrivileged"
1012        android:description="@string/permdesc_callPrivileged"
1013        android:protectionLevel="signatureOrSystem" />
1014
1015    <!-- Allows enabling/disabling location update notifications from
1016         the radio. Not for use by normal applications. -->
1017    <permission android:name="android.permission.CONTROL_LOCATION_UPDATES"
1018        android:label="@string/permlab_locationUpdates"
1019        android:description="@string/permdesc_locationUpdates"
1020        android:protectionLevel="signatureOrSystem" />
1021
1022    <!-- Allows read/write access to the "properties" table in the checkin
1023         database, to change values that get uploaded. -->
1024    <permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"
1025        android:label="@string/permlab_checkinProperties"
1026        android:description="@string/permdesc_checkinProperties"
1027        android:protectionLevel="signatureOrSystem" />
1028
1029    <!-- Allows an application to collect component usage
1030         statistics @hide -->
1031    <permission android:name="android.permission.PACKAGE_USAGE_STATS"
1032        android:label="@string/permlab_pkgUsageStats"
1033        android:description="@string/permdesc_pkgUsageStats"
1034        android:protectionLevel="signature" />
1035
1036    <!-- Allows an application to collect battery statistics -->
1037    <permission android:name="android.permission.BATTERY_STATS"
1038        android:label="@string/permlab_batteryStats"
1039        android:description="@string/permdesc_batteryStats"
1040        android:protectionLevel="normal" />
1041
1042    <!-- Allows an application to control the backup and restore process
1043         @hide pending API council -->
1044    <permission android:name="android.permission.BACKUP"
1045        android:label="@string/permlab_backup"
1046        android:description="@string/permdesc_backup"
1047        android:protectionLevel="signatureOrSystem" />
1048
1049    <!-- Allows an application to tell the AppWidget service which application
1050         can access AppWidget's data.  The normal user flow is that a user
1051         picks an AppWidget to go into a particular host, thereby giving that
1052         host application access to the private data from the AppWidget app.
1053         An application that has this permission should honor that contract.
1054         Very few applications should need to use this permission. -->
1055    <permission android:name="android.permission.BIND_APPWIDGET"
1056        android:permissionGroup="android.permission-group.PERSONAL_INFO"
1057        android:label="@string/permlab_bindGadget"
1058        android:description="@string/permdesc_bindGadget"
1059        android:protectionLevel="signatureOrSystem" />
1060
1061    <!-- Allows applications to change the background data setting
1062         @hide pending API council -->
1063    <permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"
1064        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1065        android:protectionLevel="signature"
1066        android:description="@string/permdesc_changeBackgroundDataSetting"
1067        android:label="@string/permlab_changeBackgroundDataSetting" />
1068
1069    <!-- This permission can be used on content providers to allow the global
1070         search system to access their data.  Typically it used when the
1071         provider has some permissions protecting it (which global search
1072         would not be expected to hold), and added as a read-only permission
1073         to the path in the provider where global search queries are
1074         performed.  This permission can not be held by regular applications;
1075         it is used by applications to protect themselves from everyone else
1076         besides global search. -->
1077    <permission android:name="android.permission.GLOBAL_SEARCH"
1078        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1079        android:protectionLevel="signatureOrSystem" />
1080
1081    <!-- Internal permission protecting access to the global search
1082         system: ensures that only the system can access the provider
1083         to perform queries (since this otherwise provides unrestricted
1084         access to a variety of content providers), and to write the
1085         search statistics (to keep applications from gaming the source
1086         ranking).
1087         @hide -->
1088    <permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"
1089        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1090        android:protectionLevel="signature" />
1091
1092    <!-- Allows applications to set a live wallpaper.
1093         @hide -->
1094    <permission android:name="android.permission.SET_WALLPAPER_COMPONENT"
1095        android:permissionGroup="android.permission-group.SYSTEM_TOOLS"
1096        android:protectionLevel="signature" />
1097
1098    <application android:process="system"
1099                 android:persistent="true"
1100                 android:hasCode="false"
1101                 android:label="@string/android_system_label"
1102                 android:allowClearUserData="false"
1103                 android:backupAgent="com.android.server.SystemBackupAgent"
1104                 android:icon="@drawable/ic_launcher_android">
1105        <activity android:name="com.android.internal.app.ChooserActivity"
1106                android:theme="@style/Theme.Dialog.Alert"
1107                android:excludeFromRecents="true"
1108                android:multiprocess="true">
1109            <intent-filter>
1110                <action android:name="android.intent.action.CHOOSER" />
1111                <category android:name="android.intent.category.DEFAULT" />
1112            </intent-filter>
1113        </activity>
1114        <activity android:name="com.android.internal.app.RingtonePickerActivity"
1115                android:theme="@style/Theme.Dialog.Alert"
1116                android:excludeFromRecents="true"
1117                android:multiprocess="true">
1118            <intent-filter>
1119                <action android:name="android.intent.action.RINGTONE_PICKER" />
1120                <category android:name="android.intent.category.DEFAULT" />
1121            </intent-filter>
1122        </activity>
1123        <activity android:name="com.android.internal.app.UsbStorageActivity"
1124                android:theme="@style/Theme.Dialog.Alert"
1125                android:excludeFromRecents="true">
1126        </activity>
1127        <activity android:name="com.android.internal.app.UsbStorageStopActivity"
1128                android:theme="@style/Theme.Dialog.Alert"
1129                android:excludeFromRecents="true">
1130        </activity>
1131        <activity android:name="com.android.internal.app.ExternalMediaFormatActivity"
1132                android:theme="@style/Theme.Dialog.Alert"
1133                android:excludeFromRecents="true">
1134        </activity>
1135
1136        <activity android:name="android.accounts.ChooseAccountActivity"
1137                android:excludeFromRecents="true"
1138                android:exported="true">
1139        </activity>
1140
1141        <activity android:name="android.accounts.GrantCredentialsPermissionActivity"
1142                android:excludeFromRecents="true"
1143                android:exported="true">
1144        </activity>
1145
1146        <activity android:name="com.android.server.ShutdownActivity"
1147            android:permission="android.permission.SHUTDOWN"
1148            android:excludeFromRecents="true">
1149            <intent-filter>
1150                <action android:name="android.intent.action.ACTION_REQUEST_SHUTDOWN" />
1151                <category android:name="android.intent.category.DEFAULT" />
1152            </intent-filter>
1153        </activity>
1154
1155        <service android:name="com.android.server.LoadAverageService"
1156                android:exported="true" />
1157
1158        <service android:name="com.android.internal.service.wallpaper.ImageWallpaper"
1159                android:permission="android.permission.BIND_WALLPAPER">
1160            <intent-filter>
1161                <action android:name="android.service.wallpaper.WallpaperService" />
1162            </intent-filter>
1163        </service>
1164
1165        <receiver android:name="com.android.server.BootReceiver" >
1166            <intent-filter>
1167                <action android:name="android.intent.action.BOOT_COMPLETED" />
1168            </intent-filter>
1169        </receiver>
1170
1171        <receiver android:name="com.android.server.MasterClearReceiver"
1172            android:permission="android.permission.MASTER_CLEAR" >
1173            <intent-filter>
1174                <action android:name="android.intent.action.REMOTE_INTENT" />
1175                <category android:name="android.intent.category.MASTER_CLEAR" />
1176            </intent-filter>
1177        </receiver>
1178    </application>
1179
1180</manifest>
1181
1182
1183