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