page.title=Normal Permissions
page.tags=permissions,normal
@jd:body


<div id="qv-wrapper">
<div id="qv">

<!--
<h2>In this document</h2>
<ol>
  <li></li>
</ol>
-->

  <h2>Key classes</h2>
  <ol>
    <li>{@link android.Manifest.permission}</li>
  </ol>

  <h2>See Also</h2>
  <ol>
    <li><a href="{@docRoot}training/permissions/index.html">Working with System
        Permissions</a></li>
  </ol>

<!--
<h2>See also</h2>
<ol>
  <li></li>
</ol>
-->

</div>
</div>

<p>
  Many permissions are designated as {@link
  android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL},
  which indicates that
  there's no great risk to the user's privacy or security in letting apps have
  those permissions. For example, users would reasonably want to know whether
  an app can read their contact information, so users have to grant this
  permission explicitly. By contrast, there's no great risk in allowing an app
  to vibrate the device, so that permission is designated as <em>normal.</em>
</p>

<p>
  If an app declares in its
  manifest that it needs a normal permission, the system automatically grants
  the app
  that permission at install time. The system does not prompt the user
  to grant normal
  permissions, and users cannot revoke these permissions.
</p>

<p>As of API level 23, the following permissions are classified as {@link
    android.content.pm.PermissionInfo#PROTECTION_NORMAL PROTECTION_NORMAL}:</p>

<ul>
  <li>{@link android.Manifest.permission#ACCESS_LOCATION_EXTRA_COMMANDS
  ACCESS_LOCATION_EXTRA_COMMANDS}
  </li>

  <li>{@link android.Manifest.permission#ACCESS_NETWORK_STATE
  ACCESS_NETWORK_STATE}
  </li>

  <li>{@link android.Manifest.permission#ACCESS_NOTIFICATION_POLICY
  ACCESS_NOTIFICATION_POLICY}
  </li>

  <li>{@link android.Manifest.permission#ACCESS_WIFI_STATE ACCESS_WIFI_STATE}
  </li>

  <li>{@link android.Manifest.permission#BLUETOOTH BLUETOOTH}
  </li>

  <li>{@link android.Manifest.permission#BLUETOOTH_ADMIN BLUETOOTH_ADMIN}
  </li>

  <li>{@link android.Manifest.permission#BROADCAST_STICKY BROADCAST_STICKY}
  </li>

  <li>{@link android.Manifest.permission#CHANGE_NETWORK_STATE
  CHANGE_NETWORK_STATE}
  </li>

  <li>{@link android.Manifest.permission#CHANGE_WIFI_MULTICAST_STATE
  CHANGE_WIFI_MULTICAST_STATE}
  </li>

  <li>{@link android.Manifest.permission#CHANGE_WIFI_STATE CHANGE_WIFI_STATE}
  </li>

  <li>{@link android.Manifest.permission#DISABLE_KEYGUARD DISABLE_KEYGUARD}
  </li>

  <li>{@link android.Manifest.permission#EXPAND_STATUS_BAR EXPAND_STATUS_BAR}
  </li>

  <li>{@link android.Manifest.permission#GET_PACKAGE_SIZE GET_PACKAGE_SIZE}
  </li>

  <li>{@link android.Manifest.permission#INSTALL_SHORTCUT INSTALL_SHORTCUT}
  </li>

  <li>{@link android.Manifest.permission#INTERNET INTERNET}
  </li>

  <li>{@link android.Manifest.permission#KILL_BACKGROUND_PROCESSES
  KILL_BACKGROUND_PROCESSES}
  </li>

  <li>{@link android.Manifest.permission#MODIFY_AUDIO_SETTINGS
  MODIFY_AUDIO_SETTINGS}
  </li>

  <li>{@link android.Manifest.permission#NFC NFC}
  </li>

  <li>{@link android.Manifest.permission#READ_SYNC_SETTINGS READ_SYNC_SETTINGS}
  </li>

  <li>{@link android.Manifest.permission#READ_SYNC_STATS READ_SYNC_STATS}
  </li>

  <li>{@link android.Manifest.permission#RECEIVE_BOOT_COMPLETED
  RECEIVE_BOOT_COMPLETED}
  </li>

  <li>{@link android.Manifest.permission#REORDER_TASKS REORDER_TASKS}
  </li>

  <li>{@link android.Manifest.permission#REQUEST_IGNORE_BATTERY_OPTIMIZATIONS
  REQUEST_IGNORE_BATTERY_OPTIMIZATIONS}
  </li>

  <li>{@link android.Manifest.permission#REQUEST_INSTALL_PACKAGES
  REQUEST_INSTALL_PACKAGES}
  </li>

  <li>{@link android.Manifest.permission#SET_ALARM SET_ALARM}
  </li>

  <li>{@link android.Manifest.permission#SET_TIME_ZONE SET_TIME_ZONE}
  </li>

  <li>{@link android.Manifest.permission#SET_WALLPAPER SET_WALLPAPER}
  </li>

  <li>{@link android.Manifest.permission#SET_WALLPAPER_HINTS
  SET_WALLPAPER_HINTS}
  </li>

  <li>{@link android.Manifest.permission#TRANSMIT_IR TRANSMIT_IR}
  </li>

  <li>{@link android.Manifest.permission#UNINSTALL_SHORTCUT UNINSTALL_SHORTCUT}
  </li>

  <li>{@link android.Manifest.permission#USE_FINGERPRINT USE_FINGERPRINT}
  </li>

  <li>{@link android.Manifest.permission#VIBRATE VIBRATE}
  </li>

  <li>{@link android.Manifest.permission#WAKE_LOCK WAKE_LOCK}
  </li>

  <li>{@link android.Manifest.permission#WRITE_SYNC_SETTINGS
  WRITE_SYNC_SETTINGS}
  </li>
</ul>