Home | History | Annotate | Download | only in security
      1 page.title=Normal Permissions
      2 page.tags=permissions,normal
      3 @jd:body
      4 
      5 
      6 <div id="qv-wrapper">
      7 <div id="qv">
      8 
      9 <!--
     10 <h2>In this document</h2>
     11 <ol>
     12   <li></li>
     13 </ol>
     14 -->
     15 
     16   <h2>Key classes</h2>
     17   <ol>
     18     <li>{@link android.Manifest.permission}</li>
     19   </ol>
     20 
     21   <h2>See Also</h2>
     22   <ol>
     23     <li><a href="{@docRoot}training/permissions/index.html">Working with System
     24         Permissions</a></li>
     25   </ol>
     26 
     27 <!--
     28 <h2>See also</h2>
     29 <ol>
     30   <li></li>
     31 </ol>
     32 -->
     33 
     34 </div>
     35 </div>
     36 
     37 <p>
     38   Many permissions are designated as {@link
     39   android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL},
     40   which indicates that
     41   there's no great risk to the user's privacy or security in letting apps have
     42   those permissions. For example, users would reasonably want to know whether
     43   an app can read their contact information, so users have to grant this
     44   permission explicitly. By contrast, there's no great risk in allowing an app
     45   to vibrate the device, so that permission is designated as <em>normal.</em>
     46 </p>
     47 
     48 <p>
     49   If an app declares in its
     50   manifest that it needs a normal permission, the system automatically grants
     51   the app
     52   that permission at install time. The system does not prompt the user
     53   to grant normal
     54   permissions, and users cannot revoke these permissions.
     55 </p>
     56 
     57 <p>As of API level 23, the following permissions are classified as {@link
     58     android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}:</p>
     59 
     60 <ul>
     61   <li>{@link android.Manifest.permission#ACCESS_LOCATION_EXTRA_COMMANDS
     62   ACCESS_LOCATION_EXTRA_COMMANDS}
     63   </li>
     64 
     65   <li>{@link android.Manifest.permission#ACCESS_NETWORK_STATE
     66   ACCESS_NETWORK_STATE}
     67   </li>
     68 
     69   <li>{@link android.Manifest.permission#ACCESS_NOTIFICATION_POLICY
     70   ACCESS_NOTIFICATION_POLICY}
     71   </li>
     72 
     73   <li>{@link android.Manifest.permission#ACCESS_WIFI_STATE ACCESS_WIFI_STATE}
     74   </li>
     75 
     76   <li>{@link android.Manifest.permission#BLUETOOTH BLUETOOTH}
     77   </li>
     78 
     79   <li>{@link android.Manifest.permission#BLUETOOTH_ADMIN BLUETOOTH_ADMIN}
     80   </li>
     81 
     82   <li>{@link android.Manifest.permission#BROADCAST_STICKY BROADCAST_STICKY}
     83   </li>
     84 
     85   <li>{@link android.Manifest.permission#CHANGE_NETWORK_STATE
     86   CHANGE_NETWORK_STATE}
     87   </li>
     88 
     89   <li>{@link android.Manifest.permission#CHANGE_WIFI_MULTICAST_STATE
     90   CHANGE_WIFI_MULTICAST_STATE}
     91   </li>
     92 
     93   <li>{@link android.Manifest.permission#CHANGE_WIFI_STATE CHANGE_WIFI_STATE}
     94   </li>
     95 
     96   <li>{@link android.Manifest.permission#DISABLE_KEYGUARD DISABLE_KEYGUARD}
     97   </li>
     98 
     99   <li>{@link android.Manifest.permission#EXPAND_STATUS_BAR EXPAND_STATUS_BAR}
    100   </li>
    101 
    102   <li>{@link android.Manifest.permission#GET_PACKAGE_SIZE GET_PACKAGE_SIZE}
    103   </li>
    104 
    105   <li>{@link android.Manifest.permission#INSTALL_SHORTCUT INSTALL_SHORTCUT}
    106   </li>
    107 
    108   <li>{@link android.Manifest.permission#INTERNET INTERNET}
    109   </li>
    110 
    111   <li>{@link android.Manifest.permission#KILL_BACKGROUND_PROCESSES
    112   KILL_BACKGROUND_PROCESSES}
    113   </li>
    114 
    115   <li>{@link android.Manifest.permission#MODIFY_AUDIO_SETTINGS
    116   MODIFY_AUDIO_SETTINGS}
    117   </li>
    118 
    119   <li>{@link android.Manifest.permission#NFC NFC}
    120   </li>
    121 
    122   <li>{@link android.Manifest.permission#READ_SYNC_SETTINGS READ_SYNC_SETTINGS}
    123   </li>
    124 
    125   <li>{@link android.Manifest.permission#READ_SYNC_STATS READ_SYNC_STATS}
    126   </li>
    127 
    128   <li>{@link android.Manifest.permission#RECEIVE_BOOT_COMPLETED
    129   RECEIVE_BOOT_COMPLETED}
    130   </li>
    131 
    132   <li>{@link android.Manifest.permission#REORDER_TASKS REORDER_TASKS}
    133   </li>
    134 
    135   <li>{@link android.Manifest.permission#REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
    136   REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}
    137   </li>
    138 
    139   <li>{@link android.Manifest.permission#REQUEST_INSTALL_PACKAGES
    140   REQUEST_INSTALL_PACKAGES}
    141   </li>
    142 
    143   <li>{@link android.Manifest.permission#SET_ALARM SET_ALARM}
    144   </li>
    145 
    146   <li>{@link android.Manifest.permission#SET_TIME_ZONE SET_TIME_ZONE}
    147   </li>
    148 
    149   <li>{@link android.Manifest.permission#SET_WALLPAPER SET_WALLPAPER}
    150   </li>
    151 
    152   <li>{@link android.Manifest.permission#SET_WALLPAPER_HINTS
    153   SET_WALLPAPER_HINTS}
    154   </li>
    155 
    156   <li>{@link android.Manifest.permission#TRANSMIT_IR TRANSMIT_IR}
    157   </li>
    158 
    159   <li>{@link android.Manifest.permission#UNINSTALL_SHORTCUT UNINSTALL_SHORTCUT}
    160   </li>
    161 
    162   <li>{@link android.Manifest.permission#USE_FINGERPRINT USE_FINGERPRINT}
    163   </li>
    164 
    165   <li>{@link android.Manifest.permission#VIBRATE VIBRATE}
    166   </li>
    167 
    168   <li>{@link android.Manifest.permission#WAKE_LOCK WAKE_LOCK}
    169   </li>
    170 
    171   <li>{@link android.Manifest.permission#WRITE_SYNC_SETTINGS
    172   WRITE_SYNC_SETTINGS}
    173   </li>
    174 </ul>
    175