<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2015 The Android Open Source Project

 Licensed under the Apache License, Version 2.0 (the "License");
 you may not use this file except in compliance with the License.
 You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<sample>
    <name>RuntimePermissions</name>
    <group>System</group>
    <package>com.example.android.system.runtimepermissions</package>

    <minSdk>15</minSdk>

    <dependency>com.android.support:support-v4:24.0.0</dependency>
    <dependency>com.android.support:design:24.0.0</dependency>

    <strings>
        <intro>
            <![CDATA[
            This sample shows runtime permissions available in Android M and above.
            Display the log on screen to follow the execution.
            If executed on an Android M device, an additional option to access contacts is shown
            that is declared with optional, M and above only permissions.
            ]]>
        </intro>
    </strings>

    <template src="base-build"/>

    <metadata>
        <status>PUBLISHED</status>
        <categories>System</categories>
        <technologies>Android</technologies>
        <languages>Java</languages>
        <solutions>Mobile</solutions>
        <level>BEGINNER</level>
        <icon>screenshots/big_icon.png</icon>
        <screenshots>
            <img>screenshots/screenshot-1.png</img>
            <img>screenshots/screenshot-2.png</img>
        </screenshots>
        <api_refs>
            <android>android.app.Activity</android>
            <android>android.support.v4.app.ActivityCompat</android>
            <android>android.Manifest.permission</android>
        </api_refs>

        <description>
<![CDATA[
This sample shows runtime permissions available in Android M and above.
It shows how to check and request permissions at runtime, handle backwards compatibility using the
support library and how to declare optional permissions for M-devices only.
]]>
        </description>

        <intro>
<![CDATA[
Android M introduced runtime permissions. Applications targeting M and above need to request their
permissions at runtime.
All permissions still need to be declared in the AndroidManifest. However, when accessing APIs that
require a permission, the Activity or Fragment has to verify that the permission has been granted
or request the missing permissions using calls through the support library. Permissions are checked
through  ActivityCompat#checkSelfPermission(Context, String) or
ContextCompat#checkSelfPermission(Context, String).
Permission are requested through ActivityCompat#requestPermissions(Activity, String[], int), and the response
received in a callback to  ActivityCompat.OnRequestPermissionsResultCallback#onRequestPermissionsResult(int, String[], int[]).
Applications can provide an additional rational for the use of permissions after calling
ActivityCompat#shouldShowRequestPermissionRationale(Activity,String). This call will return true if the
application should provide the user with more context on why the requested permissions is needed,
for example if the permission request has been denied before.

If an application targets an SDK below M, all permissions are granted at runtime and are available
when the application is running. The support library calls handle these checks appropriately.
However, if permissions have been turned off in the system settings
for an application targeting an SDK below M, the API will return empty or no data.
]]>
        </intro>
    </metadata>
</sample>
