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