1page.title=Working with System Permissions
2page.tags=permissions
3helpoutsWidget=true
4
5@jd:body
6
7<div id="tb-wrapper">
8
9  <div id="tb">
10<!--
11    <h2>Dependencies and Prerequisites</h2>
12    <ul>
13      <li></li>
14    </ul>
15-->
16<h2>You should also read</h2>
17  <ul>
18    <li><a href="{@docRoot}guide/topics/security/permissions.html">
19      System Permissions</a></li>
20    <li><a href="{@docRoot}training/basics/intents/index.html">
21      Interacting with other apps</a></li>
22  </ul>
23  </div>
24</div>
25
26<a class="notice-designers wide"
27  href="https://www.google.com/design/spec/patterns/permissions.html">
28  <div>
29    <h3>Design Patterns</h3>
30    <p>Permissions</p>
31  </div>
32</a>
33
34<p>
35  To protect the system's integrity and the user's privacy, Android runs each
36  app in a limited access sandbox. If the app wants to use resources or
37  information outside of its sandbox, the app has to explicitly request
38  permission. Depending on the type of permission the app requests, the system
39  may grant the permission automatically, or the system may ask the user to
40  grant the permission.
41</p>
42
43<p>
44  This class shows you how to declare and request permissions for your app.
45</p>
46
47<h2>Lessons</h2>
48
49<dl>
50  <dt>
51    <a href="declaring.html">Declaring Permissions</a>
52  </dt>
53
54  <dd>
55    Learn how to declare the permissions you need in your app manifest.
56  </dd>
57
58  <dt>
59    <a href="requesting.html">Requesting Permissions at Run Time</a>
60  </dt>
61
62  <dd>
63    Learn how to request permissions from the user while the app is running.
64    This lesson only applies to apps on devices running Android 6.0 (API level
65    23) and higher.
66  </dd>
67
68  <dt>
69    <a href="best-practices.html">Permissions Best Practices</a>
70  </dt>
71
72  <dd>
73    Guidelines for creating the best user experience in requesting and using
74    permissions.
75  </dd>
76</dl>
77