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