1
2Android RuntimePermissionsBasic Sample
3===================================
4
5This basic sample shows runtime permissions available in the Android M and above.
6It shows how to use the new runtime permissions API to check and request permissions through the
7support library.
8
9Introduction
10------------
11
12Android M introduced runtime permissions. Applications targeting M and above need to request their
13permissions at runtime.
14This sample introduces the basic use of the runtime permissions API through the support library by
15verifying permissions (ActivityCompat#checkSelfPermission(Context, String)), requesting permissions (ActivityCompat#requestPermissions(Activity, String[], int))
16and handling the permission request callback (ActivityCompat.OnRequestPermissionsResultCallback).
17An application can display additional context and justification for a permission after calling
18ActivityCompat#shouldShowRequestPermissionRationale#shouldShowRequestPermissionRationale(Activity, String).
19
20See the "RuntimePermissions" sample for a more complete description and reference implementation.
21
22Pre-requisites
23--------------
24
25- Android SDK 27
26- Android Build Tools v27.0.2
27- Android Support Repository
28
29Screenshots
30-------------
31
32<img src="screenshots/screenshot-1.png" height="400" alt="Screenshot"/>
33
34Getting Started
35---------------
36
37This sample uses the Gradle build system. To build this project, use the
38"gradlew build" command or use "Import Project" in Android Studio.
39
40Support
41-------
42
43- Google+ Community: https://plus.google.com/communities/105153134372062985968
44- Stack Overflow: http://stackoverflow.com/questions/tagged/android
45
46If you've found an error in this sample, please file an issue:
47https://github.com/googlesamples/android-RuntimePermissionsBasic
48
49Patches are encouraged, and may be submitted by forking this project and
50submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
51
52License
53-------
54
55Copyright 2017 The Android Open Source Project, Inc.
56
57Licensed to the Apache Software Foundation (ASF) under one or more contributor
58license agreements.  See the NOTICE file distributed with this work for
59additional information regarding copyright ownership.  The ASF licenses this
60file to you under the Apache License, Version 2.0 (the "License"); you may not
61use this file except in compliance with the License.  You may obtain a copy of
62the License at
63
64http://www.apache.org/licenses/LICENSE-2.0
65
66Unless required by applicable law or agreed to in writing, software
67distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
68WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
69License for the specific language governing permissions and limitations under
70the License.
71