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