1*561a1919SCedric van Putten{
2*561a1919SCedric van Putten  "meta": {
3*561a1919SCedric van Putten    "source": "https://developer.android.com/reference/android/Manifest.permission",
4*561a1919SCedric van Putten    "scrapedAt": "2021-07-21T21:09:09Z"
5*561a1919SCedric van Putten  },
6*561a1919SCedric van Putten  "data": {
7*561a1919SCedric van Putten    "ACCEPT_HANDOVER": {
8*561a1919SCedric van Putten      "apiAdded": 28,
9*561a1919SCedric van Putten      "apiDeprecated": null,
10*561a1919SCedric van Putten      "apiReplaced": null,
11*561a1919SCedric van Putten      "name": "ACCEPT_HANDOVER",
12*561a1919SCedric van Putten      "description": "Allows a calling app to continue a call which was started in another app.",
13*561a1919SCedric van Putten      "explanation": "An example is a video calling app that wants to continue a voice call on the user's mobile network.",
14*561a1919SCedric van Putten      "constant": "android.permission.ACCEPT_HANDOVER",
15*561a1919SCedric van Putten      "protection": "dangerous",
16*561a1919SCedric van Putten      "warning": null
17*561a1919SCedric van Putten    },
18*561a1919SCedric van Putten    "ACCESS_BACKGROUND_LOCATION": {
19*561a1919SCedric van Putten      "apiAdded": 29,
20*561a1919SCedric van Putten      "apiDeprecated": null,
21*561a1919SCedric van Putten      "apiReplaced": null,
22*561a1919SCedric van Putten      "name": "ACCESS_BACKGROUND_LOCATION",
23*561a1919SCedric van Putten      "description": "Allows an app to access location in the background.",
24*561a1919SCedric van Putten      "explanation": "If you're requesting this permission, you must also request either <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#ACCESS_COARSE_LOCATION\">ACCESS_COARSE_LOCATION</a></code> or <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#ACCESS_FINE_LOCATION\">ACCESS_FINE_LOCATION</a></code>. Requesting this permission by itself doesn't give you location access.",
25*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_BACKGROUND_LOCATION",
26*561a1919SCedric van Putten      "protection": "dangerous",
27*561a1919SCedric van Putten      "warning": null
28*561a1919SCedric van Putten    },
29*561a1919SCedric van Putten    "ACCESS_BLOBS_ACROSS_USERS": {
30*561a1919SCedric van Putten      "apiAdded": 31,
31*561a1919SCedric van Putten      "apiDeprecated": null,
32*561a1919SCedric van Putten      "apiReplaced": null,
33*561a1919SCedric van Putten      "name": "ACCESS_BLOBS_ACROSS_USERS",
34*561a1919SCedric van Putten      "description": "Allows an application to access data blobs across users.",
35*561a1919SCedric van Putten      "explanation": null,
36*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_BLOBS_ACROSS_USERS",
37*561a1919SCedric van Putten      "protection": null,
38*561a1919SCedric van Putten      "warning": null
39*561a1919SCedric van Putten    },
40*561a1919SCedric van Putten    "ACCESS_CHECKIN_PROPERTIES": {
41*561a1919SCedric van Putten      "apiAdded": 1,
42*561a1919SCedric van Putten      "apiDeprecated": null,
43*561a1919SCedric van Putten      "apiReplaced": null,
44*561a1919SCedric van Putten      "name": "ACCESS_CHECKIN_PROPERTIES",
45*561a1919SCedric van Putten      "description": "Allows read/write access to the \"properties\" table in the checkin database, to change values that get uploaded.",
46*561a1919SCedric van Putten      "explanation": null,
47*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_CHECKIN_PROPERTIES",
48*561a1919SCedric van Putten      "protection": null,
49*561a1919SCedric van Putten      "warning": null
50*561a1919SCedric van Putten    },
51*561a1919SCedric van Putten    "ACCESS_COARSE_LOCATION": {
52*561a1919SCedric van Putten      "apiAdded": 1,
53*561a1919SCedric van Putten      "apiDeprecated": null,
54*561a1919SCedric van Putten      "apiReplaced": null,
55*561a1919SCedric van Putten      "name": "ACCESS_COARSE_LOCATION",
56*561a1919SCedric van Putten      "description": "Allows an app to access approximate location.",
57*561a1919SCedric van Putten      "explanation": null,
58*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_COARSE_LOCATION",
59*561a1919SCedric van Putten      "protection": "dangerous",
60*561a1919SCedric van Putten      "warning": null
61*561a1919SCedric van Putten    },
62*561a1919SCedric van Putten    "ACCESS_FINE_LOCATION": {
63*561a1919SCedric van Putten      "apiAdded": 1,
64*561a1919SCedric van Putten      "apiDeprecated": null,
65*561a1919SCedric van Putten      "apiReplaced": null,
66*561a1919SCedric van Putten      "name": "ACCESS_FINE_LOCATION",
67*561a1919SCedric van Putten      "description": "Allows an app to access precise location.",
68*561a1919SCedric van Putten      "explanation": null,
69*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_FINE_LOCATION",
70*561a1919SCedric van Putten      "protection": "dangerous",
71*561a1919SCedric van Putten      "warning": null
72*561a1919SCedric van Putten    },
73*561a1919SCedric van Putten    "ACCESS_LOCATION_EXTRA_COMMANDS": {
74*561a1919SCedric van Putten      "apiAdded": 1,
75*561a1919SCedric van Putten      "apiDeprecated": null,
76*561a1919SCedric van Putten      "apiReplaced": null,
77*561a1919SCedric van Putten      "name": "ACCESS_LOCATION_EXTRA_COMMANDS",
78*561a1919SCedric van Putten      "description": "Allows an application to access extra location provider commands.",
79*561a1919SCedric van Putten      "explanation": null,
80*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_LOCATION_EXTRA_COMMANDS",
81*561a1919SCedric van Putten      "protection": "normal",
82*561a1919SCedric van Putten      "warning": null
83*561a1919SCedric van Putten    },
84*561a1919SCedric van Putten    "ACCESS_MEDIA_LOCATION": {
85*561a1919SCedric van Putten      "apiAdded": 29,
86*561a1919SCedric van Putten      "apiDeprecated": null,
87*561a1919SCedric van Putten      "apiReplaced": null,
88*561a1919SCedric van Putten      "name": "ACCESS_MEDIA_LOCATION",
89*561a1919SCedric van Putten      "description": "Allows an application to access any geographic locations persisted in the user's shared collection.",
90*561a1919SCedric van Putten      "explanation": null,
91*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_MEDIA_LOCATION",
92*561a1919SCedric van Putten      "protection": "dangerous",
93*561a1919SCedric van Putten      "warning": null
94*561a1919SCedric van Putten    },
95*561a1919SCedric van Putten    "ACCESS_NETWORK_STATE": {
96*561a1919SCedric van Putten      "apiAdded": 1,
97*561a1919SCedric van Putten      "apiDeprecated": null,
98*561a1919SCedric van Putten      "apiReplaced": null,
99*561a1919SCedric van Putten      "name": "ACCESS_NETWORK_STATE",
100*561a1919SCedric van Putten      "description": "Allows applications to access information about networks.",
101*561a1919SCedric van Putten      "explanation": null,
102*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_NETWORK_STATE",
103*561a1919SCedric van Putten      "protection": "normal",
104*561a1919SCedric van Putten      "warning": null
105*561a1919SCedric van Putten    },
106*561a1919SCedric van Putten    "ACCESS_NOTIFICATION_POLICY": {
107*561a1919SCedric van Putten      "apiAdded": 23,
108*561a1919SCedric van Putten      "apiDeprecated": null,
109*561a1919SCedric van Putten      "apiReplaced": null,
110*561a1919SCedric van Putten      "name": "ACCESS_NOTIFICATION_POLICY",
111*561a1919SCedric van Putten      "description": "Marker permission for applications that wish to access notification policy.",
112*561a1919SCedric van Putten      "explanation": "This permission is not supported on managed profiles.",
113*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_NOTIFICATION_POLICY",
114*561a1919SCedric van Putten      "protection": "normal",
115*561a1919SCedric van Putten      "warning": null
116*561a1919SCedric van Putten    },
117*561a1919SCedric van Putten    "ACCESS_WIFI_STATE": {
118*561a1919SCedric van Putten      "apiAdded": 1,
119*561a1919SCedric van Putten      "apiDeprecated": null,
120*561a1919SCedric van Putten      "apiReplaced": null,
121*561a1919SCedric van Putten      "name": "ACCESS_WIFI_STATE",
122*561a1919SCedric van Putten      "description": "Allows applications to access information about Wi-Fi networks.",
123*561a1919SCedric van Putten      "explanation": null,
124*561a1919SCedric van Putten      "constant": "android.permission.ACCESS_WIFI_STATE",
125*561a1919SCedric van Putten      "protection": "normal",
126*561a1919SCedric van Putten      "warning": null
127*561a1919SCedric van Putten    },
128*561a1919SCedric van Putten    "ACCOUNT_MANAGER": {
129*561a1919SCedric van Putten      "apiAdded": 5,
130*561a1919SCedric van Putten      "apiDeprecated": null,
131*561a1919SCedric van Putten      "apiReplaced": null,
132*561a1919SCedric van Putten      "name": "ACCOUNT_MANAGER",
133*561a1919SCedric van Putten      "description": "Allows applications to call into AccountAuthenticators.",
134*561a1919SCedric van Putten      "explanation": null,
135*561a1919SCedric van Putten      "constant": "android.permission.ACCOUNT_MANAGER",
136*561a1919SCedric van Putten      "protection": null,
137*561a1919SCedric van Putten      "warning": null
138*561a1919SCedric van Putten    },
139*561a1919SCedric van Putten    "ACTIVITY_RECOGNITION": {
140*561a1919SCedric van Putten      "apiAdded": 29,
141*561a1919SCedric van Putten      "apiDeprecated": null,
142*561a1919SCedric van Putten      "apiReplaced": null,
143*561a1919SCedric van Putten      "name": "ACTIVITY_RECOGNITION",
144*561a1919SCedric van Putten      "description": "Allows an application to recognize physical activity.",
145*561a1919SCedric van Putten      "explanation": null,
146*561a1919SCedric van Putten      "constant": "android.permission.ACTIVITY_RECOGNITION",
147*561a1919SCedric van Putten      "protection": "dangerous",
148*561a1919SCedric van Putten      "warning": null
149*561a1919SCedric van Putten    },
150*561a1919SCedric van Putten    "ADD_VOICEMAIL": {
151*561a1919SCedric van Putten      "apiAdded": 14,
152*561a1919SCedric van Putten      "apiDeprecated": null,
153*561a1919SCedric van Putten      "apiReplaced": null,
154*561a1919SCedric van Putten      "name": "ADD_VOICEMAIL",
155*561a1919SCedric van Putten      "description": "Allows an application to add voicemails into the system.",
156*561a1919SCedric van Putten      "explanation": null,
157*561a1919SCedric van Putten      "constant": "com.android.voicemail.permission.ADD_VOICEMAIL",
158*561a1919SCedric van Putten      "protection": "dangerous",
159*561a1919SCedric van Putten      "warning": null
160*561a1919SCedric van Putten    },
161*561a1919SCedric van Putten    "ANSWER_PHONE_CALLS": {
162*561a1919SCedric van Putten      "apiAdded": 26,
163*561a1919SCedric van Putten      "apiDeprecated": null,
164*561a1919SCedric van Putten      "apiReplaced": null,
165*561a1919SCedric van Putten      "name": "ANSWER_PHONE_CALLS",
166*561a1919SCedric van Putten      "description": "Allows the app to answer an incoming phone call.",
167*561a1919SCedric van Putten      "explanation": null,
168*561a1919SCedric van Putten      "constant": "android.permission.ANSWER_PHONE_CALLS",
169*561a1919SCedric van Putten      "protection": "dangerous",
170*561a1919SCedric van Putten      "warning": null
171*561a1919SCedric van Putten    },
172*561a1919SCedric van Putten    "BATTERY_STATS": {
173*561a1919SCedric van Putten      "apiAdded": 1,
174*561a1919SCedric van Putten      "apiDeprecated": null,
175*561a1919SCedric van Putten      "apiReplaced": null,
176*561a1919SCedric van Putten      "name": "BATTERY_STATS",
177*561a1919SCedric van Putten      "description": "Allows an application to collect battery statistics",
178*561a1919SCedric van Putten      "explanation": null,
179*561a1919SCedric van Putten      "constant": "android.permission.BATTERY_STATS",
180*561a1919SCedric van Putten      "protection": "signature|privileged|development",
181*561a1919SCedric van Putten      "warning": null
182*561a1919SCedric van Putten    },
183*561a1919SCedric van Putten    "BIND_ACCESSIBILITY_SERVICE": {
184*561a1919SCedric van Putten      "apiAdded": 16,
185*561a1919SCedric van Putten      "apiDeprecated": null,
186*561a1919SCedric van Putten      "apiReplaced": null,
187*561a1919SCedric van Putten      "name": "BIND_ACCESSIBILITY_SERVICE",
188*561a1919SCedric van Putten      "description": "Must be required by an AccessibilityService, to ensure that only the system can bind to it.",
189*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/accessibilityservice/AccessibilityService\">AccessibilityService</a></code>, to ensure that only the system can bind to it.",
190*561a1919SCedric van Putten      "constant": "android.permission.BIND_ACCESSIBILITY_SERVICE",
191*561a1919SCedric van Putten      "protection": "signature",
192*561a1919SCedric van Putten      "warning": null
193*561a1919SCedric van Putten    },
194*561a1919SCedric van Putten    "BIND_APPWIDGET": {
195*561a1919SCedric van Putten      "apiAdded": 3,
196*561a1919SCedric van Putten      "apiDeprecated": null,
197*561a1919SCedric van Putten      "apiReplaced": null,
198*561a1919SCedric van Putten      "name": "BIND_APPWIDGET",
199*561a1919SCedric van Putten      "description": "Allows an application to tell the AppWidget service which application can access AppWidget's data.",
200*561a1919SCedric van Putten      "explanation": "The normal user flow is that a user picks an AppWidget to go into a particular host, thereby giving that host application access to the private data from the AppWidget app. An application that has this permission should honor that contract.",
201*561a1919SCedric van Putten      "constant": "android.permission.BIND_APPWIDGET",
202*561a1919SCedric van Putten      "protection": null,
203*561a1919SCedric van Putten      "warning": null
204*561a1919SCedric van Putten    },
205*561a1919SCedric van Putten    "BIND_AUTOFILL_SERVICE": {
206*561a1919SCedric van Putten      "apiAdded": 26,
207*561a1919SCedric van Putten      "apiDeprecated": null,
208*561a1919SCedric van Putten      "apiReplaced": null,
209*561a1919SCedric van Putten      "name": "BIND_AUTOFILL_SERVICE",
210*561a1919SCedric van Putten      "description": "Must be required by a AutofillService, to ensure that only the system can bind to it.",
211*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/autofill/AutofillService\">AutofillService</a></code>, to ensure that only the system can bind to it.",
212*561a1919SCedric van Putten      "constant": "android.permission.BIND_AUTOFILL_SERVICE",
213*561a1919SCedric van Putten      "protection": "signature",
214*561a1919SCedric van Putten      "warning": null
215*561a1919SCedric van Putten    },
216*561a1919SCedric van Putten    "BIND_CALL_REDIRECTION_SERVICE": {
217*561a1919SCedric van Putten      "apiAdded": 29,
218*561a1919SCedric van Putten      "apiDeprecated": null,
219*561a1919SCedric van Putten      "apiReplaced": null,
220*561a1919SCedric van Putten      "name": "BIND_CALL_REDIRECTION_SERVICE",
221*561a1919SCedric van Putten      "description": "Must be required by a CallRedirectionService, to ensure that only the system can bind to it.",
222*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/CallRedirectionService\">CallRedirectionService</a></code>, to ensure that only the system can bind to it.",
223*561a1919SCedric van Putten      "constant": "android.permission.BIND_CALL_REDIRECTION_SERVICE",
224*561a1919SCedric van Putten      "protection": "signature|privileged",
225*561a1919SCedric van Putten      "warning": null
226*561a1919SCedric van Putten    },
227*561a1919SCedric van Putten    "BIND_CARRIER_MESSAGING_CLIENT_SERVICE": {
228*561a1919SCedric van Putten      "apiAdded": 29,
229*561a1919SCedric van Putten      "apiDeprecated": null,
230*561a1919SCedric van Putten      "apiReplaced": null,
231*561a1919SCedric van Putten      "name": "BIND_CARRIER_MESSAGING_CLIENT_SERVICE",
232*561a1919SCedric van Putten      "description": "A subclass of CarrierMessagingClientService must be protected with this permission.",
233*561a1919SCedric van Putten      "explanation": "A subclass of <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/carrier/CarrierMessagingClientService\">CarrierMessagingClientService</a></code> must be protected with this permission.",
234*561a1919SCedric van Putten      "constant": "android.permission.BIND_CARRIER_MESSAGING_CLIENT_SERVICE",
235*561a1919SCedric van Putten      "protection": "signature",
236*561a1919SCedric van Putten      "warning": null
237*561a1919SCedric van Putten    },
238*561a1919SCedric van Putten    "BIND_CARRIER_MESSAGING_SERVICE": {
239*561a1919SCedric van Putten      "apiAdded": 22,
240*561a1919SCedric van Putten      "apiDeprecated": 23,
241*561a1919SCedric van Putten      "apiReplaced": "BIND_CARRIER_SERVICES",
242*561a1919SCedric van Putten      "name": "BIND_CARRIER_MESSAGING_SERVICE",
243*561a1919SCedric van Putten      "description": "",
244*561a1919SCedric van Putten      "explanation": null,
245*561a1919SCedric van Putten      "constant": "android.permission.BIND_CARRIER_MESSAGING_SERVICE",
246*561a1919SCedric van Putten      "protection": null,
247*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 23. Use BIND_CARRIER_SERVICES instead"
248*561a1919SCedric van Putten    },
249*561a1919SCedric van Putten    "BIND_CARRIER_SERVICES": {
250*561a1919SCedric van Putten      "apiAdded": 23,
251*561a1919SCedric van Putten      "apiDeprecated": null,
252*561a1919SCedric van Putten      "apiReplaced": null,
253*561a1919SCedric van Putten      "name": "BIND_CARRIER_SERVICES",
254*561a1919SCedric van Putten      "description": "The system process that is allowed to bind to services in carrier apps will have this permission.",
255*561a1919SCedric van Putten      "explanation": "Carrier apps should use this permission to protect their services that only the system is allowed to bind to.",
256*561a1919SCedric van Putten      "constant": "android.permission.BIND_CARRIER_SERVICES",
257*561a1919SCedric van Putten      "protection": "signature|privileged",
258*561a1919SCedric van Putten      "warning": null
259*561a1919SCedric van Putten    },
260*561a1919SCedric van Putten    "BIND_CHOOSER_TARGET_SERVICE": {
261*561a1919SCedric van Putten      "apiAdded": 23,
262*561a1919SCedric van Putten      "apiDeprecated": 30,
263*561a1919SCedric van Putten      "apiReplaced": null,
264*561a1919SCedric van Putten      "name": "BIND_CHOOSER_TARGET_SERVICE",
265*561a1919SCedric van Putten      "description": "",
266*561a1919SCedric van Putten      "explanation": null,
267*561a1919SCedric van Putten      "constant": "android.permission.BIND_CHOOSER_TARGET_SERVICE",
268*561a1919SCedric van Putten      "protection": "signature",
269*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 30. For publishing direct share targets, please follow the instructions in https://developer.android.com/training/sharing/receive.html#providing-direct-share-targets instead."
270*561a1919SCedric van Putten    },
271*561a1919SCedric van Putten    "BIND_COMPANION_DEVICE_SERVICE": {
272*561a1919SCedric van Putten      "apiAdded": 31,
273*561a1919SCedric van Putten      "apiDeprecated": null,
274*561a1919SCedric van Putten      "apiReplaced": null,
275*561a1919SCedric van Putten      "name": "BIND_COMPANION_DEVICE_SERVICE",
276*561a1919SCedric van Putten      "description": "Must be required by any CompanionDeviceServices to ensure that only the system can bind to it.",
277*561a1919SCedric van Putten      "explanation": "Must be required by any <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/companion/CompanionDeviceService\">CompanionDeviceService</a></code>s to ensure that only the system can bind to it.",
278*561a1919SCedric van Putten      "constant": "android.permission.BIND_COMPANION_DEVICE_SERVICE",
279*561a1919SCedric van Putten      "protection": null,
280*561a1919SCedric van Putten      "warning": null
281*561a1919SCedric van Putten    },
282*561a1919SCedric van Putten    "BIND_CONDITION_PROVIDER_SERVICE": {
283*561a1919SCedric van Putten      "apiAdded": 24,
284*561a1919SCedric van Putten      "apiDeprecated": null,
285*561a1919SCedric van Putten      "apiReplaced": null,
286*561a1919SCedric van Putten      "name": "BIND_CONDITION_PROVIDER_SERVICE",
287*561a1919SCedric van Putten      "description": "Must be required by a ConditionProviderService, to ensure that only the system can bind to it.",
288*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/notification/ConditionProviderService\">ConditionProviderService</a></code>, to ensure that only the system can bind to it.",
289*561a1919SCedric van Putten      "constant": "android.permission.BIND_CONDITION_PROVIDER_SERVICE",
290*561a1919SCedric van Putten      "protection": "signature",
291*561a1919SCedric van Putten      "warning": null
292*561a1919SCedric van Putten    },
293*561a1919SCedric van Putten    "BIND_CONTROLS": {
294*561a1919SCedric van Putten      "apiAdded": 30,
295*561a1919SCedric van Putten      "apiDeprecated": null,
296*561a1919SCedric van Putten      "apiReplaced": null,
297*561a1919SCedric van Putten      "name": "BIND_CONTROLS",
298*561a1919SCedric van Putten      "description": "Allows SystemUI to request third party controls.",
299*561a1919SCedric van Putten      "explanation": null,
300*561a1919SCedric van Putten      "constant": "android.permission.BIND_CONTROLS",
301*561a1919SCedric van Putten      "protection": null,
302*561a1919SCedric van Putten      "warning": null
303*561a1919SCedric van Putten    },
304*561a1919SCedric van Putten    "BIND_DEVICE_ADMIN": {
305*561a1919SCedric van Putten      "apiAdded": 8,
306*561a1919SCedric van Putten      "apiDeprecated": null,
307*561a1919SCedric van Putten      "apiReplaced": null,
308*561a1919SCedric van Putten      "name": "BIND_DEVICE_ADMIN",
309*561a1919SCedric van Putten      "description": "Must be required by device administration receiver, to ensure that only the system can interact with it.",
310*561a1919SCedric van Putten      "explanation": null,
311*561a1919SCedric van Putten      "constant": "android.permission.BIND_DEVICE_ADMIN",
312*561a1919SCedric van Putten      "protection": "signature",
313*561a1919SCedric van Putten      "warning": null
314*561a1919SCedric van Putten    },
315*561a1919SCedric van Putten    "BIND_DREAM_SERVICE": {
316*561a1919SCedric van Putten      "apiAdded": 21,
317*561a1919SCedric van Putten      "apiDeprecated": null,
318*561a1919SCedric van Putten      "apiReplaced": null,
319*561a1919SCedric van Putten      "name": "BIND_DREAM_SERVICE",
320*561a1919SCedric van Putten      "description": "Must be required by an DreamService, to ensure that only the system can bind to it.",
321*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/dreams/DreamService\">DreamService</a></code>, to ensure that only the system can bind to it.",
322*561a1919SCedric van Putten      "constant": "android.permission.BIND_DREAM_SERVICE",
323*561a1919SCedric van Putten      "protection": "signature",
324*561a1919SCedric van Putten      "warning": null
325*561a1919SCedric van Putten    },
326*561a1919SCedric van Putten    "BIND_INCALL_SERVICE": {
327*561a1919SCedric van Putten      "apiAdded": 23,
328*561a1919SCedric van Putten      "apiDeprecated": null,
329*561a1919SCedric van Putten      "apiReplaced": null,
330*561a1919SCedric van Putten      "name": "BIND_INCALL_SERVICE",
331*561a1919SCedric van Putten      "description": "Must be required by a InCallService, to ensure that only the system can bind to it.",
332*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/InCallService\">InCallService</a></code>, to ensure that only the system can bind to it.",
333*561a1919SCedric van Putten      "constant": "android.permission.BIND_INCALL_SERVICE",
334*561a1919SCedric van Putten      "protection": "signature|privileged",
335*561a1919SCedric van Putten      "warning": null
336*561a1919SCedric van Putten    },
337*561a1919SCedric van Putten    "BIND_INPUT_METHOD": {
338*561a1919SCedric van Putten      "apiAdded": 3,
339*561a1919SCedric van Putten      "apiDeprecated": null,
340*561a1919SCedric van Putten      "apiReplaced": null,
341*561a1919SCedric van Putten      "name": "BIND_INPUT_METHOD",
342*561a1919SCedric van Putten      "description": "Must be required by an InputMethodService, to ensure that only the system can bind to it.",
343*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/inputmethodservice/InputMethodService\">InputMethodService</a></code>, to ensure that only the system can bind to it.",
344*561a1919SCedric van Putten      "constant": "android.permission.BIND_INPUT_METHOD",
345*561a1919SCedric van Putten      "protection": "signature",
346*561a1919SCedric van Putten      "warning": null
347*561a1919SCedric van Putten    },
348*561a1919SCedric van Putten    "BIND_MIDI_DEVICE_SERVICE": {
349*561a1919SCedric van Putten      "apiAdded": 23,
350*561a1919SCedric van Putten      "apiDeprecated": null,
351*561a1919SCedric van Putten      "apiReplaced": null,
352*561a1919SCedric van Putten      "name": "BIND_MIDI_DEVICE_SERVICE",
353*561a1919SCedric van Putten      "description": "Must be required by an MidiDeviceService, to ensure that only the system can bind to it.",
354*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/media/midi/MidiDeviceService\">MidiDeviceService</a></code>, to ensure that only the system can bind to it.",
355*561a1919SCedric van Putten      "constant": "android.permission.BIND_MIDI_DEVICE_SERVICE",
356*561a1919SCedric van Putten      "protection": "signature",
357*561a1919SCedric van Putten      "warning": null
358*561a1919SCedric van Putten    },
359*561a1919SCedric van Putten    "BIND_NFC_SERVICE": {
360*561a1919SCedric van Putten      "apiAdded": 19,
361*561a1919SCedric van Putten      "apiDeprecated": null,
362*561a1919SCedric van Putten      "apiReplaced": null,
363*561a1919SCedric van Putten      "name": "BIND_NFC_SERVICE",
364*561a1919SCedric van Putten      "description": "Must be required by a HostApduService or OffHostApduService to ensure that only the system can bind to it.",
365*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/nfc/cardemulation/HostApduService\">HostApduService</a></code> or <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/nfc/cardemulation/OffHostApduService\">OffHostApduService</a></code> to ensure that only the system can bind to it.",
366*561a1919SCedric van Putten      "constant": "android.permission.BIND_NFC_SERVICE",
367*561a1919SCedric van Putten      "protection": "signature",
368*561a1919SCedric van Putten      "warning": null
369*561a1919SCedric van Putten    },
370*561a1919SCedric van Putten    "BIND_NOTIFICATION_LISTENER_SERVICE": {
371*561a1919SCedric van Putten      "apiAdded": 18,
372*561a1919SCedric van Putten      "apiDeprecated": null,
373*561a1919SCedric van Putten      "apiReplaced": null,
374*561a1919SCedric van Putten      "name": "BIND_NOTIFICATION_LISTENER_SERVICE",
375*561a1919SCedric van Putten      "description": "Must be required by an NotificationListenerService, to ensure that only the system can bind to it.",
376*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/notification/NotificationListenerService\">NotificationListenerService</a></code>, to ensure that only the system can bind to it.",
377*561a1919SCedric van Putten      "constant": "android.permission.BIND_NOTIFICATION_LISTENER_SERVICE",
378*561a1919SCedric van Putten      "protection": "signature",
379*561a1919SCedric van Putten      "warning": null
380*561a1919SCedric van Putten    },
381*561a1919SCedric van Putten    "BIND_PRINT_SERVICE": {
382*561a1919SCedric van Putten      "apiAdded": 19,
383*561a1919SCedric van Putten      "apiDeprecated": null,
384*561a1919SCedric van Putten      "apiReplaced": null,
385*561a1919SCedric van Putten      "name": "BIND_PRINT_SERVICE",
386*561a1919SCedric van Putten      "description": "Must be required by a PrintService, to ensure that only the system can bind to it.",
387*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/printservice/PrintService\">PrintService</a></code>, to ensure that only the system can bind to it.",
388*561a1919SCedric van Putten      "constant": "android.permission.BIND_PRINT_SERVICE",
389*561a1919SCedric van Putten      "protection": "signature",
390*561a1919SCedric van Putten      "warning": null
391*561a1919SCedric van Putten    },
392*561a1919SCedric van Putten    "BIND_QUICK_ACCESS_WALLET_SERVICE": {
393*561a1919SCedric van Putten      "apiAdded": 30,
394*561a1919SCedric van Putten      "apiDeprecated": null,
395*561a1919SCedric van Putten      "apiReplaced": null,
396*561a1919SCedric van Putten      "name": "BIND_QUICK_ACCESS_WALLET_SERVICE",
397*561a1919SCedric van Putten      "description": "Must be required by a QuickAccessWalletService to ensure that only the system can bind to it.",
398*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/quickaccesswallet/QuickAccessWalletService\">QuickAccessWalletService</a></code> to ensure that only the system can bind to it.",
399*561a1919SCedric van Putten      "constant": "android.permission.BIND_QUICK_ACCESS_WALLET_SERVICE",
400*561a1919SCedric van Putten      "protection": "signature",
401*561a1919SCedric van Putten      "warning": null
402*561a1919SCedric van Putten    },
403*561a1919SCedric van Putten    "BIND_QUICK_SETTINGS_TILE": {
404*561a1919SCedric van Putten      "apiAdded": 24,
405*561a1919SCedric van Putten      "apiDeprecated": null,
406*561a1919SCedric van Putten      "apiReplaced": null,
407*561a1919SCedric van Putten      "name": "BIND_QUICK_SETTINGS_TILE",
408*561a1919SCedric van Putten      "description": "Allows an application to bind to third party quick settings tiles.",
409*561a1919SCedric van Putten      "explanation": null,
410*561a1919SCedric van Putten      "constant": "android.permission.BIND_QUICK_SETTINGS_TILE",
411*561a1919SCedric van Putten      "protection": null,
412*561a1919SCedric van Putten      "warning": null
413*561a1919SCedric van Putten    },
414*561a1919SCedric van Putten    "BIND_REMOTEVIEWS": {
415*561a1919SCedric van Putten      "apiAdded": 11,
416*561a1919SCedric van Putten      "apiDeprecated": null,
417*561a1919SCedric van Putten      "apiReplaced": null,
418*561a1919SCedric van Putten      "name": "BIND_REMOTEVIEWS",
419*561a1919SCedric van Putten      "description": "Must be required by a RemoteViewsService, to ensure that only the system can bind to it.",
420*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/widget/RemoteViewsService\">RemoteViewsService</a></code>, to ensure that only the system can bind to it.",
421*561a1919SCedric van Putten      "constant": "android.permission.BIND_REMOTEVIEWS",
422*561a1919SCedric van Putten      "protection": "signature|privileged",
423*561a1919SCedric van Putten      "warning": null
424*561a1919SCedric van Putten    },
425*561a1919SCedric van Putten    "BIND_SCREENING_SERVICE": {
426*561a1919SCedric van Putten      "apiAdded": 24,
427*561a1919SCedric van Putten      "apiDeprecated": null,
428*561a1919SCedric van Putten      "apiReplaced": null,
429*561a1919SCedric van Putten      "name": "BIND_SCREENING_SERVICE",
430*561a1919SCedric van Putten      "description": "Must be required by a CallScreeningService, to ensure that only the system can bind to it.",
431*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/CallScreeningService\">CallScreeningService</a></code>, to ensure that only the system can bind to it.",
432*561a1919SCedric van Putten      "constant": "android.permission.BIND_SCREENING_SERVICE",
433*561a1919SCedric van Putten      "protection": "signature|privileged",
434*561a1919SCedric van Putten      "warning": null
435*561a1919SCedric van Putten    },
436*561a1919SCedric van Putten    "BIND_TELECOM_CONNECTION_SERVICE": {
437*561a1919SCedric van Putten      "apiAdded": 23,
438*561a1919SCedric van Putten      "apiDeprecated": null,
439*561a1919SCedric van Putten      "apiReplaced": null,
440*561a1919SCedric van Putten      "name": "BIND_TELECOM_CONNECTION_SERVICE",
441*561a1919SCedric van Putten      "description": "Must be required by a ConnectionService, to ensure that only the system can bind to it.",
442*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/ConnectionService\">ConnectionService</a></code>, to ensure that only the system can bind to it.",
443*561a1919SCedric van Putten      "constant": "android.permission.BIND_TELECOM_CONNECTION_SERVICE",
444*561a1919SCedric van Putten      "protection": "signature|privileged",
445*561a1919SCedric van Putten      "warning": null
446*561a1919SCedric van Putten    },
447*561a1919SCedric van Putten    "BIND_TEXT_SERVICE": {
448*561a1919SCedric van Putten      "apiAdded": 14,
449*561a1919SCedric van Putten      "apiDeprecated": null,
450*561a1919SCedric van Putten      "apiReplaced": null,
451*561a1919SCedric van Putten      "name": "BIND_TEXT_SERVICE",
452*561a1919SCedric van Putten      "description": "Must be required by a TextService (e.g.",
453*561a1919SCedric van Putten      "explanation": "&nbsp;SpellCheckerService) to ensure that only the system can bind to it.",
454*561a1919SCedric van Putten      "constant": "android.permission.BIND_TEXT_SERVICE",
455*561a1919SCedric van Putten      "protection": "signature",
456*561a1919SCedric van Putten      "warning": null
457*561a1919SCedric van Putten    },
458*561a1919SCedric van Putten    "BIND_TV_INPUT": {
459*561a1919SCedric van Putten      "apiAdded": 21,
460*561a1919SCedric van Putten      "apiDeprecated": null,
461*561a1919SCedric van Putten      "apiReplaced": null,
462*561a1919SCedric van Putten      "name": "BIND_TV_INPUT",
463*561a1919SCedric van Putten      "description": "Must be required by a TvInputService to ensure that only the system can bind to it.",
464*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/media/tv/TvInputService\">TvInputService</a></code> to ensure that only the system can bind to it.",
465*561a1919SCedric van Putten      "constant": "android.permission.BIND_TV_INPUT",
466*561a1919SCedric van Putten      "protection": "signature|privileged",
467*561a1919SCedric van Putten      "warning": null
468*561a1919SCedric van Putten    },
469*561a1919SCedric van Putten    "BIND_VISUAL_VOICEMAIL_SERVICE": {
470*561a1919SCedric van Putten      "apiAdded": 26,
471*561a1919SCedric van Putten      "apiDeprecated": null,
472*561a1919SCedric van Putten      "apiReplaced": null,
473*561a1919SCedric van Putten      "name": "BIND_VISUAL_VOICEMAIL_SERVICE",
474*561a1919SCedric van Putten      "description": "Must be required by a link VisualVoicemailService to ensure that only the system can bind to it.",
475*561a1919SCedric van Putten      "explanation": "Must be required by a link <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telephony/VisualVoicemailService\">VisualVoicemailService</a></code> to ensure that only the system can bind to it.",
476*561a1919SCedric van Putten      "constant": "android.permission.BIND_VISUAL_VOICEMAIL_SERVICE",
477*561a1919SCedric van Putten      "protection": "signature|privileged",
478*561a1919SCedric van Putten      "warning": null
479*561a1919SCedric van Putten    },
480*561a1919SCedric van Putten    "BIND_VOICE_INTERACTION": {
481*561a1919SCedric van Putten      "apiAdded": 21,
482*561a1919SCedric van Putten      "apiDeprecated": null,
483*561a1919SCedric van Putten      "apiReplaced": null,
484*561a1919SCedric van Putten      "name": "BIND_VOICE_INTERACTION",
485*561a1919SCedric van Putten      "description": "Must be required by a VoiceInteractionService, to ensure that only the system can bind to it.",
486*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/voice/VoiceInteractionService\">VoiceInteractionService</a></code>, to ensure that only the system can bind to it.",
487*561a1919SCedric van Putten      "constant": "android.permission.BIND_VOICE_INTERACTION",
488*561a1919SCedric van Putten      "protection": "signature",
489*561a1919SCedric van Putten      "warning": null
490*561a1919SCedric van Putten    },
491*561a1919SCedric van Putten    "BIND_VPN_SERVICE": {
492*561a1919SCedric van Putten      "apiAdded": 14,
493*561a1919SCedric van Putten      "apiDeprecated": null,
494*561a1919SCedric van Putten      "apiReplaced": null,
495*561a1919SCedric van Putten      "name": "BIND_VPN_SERVICE",
496*561a1919SCedric van Putten      "description": "Must be required by a VpnService, to ensure that only the system can bind to it.",
497*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/net/VpnService\">VpnService</a></code>, to ensure that only the system can bind to it.",
498*561a1919SCedric van Putten      "constant": "android.permission.BIND_VPN_SERVICE",
499*561a1919SCedric van Putten      "protection": "signature",
500*561a1919SCedric van Putten      "warning": null
501*561a1919SCedric van Putten    },
502*561a1919SCedric van Putten    "BIND_VR_LISTENER_SERVICE": {
503*561a1919SCedric van Putten      "apiAdded": 24,
504*561a1919SCedric van Putten      "apiDeprecated": null,
505*561a1919SCedric van Putten      "apiReplaced": null,
506*561a1919SCedric van Putten      "name": "BIND_VR_LISTENER_SERVICE",
507*561a1919SCedric van Putten      "description": "Must be required by an VrListenerService, to ensure that only the system can bind to it.",
508*561a1919SCedric van Putten      "explanation": "Must be required by an <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/vr/VrListenerService\">VrListenerService</a></code>, to ensure that only the system can bind to it.",
509*561a1919SCedric van Putten      "constant": "android.permission.BIND_VR_LISTENER_SERVICE",
510*561a1919SCedric van Putten      "protection": "signature",
511*561a1919SCedric van Putten      "warning": null
512*561a1919SCedric van Putten    },
513*561a1919SCedric van Putten    "BIND_WALLPAPER": {
514*561a1919SCedric van Putten      "apiAdded": 8,
515*561a1919SCedric van Putten      "apiDeprecated": null,
516*561a1919SCedric van Putten      "apiReplaced": null,
517*561a1919SCedric van Putten      "name": "BIND_WALLPAPER",
518*561a1919SCedric van Putten      "description": "Must be required by a WallpaperService, to ensure that only the system can bind to it.",
519*561a1919SCedric van Putten      "explanation": "Must be required by a <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/service/wallpaper/WallpaperService\">WallpaperService</a></code>, to ensure that only the system can bind to it.",
520*561a1919SCedric van Putten      "constant": "android.permission.BIND_WALLPAPER",
521*561a1919SCedric van Putten      "protection": "signature|privileged",
522*561a1919SCedric van Putten      "warning": null
523*561a1919SCedric van Putten    },
524*561a1919SCedric van Putten    "BLUETOOTH": {
525*561a1919SCedric van Putten      "apiAdded": 1,
526*561a1919SCedric van Putten      "apiDeprecated": null,
527*561a1919SCedric van Putten      "apiReplaced": null,
528*561a1919SCedric van Putten      "name": "BLUETOOTH",
529*561a1919SCedric van Putten      "description": "Allows applications to connect to paired bluetooth devices.",
530*561a1919SCedric van Putten      "explanation": null,
531*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH",
532*561a1919SCedric van Putten      "protection": "normal",
533*561a1919SCedric van Putten      "warning": null
534*561a1919SCedric van Putten    },
535*561a1919SCedric van Putten    "BLUETOOTH_ADMIN": {
536*561a1919SCedric van Putten      "apiAdded": 1,
537*561a1919SCedric van Putten      "apiDeprecated": null,
538*561a1919SCedric van Putten      "apiReplaced": null,
539*561a1919SCedric van Putten      "name": "BLUETOOTH_ADMIN",
540*561a1919SCedric van Putten      "description": "Allows applications to discover and pair bluetooth devices.",
541*561a1919SCedric van Putten      "explanation": null,
542*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH_ADMIN",
543*561a1919SCedric van Putten      "protection": "normal",
544*561a1919SCedric van Putten      "warning": null
545*561a1919SCedric van Putten    },
546*561a1919SCedric van Putten    "BLUETOOTH_ADVERTISE": {
547*561a1919SCedric van Putten      "apiAdded": 31,
548*561a1919SCedric van Putten      "apiDeprecated": null,
549*561a1919SCedric van Putten      "apiReplaced": null,
550*561a1919SCedric van Putten      "name": "BLUETOOTH_ADVERTISE",
551*561a1919SCedric van Putten      "description": "Required to be able to advertise to nearby Bluetooth devices.",
552*561a1919SCedric van Putten      "explanation": null,
553*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH_ADVERTISE",
554*561a1919SCedric van Putten      "protection": "dangerous",
555*561a1919SCedric van Putten      "warning": null
556*561a1919SCedric van Putten    },
557*561a1919SCedric van Putten    "BLUETOOTH_CONNECT": {
558*561a1919SCedric van Putten      "apiAdded": 31,
559*561a1919SCedric van Putten      "apiDeprecated": null,
560*561a1919SCedric van Putten      "apiReplaced": null,
561*561a1919SCedric van Putten      "name": "BLUETOOTH_CONNECT",
562*561a1919SCedric van Putten      "description": "Required to be able to connect to paired Bluetooth devices.",
563*561a1919SCedric van Putten      "explanation": null,
564*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH_CONNECT",
565*561a1919SCedric van Putten      "protection": "dangerous",
566*561a1919SCedric van Putten      "warning": null
567*561a1919SCedric van Putten    },
568*561a1919SCedric van Putten    "BLUETOOTH_PRIVILEGED": {
569*561a1919SCedric van Putten      "apiAdded": 19,
570*561a1919SCedric van Putten      "apiDeprecated": null,
571*561a1919SCedric van Putten      "apiReplaced": null,
572*561a1919SCedric van Putten      "name": "BLUETOOTH_PRIVILEGED",
573*561a1919SCedric van Putten      "description": "Allows applications to pair bluetooth devices without user interaction, and to allow or disallow phonebook access or message access.",
574*561a1919SCedric van Putten      "explanation": null,
575*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH_PRIVILEGED",
576*561a1919SCedric van Putten      "protection": null,
577*561a1919SCedric van Putten      "warning": null
578*561a1919SCedric van Putten    },
579*561a1919SCedric van Putten    "BLUETOOTH_SCAN": {
580*561a1919SCedric van Putten      "apiAdded": 31,
581*561a1919SCedric van Putten      "apiDeprecated": null,
582*561a1919SCedric van Putten      "apiReplaced": null,
583*561a1919SCedric van Putten      "name": "BLUETOOTH_SCAN",
584*561a1919SCedric van Putten      "description": "Required to be able to discover and pair nearby Bluetooth devices.",
585*561a1919SCedric van Putten      "explanation": null,
586*561a1919SCedric van Putten      "constant": "android.permission.BLUETOOTH_SCAN",
587*561a1919SCedric van Putten      "protection": "dangerous",
588*561a1919SCedric van Putten      "warning": null
589*561a1919SCedric van Putten    },
590*561a1919SCedric van Putten    "BODY_SENSORS": {
591*561a1919SCedric van Putten      "apiAdded": 20,
592*561a1919SCedric van Putten      "apiDeprecated": null,
593*561a1919SCedric van Putten      "apiReplaced": null,
594*561a1919SCedric van Putten      "name": "BODY_SENSORS",
595*561a1919SCedric van Putten      "description": "Allows an application to access data from sensors that the user uses to measure what is happening inside their body, such as heart rate.",
596*561a1919SCedric van Putten      "explanation": null,
597*561a1919SCedric van Putten      "constant": "android.permission.BODY_SENSORS",
598*561a1919SCedric van Putten      "protection": "dangerous",
599*561a1919SCedric van Putten      "warning": null
600*561a1919SCedric van Putten    },
601*561a1919SCedric van Putten    "BROADCAST_PACKAGE_REMOVED": {
602*561a1919SCedric van Putten      "apiAdded": 1,
603*561a1919SCedric van Putten      "apiDeprecated": null,
604*561a1919SCedric van Putten      "apiReplaced": null,
605*561a1919SCedric van Putten      "name": "BROADCAST_PACKAGE_REMOVED",
606*561a1919SCedric van Putten      "description": "Allows an application to broadcast a notification that an application package has been removed.",
607*561a1919SCedric van Putten      "explanation": null,
608*561a1919SCedric van Putten      "constant": "android.permission.BROADCAST_PACKAGE_REMOVED",
609*561a1919SCedric van Putten      "protection": null,
610*561a1919SCedric van Putten      "warning": null
611*561a1919SCedric van Putten    },
612*561a1919SCedric van Putten    "BROADCAST_SMS": {
613*561a1919SCedric van Putten      "apiAdded": 2,
614*561a1919SCedric van Putten      "apiDeprecated": null,
615*561a1919SCedric van Putten      "apiReplaced": null,
616*561a1919SCedric van Putten      "name": "BROADCAST_SMS",
617*561a1919SCedric van Putten      "description": "Allows an application to broadcast an SMS receipt notification.",
618*561a1919SCedric van Putten      "explanation": null,
619*561a1919SCedric van Putten      "constant": "android.permission.BROADCAST_SMS",
620*561a1919SCedric van Putten      "protection": null,
621*561a1919SCedric van Putten      "warning": null
622*561a1919SCedric van Putten    },
623*561a1919SCedric van Putten    "BROADCAST_STICKY": {
624*561a1919SCedric van Putten      "apiAdded": 1,
625*561a1919SCedric van Putten      "apiDeprecated": null,
626*561a1919SCedric van Putten      "apiReplaced": null,
627*561a1919SCedric van Putten      "name": "BROADCAST_STICKY",
628*561a1919SCedric van Putten      "description": "Allows an application to broadcast sticky intents.",
629*561a1919SCedric van Putten      "explanation": "These are broadcasts whose data is held by the system after being finished, so that clients can quickly retrieve that data without having to wait for the next broadcast.",
630*561a1919SCedric van Putten      "constant": "android.permission.BROADCAST_STICKY",
631*561a1919SCedric van Putten      "protection": "normal",
632*561a1919SCedric van Putten      "warning": null
633*561a1919SCedric van Putten    },
634*561a1919SCedric van Putten    "BROADCAST_WAP_PUSH": {
635*561a1919SCedric van Putten      "apiAdded": 2,
636*561a1919SCedric van Putten      "apiDeprecated": null,
637*561a1919SCedric van Putten      "apiReplaced": null,
638*561a1919SCedric van Putten      "name": "BROADCAST_WAP_PUSH",
639*561a1919SCedric van Putten      "description": "Allows an application to broadcast a WAP PUSH receipt notification.",
640*561a1919SCedric van Putten      "explanation": null,
641*561a1919SCedric van Putten      "constant": "android.permission.BROADCAST_WAP_PUSH",
642*561a1919SCedric van Putten      "protection": null,
643*561a1919SCedric van Putten      "warning": null
644*561a1919SCedric van Putten    },
645*561a1919SCedric van Putten    "CALL_COMPANION_APP": {
646*561a1919SCedric van Putten      "apiAdded": 29,
647*561a1919SCedric van Putten      "apiDeprecated": null,
648*561a1919SCedric van Putten      "apiReplaced": null,
649*561a1919SCedric van Putten      "name": "CALL_COMPANION_APP",
650*561a1919SCedric van Putten      "description": "Allows an app which implements the InCallService API to be eligible to be enabled as a calling companion app.",
651*561a1919SCedric van Putten      "explanation": "Allows an app which implements the <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/InCallService\">InCallService</a></code> API to be eligible to be enabled as a calling companion app. This means that the Telecom framework will bind to the app's InCallService implementation when there are calls active. The app can use the InCallService API to view information about calls on the system and control these calls.",
652*561a1919SCedric van Putten      "constant": "android.permission.CALL_COMPANION_APP",
653*561a1919SCedric van Putten      "protection": "normal",
654*561a1919SCedric van Putten      "warning": null
655*561a1919SCedric van Putten    },
656*561a1919SCedric van Putten    "CALL_PHONE": {
657*561a1919SCedric van Putten      "apiAdded": 1,
658*561a1919SCedric van Putten      "apiDeprecated": null,
659*561a1919SCedric van Putten      "apiReplaced": null,
660*561a1919SCedric van Putten      "name": "CALL_PHONE",
661*561a1919SCedric van Putten      "description": "Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call.",
662*561a1919SCedric van Putten      "explanation": null,
663*561a1919SCedric van Putten      "constant": "android.permission.CALL_PHONE",
664*561a1919SCedric van Putten      "protection": "dangerous",
665*561a1919SCedric van Putten      "warning": null
666*561a1919SCedric van Putten    },
667*561a1919SCedric van Putten    "CALL_PRIVILEGED": {
668*561a1919SCedric van Putten      "apiAdded": 1,
669*561a1919SCedric van Putten      "apiDeprecated": null,
670*561a1919SCedric van Putten      "apiReplaced": null,
671*561a1919SCedric van Putten      "name": "CALL_PRIVILEGED",
672*561a1919SCedric van Putten      "description": "Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed.",
673*561a1919SCedric van Putten      "explanation": null,
674*561a1919SCedric van Putten      "constant": "android.permission.CALL_PRIVILEGED",
675*561a1919SCedric van Putten      "protection": null,
676*561a1919SCedric van Putten      "warning": null
677*561a1919SCedric van Putten    },
678*561a1919SCedric van Putten    "CAMERA": {
679*561a1919SCedric van Putten      "apiAdded": 1,
680*561a1919SCedric van Putten      "apiDeprecated": null,
681*561a1919SCedric van Putten      "apiReplaced": null,
682*561a1919SCedric van Putten      "name": "CAMERA",
683*561a1919SCedric van Putten      "description": "Required to be able to access the camera device.",
684*561a1919SCedric van Putten      "explanation": null,
685*561a1919SCedric van Putten      "constant": "android.permission.CAMERA",
686*561a1919SCedric van Putten      "protection": "dangerous",
687*561a1919SCedric van Putten      "warning": null
688*561a1919SCedric van Putten    },
689*561a1919SCedric van Putten    "CAPTURE_AUDIO_OUTPUT": {
690*561a1919SCedric van Putten      "apiAdded": 19,
691*561a1919SCedric van Putten      "apiDeprecated": null,
692*561a1919SCedric van Putten      "apiReplaced": null,
693*561a1919SCedric van Putten      "name": "CAPTURE_AUDIO_OUTPUT",
694*561a1919SCedric van Putten      "description": "Allows an application to capture audio output.",
695*561a1919SCedric van Putten      "explanation": "Use the <code translate=\"no\" dir=\"ltr\">CAPTURE_MEDIA_OUTPUT</code> permission if only the <code translate=\"no\" dir=\"ltr\">USAGE_UNKNOWN</code>), <code translate=\"no\" dir=\"ltr\">USAGE_MEDIA</code>) or <code translate=\"no\" dir=\"ltr\">USAGE_GAME</code>) usages are intended to be captured.",
696*561a1919SCedric van Putten      "constant": "android.permission.CAPTURE_AUDIO_OUTPUT",
697*561a1919SCedric van Putten      "protection": null,
698*561a1919SCedric van Putten      "warning": null
699*561a1919SCedric van Putten    },
700*561a1919SCedric van Putten    "CHANGE_COMPONENT_ENABLED_STATE": {
701*561a1919SCedric van Putten      "apiAdded": 1,
702*561a1919SCedric van Putten      "apiDeprecated": null,
703*561a1919SCedric van Putten      "apiReplaced": null,
704*561a1919SCedric van Putten      "name": "CHANGE_COMPONENT_ENABLED_STATE",
705*561a1919SCedric van Putten      "description": "Allows an application to change whether an application component (other than its own) is enabled or not.",
706*561a1919SCedric van Putten      "explanation": null,
707*561a1919SCedric van Putten      "constant": "android.permission.CHANGE_COMPONENT_ENABLED_STATE",
708*561a1919SCedric van Putten      "protection": null,
709*561a1919SCedric van Putten      "warning": null
710*561a1919SCedric van Putten    },
711*561a1919SCedric van Putten    "CHANGE_CONFIGURATION": {
712*561a1919SCedric van Putten      "apiAdded": 1,
713*561a1919SCedric van Putten      "apiDeprecated": null,
714*561a1919SCedric van Putten      "apiReplaced": null,
715*561a1919SCedric van Putten      "name": "CHANGE_CONFIGURATION",
716*561a1919SCedric van Putten      "description": "Allows an application to modify the current configuration, such as locale.",
717*561a1919SCedric van Putten      "explanation": null,
718*561a1919SCedric van Putten      "constant": "android.permission.CHANGE_CONFIGURATION",
719*561a1919SCedric van Putten      "protection": "signature|privileged|development",
720*561a1919SCedric van Putten      "warning": null
721*561a1919SCedric van Putten    },
722*561a1919SCedric van Putten    "CHANGE_NETWORK_STATE": {
723*561a1919SCedric van Putten      "apiAdded": 1,
724*561a1919SCedric van Putten      "apiDeprecated": null,
725*561a1919SCedric van Putten      "apiReplaced": null,
726*561a1919SCedric van Putten      "name": "CHANGE_NETWORK_STATE",
727*561a1919SCedric van Putten      "description": "Allows applications to change network connectivity state.",
728*561a1919SCedric van Putten      "explanation": null,
729*561a1919SCedric van Putten      "constant": "android.permission.CHANGE_NETWORK_STATE",
730*561a1919SCedric van Putten      "protection": "normal",
731*561a1919SCedric van Putten      "warning": null
732*561a1919SCedric van Putten    },
733*561a1919SCedric van Putten    "CHANGE_WIFI_MULTICAST_STATE": {
734*561a1919SCedric van Putten      "apiAdded": 4,
735*561a1919SCedric van Putten      "apiDeprecated": null,
736*561a1919SCedric van Putten      "apiReplaced": null,
737*561a1919SCedric van Putten      "name": "CHANGE_WIFI_MULTICAST_STATE",
738*561a1919SCedric van Putten      "description": "Allows applications to enter Wi-Fi Multicast mode.",
739*561a1919SCedric van Putten      "explanation": null,
740*561a1919SCedric van Putten      "constant": "android.permission.CHANGE_WIFI_MULTICAST_STATE",
741*561a1919SCedric van Putten      "protection": "normal",
742*561a1919SCedric van Putten      "warning": null
743*561a1919SCedric van Putten    },
744*561a1919SCedric van Putten    "CHANGE_WIFI_STATE": {
745*561a1919SCedric van Putten      "apiAdded": 1,
746*561a1919SCedric van Putten      "apiDeprecated": null,
747*561a1919SCedric van Putten      "apiReplaced": null,
748*561a1919SCedric van Putten      "name": "CHANGE_WIFI_STATE",
749*561a1919SCedric van Putten      "description": "Allows applications to change Wi-Fi connectivity state.",
750*561a1919SCedric van Putten      "explanation": null,
751*561a1919SCedric van Putten      "constant": "android.permission.CHANGE_WIFI_STATE",
752*561a1919SCedric van Putten      "protection": "normal",
753*561a1919SCedric van Putten      "warning": null
754*561a1919SCedric van Putten    },
755*561a1919SCedric van Putten    "CLEAR_APP_CACHE": {
756*561a1919SCedric van Putten      "apiAdded": 1,
757*561a1919SCedric van Putten      "apiDeprecated": null,
758*561a1919SCedric van Putten      "apiReplaced": null,
759*561a1919SCedric van Putten      "name": "CLEAR_APP_CACHE",
760*561a1919SCedric van Putten      "description": "Allows an application to clear the caches of all installed applications on the device.",
761*561a1919SCedric van Putten      "explanation": null,
762*561a1919SCedric van Putten      "constant": "android.permission.CLEAR_APP_CACHE",
763*561a1919SCedric van Putten      "protection": "signature|privileged",
764*561a1919SCedric van Putten      "warning": null
765*561a1919SCedric van Putten    },
766*561a1919SCedric van Putten    "CONTROL_LOCATION_UPDATES": {
767*561a1919SCedric van Putten      "apiAdded": 1,
768*561a1919SCedric van Putten      "apiDeprecated": null,
769*561a1919SCedric van Putten      "apiReplaced": null,
770*561a1919SCedric van Putten      "name": "CONTROL_LOCATION_UPDATES",
771*561a1919SCedric van Putten      "description": "Allows enabling/disabling location update notifications from the radio.",
772*561a1919SCedric van Putten      "explanation": null,
773*561a1919SCedric van Putten      "constant": "android.permission.CONTROL_LOCATION_UPDATES",
774*561a1919SCedric van Putten      "protection": null,
775*561a1919SCedric van Putten      "warning": null
776*561a1919SCedric van Putten    },
777*561a1919SCedric van Putten    "DELETE_CACHE_FILES": {
778*561a1919SCedric van Putten      "apiAdded": 1,
779*561a1919SCedric van Putten      "apiDeprecated": null,
780*561a1919SCedric van Putten      "apiReplaced": null,
781*561a1919SCedric van Putten      "name": "DELETE_CACHE_FILES",
782*561a1919SCedric van Putten      "description": "Old permission for deleting an app's cache files, no longer used, but signals for us to quietly ignore calls instead of throwing an exception.",
783*561a1919SCedric van Putten      "explanation": null,
784*561a1919SCedric van Putten      "constant": "android.permission.DELETE_CACHE_FILES",
785*561a1919SCedric van Putten      "protection": "signature|privileged",
786*561a1919SCedric van Putten      "warning": null
787*561a1919SCedric van Putten    },
788*561a1919SCedric van Putten    "DELETE_PACKAGES": {
789*561a1919SCedric van Putten      "apiAdded": 1,
790*561a1919SCedric van Putten      "apiDeprecated": null,
791*561a1919SCedric van Putten      "apiReplaced": null,
792*561a1919SCedric van Putten      "name": "DELETE_PACKAGES",
793*561a1919SCedric van Putten      "description": "Allows an application to delete packages.",
794*561a1919SCedric van Putten      "explanation": null,
795*561a1919SCedric van Putten      "constant": "android.permission.DELETE_PACKAGES",
796*561a1919SCedric van Putten      "protection": null,
797*561a1919SCedric van Putten      "warning": null
798*561a1919SCedric van Putten    },
799*561a1919SCedric van Putten    "DIAGNOSTIC": {
800*561a1919SCedric van Putten      "apiAdded": 1,
801*561a1919SCedric van Putten      "apiDeprecated": null,
802*561a1919SCedric van Putten      "apiReplaced": null,
803*561a1919SCedric van Putten      "name": "DIAGNOSTIC",
804*561a1919SCedric van Putten      "description": "Allows applications to RW to diagnostic resources.",
805*561a1919SCedric van Putten      "explanation": null,
806*561a1919SCedric van Putten      "constant": "android.permission.DIAGNOSTIC",
807*561a1919SCedric van Putten      "protection": null,
808*561a1919SCedric van Putten      "warning": null
809*561a1919SCedric van Putten    },
810*561a1919SCedric van Putten    "DISABLE_KEYGUARD": {
811*561a1919SCedric van Putten      "apiAdded": 1,
812*561a1919SCedric van Putten      "apiDeprecated": null,
813*561a1919SCedric van Putten      "apiReplaced": null,
814*561a1919SCedric van Putten      "name": "DISABLE_KEYGUARD",
815*561a1919SCedric van Putten      "description": "Allows applications to disable the keyguard if it is not secure.",
816*561a1919SCedric van Putten      "explanation": null,
817*561a1919SCedric van Putten      "constant": "android.permission.DISABLE_KEYGUARD",
818*561a1919SCedric van Putten      "protection": "normal",
819*561a1919SCedric van Putten      "warning": null
820*561a1919SCedric van Putten    },
821*561a1919SCedric van Putten    "DUMP": {
822*561a1919SCedric van Putten      "apiAdded": 1,
823*561a1919SCedric van Putten      "apiDeprecated": null,
824*561a1919SCedric van Putten      "apiReplaced": null,
825*561a1919SCedric van Putten      "name": "DUMP",
826*561a1919SCedric van Putten      "description": "Allows an application to retrieve state dump information from system services.",
827*561a1919SCedric van Putten      "explanation": null,
828*561a1919SCedric van Putten      "constant": "android.permission.DUMP",
829*561a1919SCedric van Putten      "protection": null,
830*561a1919SCedric van Putten      "warning": null
831*561a1919SCedric van Putten    },
832*561a1919SCedric van Putten    "EXPAND_STATUS_BAR": {
833*561a1919SCedric van Putten      "apiAdded": 1,
834*561a1919SCedric van Putten      "apiDeprecated": null,
835*561a1919SCedric van Putten      "apiReplaced": null,
836*561a1919SCedric van Putten      "name": "EXPAND_STATUS_BAR",
837*561a1919SCedric van Putten      "description": "Allows an application to expand or collapse the status bar.",
838*561a1919SCedric van Putten      "explanation": null,
839*561a1919SCedric van Putten      "constant": "android.permission.EXPAND_STATUS_BAR",
840*561a1919SCedric van Putten      "protection": "normal",
841*561a1919SCedric van Putten      "warning": null
842*561a1919SCedric van Putten    },
843*561a1919SCedric van Putten    "FACTORY_TEST": {
844*561a1919SCedric van Putten      "apiAdded": 1,
845*561a1919SCedric van Putten      "apiDeprecated": null,
846*561a1919SCedric van Putten      "apiReplaced": null,
847*561a1919SCedric van Putten      "name": "FACTORY_TEST",
848*561a1919SCedric van Putten      "description": "Run as a manufacturer test application, running as the root user.",
849*561a1919SCedric van Putten      "explanation": "Only available when the device is running in manufacturer test mode.",
850*561a1919SCedric van Putten      "constant": "android.permission.FACTORY_TEST",
851*561a1919SCedric van Putten      "protection": null,
852*561a1919SCedric van Putten      "warning": null
853*561a1919SCedric van Putten    },
854*561a1919SCedric van Putten    "FOREGROUND_SERVICE": {
855*561a1919SCedric van Putten      "apiAdded": 28,
856*561a1919SCedric van Putten      "apiDeprecated": null,
857*561a1919SCedric van Putten      "apiReplaced": null,
858*561a1919SCedric van Putten      "name": "FOREGROUND_SERVICE",
859*561a1919SCedric van Putten      "description": "Allows a regular application to use Service.startForeground.",
860*561a1919SCedric van Putten      "explanation": "Allows a regular application to use <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/app/Service#startForeground(int,%20android.app.Notification)\">Service.startForeground</a></code>.",
861*561a1919SCedric van Putten      "constant": "android.permission.FOREGROUND_SERVICE",
862*561a1919SCedric van Putten      "protection": "normal",
863*561a1919SCedric van Putten      "warning": null
864*561a1919SCedric van Putten    },
865*561a1919SCedric van Putten    "GET_ACCOUNTS": {
866*561a1919SCedric van Putten      "apiAdded": 1,
867*561a1919SCedric van Putten      "apiDeprecated": null,
868*561a1919SCedric van Putten      "apiReplaced": null,
869*561a1919SCedric van Putten      "name": "GET_ACCOUNTS",
870*561a1919SCedric van Putten      "description": "Allows access to the list of accounts in the Accounts Service.",
871*561a1919SCedric van Putten      "explanation": null,
872*561a1919SCedric van Putten      "constant": "android.permission.GET_ACCOUNTS",
873*561a1919SCedric van Putten      "protection": "dangerous",
874*561a1919SCedric van Putten      "warning": null
875*561a1919SCedric van Putten    },
876*561a1919SCedric van Putten    "GET_ACCOUNTS_PRIVILEGED": {
877*561a1919SCedric van Putten      "apiAdded": 23,
878*561a1919SCedric van Putten      "apiDeprecated": null,
879*561a1919SCedric van Putten      "apiReplaced": null,
880*561a1919SCedric van Putten      "name": "GET_ACCOUNTS_PRIVILEGED",
881*561a1919SCedric van Putten      "description": "Allows access to the list of accounts in the Accounts Service.",
882*561a1919SCedric van Putten      "explanation": null,
883*561a1919SCedric van Putten      "constant": "android.permission.GET_ACCOUNTS_PRIVILEGED",
884*561a1919SCedric van Putten      "protection": "signature|privileged",
885*561a1919SCedric van Putten      "warning": null
886*561a1919SCedric van Putten    },
887*561a1919SCedric van Putten    "GET_PACKAGE_SIZE": {
888*561a1919SCedric van Putten      "apiAdded": 1,
889*561a1919SCedric van Putten      "apiDeprecated": null,
890*561a1919SCedric van Putten      "apiReplaced": null,
891*561a1919SCedric van Putten      "name": "GET_PACKAGE_SIZE",
892*561a1919SCedric van Putten      "description": "Allows an application to find out the space used by any package.",
893*561a1919SCedric van Putten      "explanation": null,
894*561a1919SCedric van Putten      "constant": "android.permission.GET_PACKAGE_SIZE",
895*561a1919SCedric van Putten      "protection": "normal",
896*561a1919SCedric van Putten      "warning": null
897*561a1919SCedric van Putten    },
898*561a1919SCedric van Putten    "GET_TASKS": {
899*561a1919SCedric van Putten      "apiAdded": 1,
900*561a1919SCedric van Putten      "apiDeprecated": 21,
901*561a1919SCedric van Putten      "apiReplaced": null,
902*561a1919SCedric van Putten      "name": "GET_TASKS",
903*561a1919SCedric van Putten      "description": "",
904*561a1919SCedric van Putten      "explanation": null,
905*561a1919SCedric van Putten      "constant": "android.permission.GET_TASKS",
906*561a1919SCedric van Putten      "protection": null,
907*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 21. No longer enforced."
908*561a1919SCedric van Putten    },
909*561a1919SCedric van Putten    "GLOBAL_SEARCH": {
910*561a1919SCedric van Putten      "apiAdded": 4,
911*561a1919SCedric van Putten      "apiDeprecated": null,
912*561a1919SCedric van Putten      "apiReplaced": null,
913*561a1919SCedric van Putten      "name": "GLOBAL_SEARCH",
914*561a1919SCedric van Putten      "description": "This permission can be used on content providers to allow the global search system to access their data.",
915*561a1919SCedric van Putten      "explanation": "Typically it used when the provider has some permissions protecting it (which global search would not be expected to hold), and added as a read-only permission to the path in the provider where global search queries are performed. This permission can not be held by regular applications; it is used by applications to protect themselves from everyone else besides global search.",
916*561a1919SCedric van Putten      "constant": "android.permission.GLOBAL_SEARCH",
917*561a1919SCedric van Putten      "protection": "signature|privileged",
918*561a1919SCedric van Putten      "warning": null
919*561a1919SCedric van Putten    },
920*561a1919SCedric van Putten    "HIDE_OVERLAY_WINDOWS": {
921*561a1919SCedric van Putten      "apiAdded": 31,
922*561a1919SCedric van Putten      "apiDeprecated": null,
923*561a1919SCedric van Putten      "apiReplaced": null,
924*561a1919SCedric van Putten      "name": "HIDE_OVERLAY_WINDOWS",
925*561a1919SCedric van Putten      "description": "Allows an app to prevent non-system-overlay windows from being drawn on top of it",
926*561a1919SCedric van Putten      "explanation": null,
927*561a1919SCedric van Putten      "constant": "android.permission.HIDE_OVERLAY_WINDOWS",
928*561a1919SCedric van Putten      "protection": null,
929*561a1919SCedric van Putten      "warning": null
930*561a1919SCedric van Putten    },
931*561a1919SCedric van Putten    "HIGH_SAMPLING_RATE_SENSORS": {
932*561a1919SCedric van Putten      "apiAdded": 31,
933*561a1919SCedric van Putten      "apiDeprecated": null,
934*561a1919SCedric van Putten      "apiReplaced": null,
935*561a1919SCedric van Putten      "name": "HIGH_SAMPLING_RATE_SENSORS",
936*561a1919SCedric van Putten      "description": "Allows an app to access sensor data with a sampling rate greater than 200 Hz.",
937*561a1919SCedric van Putten      "explanation": null,
938*561a1919SCedric van Putten      "constant": "android.permission.HIGH_SAMPLING_RATE_SENSORS",
939*561a1919SCedric van Putten      "protection": "normal",
940*561a1919SCedric van Putten      "warning": null
941*561a1919SCedric van Putten    },
942*561a1919SCedric van Putten    "INSTALL_LOCATION_PROVIDER": {
943*561a1919SCedric van Putten      "apiAdded": 4,
944*561a1919SCedric van Putten      "apiDeprecated": null,
945*561a1919SCedric van Putten      "apiReplaced": null,
946*561a1919SCedric van Putten      "name": "INSTALL_LOCATION_PROVIDER",
947*561a1919SCedric van Putten      "description": "Allows an application to install a location provider into the Location Manager.",
948*561a1919SCedric van Putten      "explanation": null,
949*561a1919SCedric van Putten      "constant": "android.permission.INSTALL_LOCATION_PROVIDER",
950*561a1919SCedric van Putten      "protection": null,
951*561a1919SCedric van Putten      "warning": null
952*561a1919SCedric van Putten    },
953*561a1919SCedric van Putten    "INSTALL_PACKAGES": {
954*561a1919SCedric van Putten      "apiAdded": 1,
955*561a1919SCedric van Putten      "apiDeprecated": null,
956*561a1919SCedric van Putten      "apiReplaced": null,
957*561a1919SCedric van Putten      "name": "INSTALL_PACKAGES",
958*561a1919SCedric van Putten      "description": "Allows an application to install packages.",
959*561a1919SCedric van Putten      "explanation": null,
960*561a1919SCedric van Putten      "constant": "android.permission.INSTALL_PACKAGES",
961*561a1919SCedric van Putten      "protection": null,
962*561a1919SCedric van Putten      "warning": null
963*561a1919SCedric van Putten    },
964*561a1919SCedric van Putten    "INSTALL_SHORTCUT": {
965*561a1919SCedric van Putten      "apiAdded": 19,
966*561a1919SCedric van Putten      "apiDeprecated": null,
967*561a1919SCedric van Putten      "apiReplaced": null,
968*561a1919SCedric van Putten      "name": "INSTALL_SHORTCUT",
969*561a1919SCedric van Putten      "description": "Allows an application to install a shortcut in Launcher.",
970*561a1919SCedric van Putten      "explanation": null,
971*561a1919SCedric van Putten      "constant": "com.android.launcher.permission.INSTALL_SHORTCUT",
972*561a1919SCedric van Putten      "protection": "normal",
973*561a1919SCedric van Putten      "warning": null
974*561a1919SCedric van Putten    },
975*561a1919SCedric van Putten    "INSTANT_APP_FOREGROUND_SERVICE": {
976*561a1919SCedric van Putten      "apiAdded": 26,
977*561a1919SCedric van Putten      "apiDeprecated": null,
978*561a1919SCedric van Putten      "apiReplaced": null,
979*561a1919SCedric van Putten      "name": "INSTANT_APP_FOREGROUND_SERVICE",
980*561a1919SCedric van Putten      "description": "Allows an instant app to create foreground services.",
981*561a1919SCedric van Putten      "explanation": null,
982*561a1919SCedric van Putten      "constant": "android.permission.INSTANT_APP_FOREGROUND_SERVICE",
983*561a1919SCedric van Putten      "protection": "signature|development|instant|appop",
984*561a1919SCedric van Putten      "warning": null
985*561a1919SCedric van Putten    },
986*561a1919SCedric van Putten    "INTERACT_ACROSS_PROFILES": {
987*561a1919SCedric van Putten      "apiAdded": 30,
988*561a1919SCedric van Putten      "apiDeprecated": null,
989*561a1919SCedric van Putten      "apiReplaced": null,
990*561a1919SCedric van Putten      "name": "INTERACT_ACROSS_PROFILES",
991*561a1919SCedric van Putten      "description": "Allows interaction across profiles in the same profile group.",
992*561a1919SCedric van Putten      "explanation": null,
993*561a1919SCedric van Putten      "constant": "android.permission.INTERACT_ACROSS_PROFILES",
994*561a1919SCedric van Putten      "protection": null,
995*561a1919SCedric van Putten      "warning": null
996*561a1919SCedric van Putten    },
997*561a1919SCedric van Putten    "INTERNET": {
998*561a1919SCedric van Putten      "apiAdded": 1,
999*561a1919SCedric van Putten      "apiDeprecated": null,
1000*561a1919SCedric van Putten      "apiReplaced": null,
1001*561a1919SCedric van Putten      "name": "INTERNET",
1002*561a1919SCedric van Putten      "description": "Allows applications to open network sockets.",
1003*561a1919SCedric van Putten      "explanation": null,
1004*561a1919SCedric van Putten      "constant": "android.permission.INTERNET",
1005*561a1919SCedric van Putten      "protection": "normal",
1006*561a1919SCedric van Putten      "warning": null
1007*561a1919SCedric van Putten    },
1008*561a1919SCedric van Putten    "KILL_BACKGROUND_PROCESSES": {
1009*561a1919SCedric van Putten      "apiAdded": 8,
1010*561a1919SCedric van Putten      "apiDeprecated": null,
1011*561a1919SCedric van Putten      "apiReplaced": null,
1012*561a1919SCedric van Putten      "name": "KILL_BACKGROUND_PROCESSES",
1013*561a1919SCedric van Putten      "description": "Allows an application to call ActivityManager.killBackgroundProcesses(String).",
1014*561a1919SCedric van Putten      "explanation": "Allows an application to call <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/app/ActivityManager#killBackgroundProcesses(java.lang.String)\">ActivityManager.killBackgroundProcesses(String)</a></code>.",
1015*561a1919SCedric van Putten      "constant": "android.permission.KILL_BACKGROUND_PROCESSES",
1016*561a1919SCedric van Putten      "protection": "normal",
1017*561a1919SCedric van Putten      "warning": null
1018*561a1919SCedric van Putten    },
1019*561a1919SCedric van Putten    "LOADER_USAGE_STATS": {
1020*561a1919SCedric van Putten      "apiAdded": 30,
1021*561a1919SCedric van Putten      "apiDeprecated": null,
1022*561a1919SCedric van Putten      "apiReplaced": null,
1023*561a1919SCedric van Putten      "name": "LOADER_USAGE_STATS",
1024*561a1919SCedric van Putten      "description": "Allows a data loader to read a package's access logs.",
1025*561a1919SCedric van Putten      "explanation": "The access logs contain the set of pages referenced over time.",
1026*561a1919SCedric van Putten      "constant": "android.permission.LOADER_USAGE_STATS",
1027*561a1919SCedric van Putten      "protection": "signature|privileged|appop",
1028*561a1919SCedric van Putten      "warning": null
1029*561a1919SCedric van Putten    },
1030*561a1919SCedric van Putten    "LOCATION_HARDWARE": {
1031*561a1919SCedric van Putten      "apiAdded": 18,
1032*561a1919SCedric van Putten      "apiDeprecated": null,
1033*561a1919SCedric van Putten      "apiReplaced": null,
1034*561a1919SCedric van Putten      "name": "LOCATION_HARDWARE",
1035*561a1919SCedric van Putten      "description": "Allows an application to use location features in hardware, such as the geofencing api.",
1036*561a1919SCedric van Putten      "explanation": null,
1037*561a1919SCedric van Putten      "constant": "android.permission.LOCATION_HARDWARE",
1038*561a1919SCedric van Putten      "protection": null,
1039*561a1919SCedric van Putten      "warning": null
1040*561a1919SCedric van Putten    },
1041*561a1919SCedric van Putten    "MANAGE_DOCUMENTS": {
1042*561a1919SCedric van Putten      "apiAdded": 19,
1043*561a1919SCedric van Putten      "apiDeprecated": null,
1044*561a1919SCedric van Putten      "apiReplaced": null,
1045*561a1919SCedric van Putten      "name": "MANAGE_DOCUMENTS",
1046*561a1919SCedric van Putten      "description": "Allows an application to manage access to documents, usually as part of a document picker.",
1047*561a1919SCedric van Putten      "explanation": null,
1048*561a1919SCedric van Putten      "constant": "android.permission.MANAGE_DOCUMENTS",
1049*561a1919SCedric van Putten      "protection": null,
1050*561a1919SCedric van Putten      "warning": null
1051*561a1919SCedric van Putten    },
1052*561a1919SCedric van Putten    "MANAGE_EXTERNAL_STORAGE": {
1053*561a1919SCedric van Putten      "apiAdded": 30,
1054*561a1919SCedric van Putten      "apiDeprecated": null,
1055*561a1919SCedric van Putten      "apiReplaced": null,
1056*561a1919SCedric van Putten      "name": "MANAGE_EXTERNAL_STORAGE",
1057*561a1919SCedric van Putten      "description": "Allows an application a broad access to external storage in scoped storage.",
1058*561a1919SCedric van Putten      "explanation": "Intended to be used by few apps that need to manage files on behalf of the users.",
1059*561a1919SCedric van Putten      "constant": "android.permission.MANAGE_EXTERNAL_STORAGE",
1060*561a1919SCedric van Putten      "protection": "signature|appop|preinstalled",
1061*561a1919SCedric van Putten      "warning": null
1062*561a1919SCedric van Putten    },
1063*561a1919SCedric van Putten    "MANAGE_MEDIA": {
1064*561a1919SCedric van Putten      "apiAdded": 31,
1065*561a1919SCedric van Putten      "apiDeprecated": null,
1066*561a1919SCedric van Putten      "apiReplaced": null,
1067*561a1919SCedric van Putten      "name": "MANAGE_MEDIA",
1068*561a1919SCedric van Putten      "description": "Allows an application to modify and delete media files on this device or any connected storage device without user confirmation.",
1069*561a1919SCedric van Putten      "explanation": "Applications must already be granted the <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#READ_EXTERNAL_STORAGE\">READ_EXTERNAL_STORAGE</a></code> or <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#MANAGE_EXTERNAL_STORAGE\">MANAGE_EXTERNAL_STORAGE</a></code>} permissions for this permission to take effect.",
1070*561a1919SCedric van Putten      "constant": "android.permission.MANAGE_MEDIA",
1071*561a1919SCedric van Putten      "protection": "signature|appop|preinstalled",
1072*561a1919SCedric van Putten      "warning": null
1073*561a1919SCedric van Putten    },
1074*561a1919SCedric van Putten    "MANAGE_ONGOING_CALLS": {
1075*561a1919SCedric van Putten      "apiAdded": 31,
1076*561a1919SCedric van Putten      "apiDeprecated": null,
1077*561a1919SCedric van Putten      "apiReplaced": null,
1078*561a1919SCedric van Putten      "name": "MANAGE_ONGOING_CALLS",
1079*561a1919SCedric van Putten      "description": "Allows to query ongoing call details and manage ongoing calls",
1080*561a1919SCedric van Putten      "explanation": null,
1081*561a1919SCedric van Putten      "constant": "android.permission.MANAGE_ONGOING_CALLS",
1082*561a1919SCedric van Putten      "protection": "signature|appop",
1083*561a1919SCedric van Putten      "warning": null
1084*561a1919SCedric van Putten    },
1085*561a1919SCedric van Putten    "MANAGE_OWN_CALLS": {
1086*561a1919SCedric van Putten      "apiAdded": 26,
1087*561a1919SCedric van Putten      "apiDeprecated": null,
1088*561a1919SCedric van Putten      "apiReplaced": null,
1089*561a1919SCedric van Putten      "name": "MANAGE_OWN_CALLS",
1090*561a1919SCedric van Putten      "description": "Allows a calling application which manages its own calls through the self-managed ConnectionService APIs.",
1091*561a1919SCedric van Putten      "explanation": "Allows a calling application which manages its own calls through the self-managed <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/ConnectionService\">ConnectionService</a></code> APIs. See <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/PhoneAccount#CAPABILITY_SELF_MANAGED\">PhoneAccount.CAPABILITY_SELF_MANAGED</a></code> for more information on the self-managed ConnectionService APIs.",
1092*561a1919SCedric van Putten      "constant": "android.permission.MANAGE_OWN_CALLS",
1093*561a1919SCedric van Putten      "protection": "normal",
1094*561a1919SCedric van Putten      "warning": null
1095*561a1919SCedric van Putten    },
1096*561a1919SCedric van Putten    "MASTER_CLEAR": {
1097*561a1919SCedric van Putten      "apiAdded": 1,
1098*561a1919SCedric van Putten      "apiDeprecated": null,
1099*561a1919SCedric van Putten      "apiReplaced": null,
1100*561a1919SCedric van Putten      "name": "MASTER_CLEAR",
1101*561a1919SCedric van Putten      "description": "Not for use by third-party applications.",
1102*561a1919SCedric van Putten      "explanation": null,
1103*561a1919SCedric van Putten      "constant": "android.permission.MASTER_CLEAR",
1104*561a1919SCedric van Putten      "protection": null,
1105*561a1919SCedric van Putten      "warning": null
1106*561a1919SCedric van Putten    },
1107*561a1919SCedric van Putten    "MEDIA_CONTENT_CONTROL": {
1108*561a1919SCedric van Putten      "apiAdded": 19,
1109*561a1919SCedric van Putten      "apiDeprecated": null,
1110*561a1919SCedric van Putten      "apiReplaced": null,
1111*561a1919SCedric van Putten      "name": "MEDIA_CONTENT_CONTROL",
1112*561a1919SCedric van Putten      "description": "Allows an application to know what content is playing and control its playback.",
1113*561a1919SCedric van Putten      "explanation": null,
1114*561a1919SCedric van Putten      "constant": "android.permission.MEDIA_CONTENT_CONTROL",
1115*561a1919SCedric van Putten      "protection": null,
1116*561a1919SCedric van Putten      "warning": null
1117*561a1919SCedric van Putten    },
1118*561a1919SCedric van Putten    "MODIFY_AUDIO_SETTINGS": {
1119*561a1919SCedric van Putten      "apiAdded": 1,
1120*561a1919SCedric van Putten      "apiDeprecated": null,
1121*561a1919SCedric van Putten      "apiReplaced": null,
1122*561a1919SCedric van Putten      "name": "MODIFY_AUDIO_SETTINGS",
1123*561a1919SCedric van Putten      "description": "Allows an application to modify global audio settings.",
1124*561a1919SCedric van Putten      "explanation": null,
1125*561a1919SCedric van Putten      "constant": "android.permission.MODIFY_AUDIO_SETTINGS",
1126*561a1919SCedric van Putten      "protection": "normal",
1127*561a1919SCedric van Putten      "warning": null
1128*561a1919SCedric van Putten    },
1129*561a1919SCedric van Putten    "MODIFY_PHONE_STATE": {
1130*561a1919SCedric van Putten      "apiAdded": 1,
1131*561a1919SCedric van Putten      "apiDeprecated": null,
1132*561a1919SCedric van Putten      "apiReplaced": null,
1133*561a1919SCedric van Putten      "name": "MODIFY_PHONE_STATE",
1134*561a1919SCedric van Putten      "description": "Allows modification of the telephony state - power on, mmi, etc.",
1135*561a1919SCedric van Putten      "explanation": "Does not include placing calls.",
1136*561a1919SCedric van Putten      "constant": "android.permission.MODIFY_PHONE_STATE",
1137*561a1919SCedric van Putten      "protection": null,
1138*561a1919SCedric van Putten      "warning": null
1139*561a1919SCedric van Putten    },
1140*561a1919SCedric van Putten    "MOUNT_FORMAT_FILESYSTEMS": {
1141*561a1919SCedric van Putten      "apiAdded": 3,
1142*561a1919SCedric van Putten      "apiDeprecated": null,
1143*561a1919SCedric van Putten      "apiReplaced": null,
1144*561a1919SCedric van Putten      "name": "MOUNT_FORMAT_FILESYSTEMS",
1145*561a1919SCedric van Putten      "description": "Allows formatting file systems for removable storage.",
1146*561a1919SCedric van Putten      "explanation": null,
1147*561a1919SCedric van Putten      "constant": "android.permission.MOUNT_FORMAT_FILESYSTEMS",
1148*561a1919SCedric van Putten      "protection": null,
1149*561a1919SCedric van Putten      "warning": null
1150*561a1919SCedric van Putten    },
1151*561a1919SCedric van Putten    "MOUNT_UNMOUNT_FILESYSTEMS": {
1152*561a1919SCedric van Putten      "apiAdded": 1,
1153*561a1919SCedric van Putten      "apiDeprecated": null,
1154*561a1919SCedric van Putten      "apiReplaced": null,
1155*561a1919SCedric van Putten      "name": "MOUNT_UNMOUNT_FILESYSTEMS",
1156*561a1919SCedric van Putten      "description": "Allows mounting and unmounting file systems for removable storage.",
1157*561a1919SCedric van Putten      "explanation": null,
1158*561a1919SCedric van Putten      "constant": "android.permission.MOUNT_UNMOUNT_FILESYSTEMS",
1159*561a1919SCedric van Putten      "protection": null,
1160*561a1919SCedric van Putten      "warning": null
1161*561a1919SCedric van Putten    },
1162*561a1919SCedric van Putten    "NFC": {
1163*561a1919SCedric van Putten      "apiAdded": 9,
1164*561a1919SCedric van Putten      "apiDeprecated": null,
1165*561a1919SCedric van Putten      "apiReplaced": null,
1166*561a1919SCedric van Putten      "name": "NFC",
1167*561a1919SCedric van Putten      "description": "Allows applications to perform I/O operations over NFC.",
1168*561a1919SCedric van Putten      "explanation": null,
1169*561a1919SCedric van Putten      "constant": "android.permission.NFC",
1170*561a1919SCedric van Putten      "protection": "normal",
1171*561a1919SCedric van Putten      "warning": null
1172*561a1919SCedric van Putten    },
1173*561a1919SCedric van Putten    "NFC_PREFERRED_PAYMENT_INFO": {
1174*561a1919SCedric van Putten      "apiAdded": 30,
1175*561a1919SCedric van Putten      "apiDeprecated": null,
1176*561a1919SCedric van Putten      "apiReplaced": null,
1177*561a1919SCedric van Putten      "name": "NFC_PREFERRED_PAYMENT_INFO",
1178*561a1919SCedric van Putten      "description": "Allows applications to receive NFC preferred payment service information.",
1179*561a1919SCedric van Putten      "explanation": null,
1180*561a1919SCedric van Putten      "constant": "android.permission.NFC_PREFERRED_PAYMENT_INFO",
1181*561a1919SCedric van Putten      "protection": "normal",
1182*561a1919SCedric van Putten      "warning": null
1183*561a1919SCedric van Putten    },
1184*561a1919SCedric van Putten    "NFC_TRANSACTION_EVENT": {
1185*561a1919SCedric van Putten      "apiAdded": 28,
1186*561a1919SCedric van Putten      "apiDeprecated": null,
1187*561a1919SCedric van Putten      "apiReplaced": null,
1188*561a1919SCedric van Putten      "name": "NFC_TRANSACTION_EVENT",
1189*561a1919SCedric van Putten      "description": "Allows applications to receive NFC transaction events.",
1190*561a1919SCedric van Putten      "explanation": null,
1191*561a1919SCedric van Putten      "constant": "android.permission.NFC_TRANSACTION_EVENT",
1192*561a1919SCedric van Putten      "protection": "normal",
1193*561a1919SCedric van Putten      "warning": null
1194*561a1919SCedric van Putten    },
1195*561a1919SCedric van Putten    "PACKAGE_USAGE_STATS": {
1196*561a1919SCedric van Putten      "apiAdded": 23,
1197*561a1919SCedric van Putten      "apiDeprecated": null,
1198*561a1919SCedric van Putten      "apiReplaced": null,
1199*561a1919SCedric van Putten      "name": "PACKAGE_USAGE_STATS",
1200*561a1919SCedric van Putten      "description": "Allows an application to collect component usage statistics",
1201*561a1919SCedric van Putten      "explanation": null,
1202*561a1919SCedric van Putten      "constant": "android.permission.PACKAGE_USAGE_STATS",
1203*561a1919SCedric van Putten      "protection": "signature|privileged|development|appop|retailDemo",
1204*561a1919SCedric van Putten      "warning": null
1205*561a1919SCedric van Putten    },
1206*561a1919SCedric van Putten    "PERSISTENT_ACTIVITY": {
1207*561a1919SCedric van Putten      "apiAdded": 1,
1208*561a1919SCedric van Putten      "apiDeprecated": 15,
1209*561a1919SCedric van Putten      "apiReplaced": null,
1210*561a1919SCedric van Putten      "name": "PERSISTENT_ACTIVITY",
1211*561a1919SCedric van Putten      "description": "",
1212*561a1919SCedric van Putten      "explanation": null,
1213*561a1919SCedric van Putten      "constant": "android.permission.PERSISTENT_ACTIVITY",
1214*561a1919SCedric van Putten      "protection": null,
1215*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 15. This functionality will be removed in the future; please do not use. Allow an application to make its activities persistent."
1216*561a1919SCedric van Putten    },
1217*561a1919SCedric van Putten    "PROCESS_OUTGOING_CALLS": {
1218*561a1919SCedric van Putten      "apiAdded": 1,
1219*561a1919SCedric van Putten      "apiDeprecated": 29,
1220*561a1919SCedric van Putten      "apiReplaced": "CallRedirectionServiceIntent.ACTION_NEW_OUTGOING_CALL",
1221*561a1919SCedric van Putten      "name": "PROCESS_OUTGOING_CALLS",
1222*561a1919SCedric van Putten      "description": "",
1223*561a1919SCedric van Putten      "explanation": null,
1224*561a1919SCedric van Putten      "constant": "android.permission.PROCESS_OUTGOING_CALLS",
1225*561a1919SCedric van Putten      "protection": "dangerous",
1226*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 29. Applications should use CallRedirectionService instead of the Intent.ACTION_NEW_OUTGOING_CALL broadcast."
1227*561a1919SCedric van Putten    },
1228*561a1919SCedric van Putten    "QUERY_ALL_PACKAGES": {
1229*561a1919SCedric van Putten      "apiAdded": 30,
1230*561a1919SCedric van Putten      "apiDeprecated": null,
1231*561a1919SCedric van Putten      "apiReplaced": null,
1232*561a1919SCedric van Putten      "name": "QUERY_ALL_PACKAGES",
1233*561a1919SCedric van Putten      "description": "Allows query of any normal app on the device, regardless of manifest declarations.",
1234*561a1919SCedric van Putten      "explanation": null,
1235*561a1919SCedric van Putten      "constant": "android.permission.QUERY_ALL_PACKAGES",
1236*561a1919SCedric van Putten      "protection": "normal",
1237*561a1919SCedric van Putten      "warning": null
1238*561a1919SCedric van Putten    },
1239*561a1919SCedric van Putten    "READ_CALENDAR": {
1240*561a1919SCedric van Putten      "apiAdded": 1,
1241*561a1919SCedric van Putten      "apiDeprecated": null,
1242*561a1919SCedric van Putten      "apiReplaced": null,
1243*561a1919SCedric van Putten      "name": "READ_CALENDAR",
1244*561a1919SCedric van Putten      "description": "Allows an application to read the user's calendar data.",
1245*561a1919SCedric van Putten      "explanation": null,
1246*561a1919SCedric van Putten      "constant": "android.permission.READ_CALENDAR",
1247*561a1919SCedric van Putten      "protection": "dangerous",
1248*561a1919SCedric van Putten      "warning": null
1249*561a1919SCedric van Putten    },
1250*561a1919SCedric van Putten    "READ_CALL_LOG": {
1251*561a1919SCedric van Putten      "apiAdded": 16,
1252*561a1919SCedric van Putten      "apiDeprecated": null,
1253*561a1919SCedric van Putten      "apiReplaced": null,
1254*561a1919SCedric van Putten      "name": "READ_CALL_LOG",
1255*561a1919SCedric van Putten      "description": "Allows an application to read the user's call log.",
1256*561a1919SCedric van Putten      "explanation": null,
1257*561a1919SCedric van Putten      "constant": "android.permission.READ_CALL_LOG",
1258*561a1919SCedric van Putten      "protection": "dangerous",
1259*561a1919SCedric van Putten      "warning": null
1260*561a1919SCedric van Putten    },
1261*561a1919SCedric van Putten    "READ_CONTACTS": {
1262*561a1919SCedric van Putten      "apiAdded": 1,
1263*561a1919SCedric van Putten      "apiDeprecated": null,
1264*561a1919SCedric van Putten      "apiReplaced": null,
1265*561a1919SCedric van Putten      "name": "READ_CONTACTS",
1266*561a1919SCedric van Putten      "description": "Allows an application to read the user's contacts data.",
1267*561a1919SCedric van Putten      "explanation": null,
1268*561a1919SCedric van Putten      "constant": "android.permission.READ_CONTACTS",
1269*561a1919SCedric van Putten      "protection": "dangerous",
1270*561a1919SCedric van Putten      "warning": null
1271*561a1919SCedric van Putten    },
1272*561a1919SCedric van Putten    "READ_EXTERNAL_STORAGE": {
1273*561a1919SCedric van Putten      "apiAdded": 16,
1274*561a1919SCedric van Putten      "apiDeprecated": null,
1275*561a1919SCedric van Putten      "apiReplaced": null,
1276*561a1919SCedric van Putten      "name": "READ_EXTERNAL_STORAGE",
1277*561a1919SCedric van Putten      "description": "Allows an application to read from external storage.",
1278*561a1919SCedric van Putten      "explanation": null,
1279*561a1919SCedric van Putten      "constant": "android.permission.READ_EXTERNAL_STORAGE",
1280*561a1919SCedric van Putten      "protection": "dangerous",
1281*561a1919SCedric van Putten      "warning": null
1282*561a1919SCedric van Putten    },
1283*561a1919SCedric van Putten    "READ_INPUT_STATE": {
1284*561a1919SCedric van Putten      "apiAdded": 1,
1285*561a1919SCedric van Putten      "apiDeprecated": 16,
1286*561a1919SCedric van Putten      "apiReplaced": null,
1287*561a1919SCedric van Putten      "name": "READ_INPUT_STATE",
1288*561a1919SCedric van Putten      "description": "",
1289*561a1919SCedric van Putten      "explanation": null,
1290*561a1919SCedric van Putten      "constant": "android.permission.READ_INPUT_STATE",
1291*561a1919SCedric van Putten      "protection": null,
1292*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 16. The API that used this permission has been removed."
1293*561a1919SCedric van Putten    },
1294*561a1919SCedric van Putten    "READ_LOGS": {
1295*561a1919SCedric van Putten      "apiAdded": 1,
1296*561a1919SCedric van Putten      "apiDeprecated": null,
1297*561a1919SCedric van Putten      "apiReplaced": null,
1298*561a1919SCedric van Putten      "name": "READ_LOGS",
1299*561a1919SCedric van Putten      "description": "Allows an application to read the low-level system log files.",
1300*561a1919SCedric van Putten      "explanation": null,
1301*561a1919SCedric van Putten      "constant": "android.permission.READ_LOGS",
1302*561a1919SCedric van Putten      "protection": null,
1303*561a1919SCedric van Putten      "warning": null
1304*561a1919SCedric van Putten    },
1305*561a1919SCedric van Putten    "READ_PHONE_NUMBERS": {
1306*561a1919SCedric van Putten      "apiAdded": 26,
1307*561a1919SCedric van Putten      "apiDeprecated": null,
1308*561a1919SCedric van Putten      "apiReplaced": null,
1309*561a1919SCedric van Putten      "name": "READ_PHONE_NUMBERS",
1310*561a1919SCedric van Putten      "description": "Allows read access to the device's phone number(s).",
1311*561a1919SCedric van Putten      "explanation": "This is a subset of the capabilities granted by <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#READ_PHONE_STATE\">READ_PHONE_STATE</a></code> but is exposed to instant applications.",
1312*561a1919SCedric van Putten      "constant": "android.permission.READ_PHONE_NUMBERS",
1313*561a1919SCedric van Putten      "protection": "dangerous",
1314*561a1919SCedric van Putten      "warning": null
1315*561a1919SCedric van Putten    },
1316*561a1919SCedric van Putten    "READ_PHONE_STATE": {
1317*561a1919SCedric van Putten      "apiAdded": 1,
1318*561a1919SCedric van Putten      "apiDeprecated": null,
1319*561a1919SCedric van Putten      "apiReplaced": null,
1320*561a1919SCedric van Putten      "name": "READ_PHONE_STATE",
1321*561a1919SCedric van Putten      "description": "Allows read only access to phone state, including the current cellular network information, the status of any ongoing calls, and a list of any PhoneAccounts registered on the device.",
1322*561a1919SCedric van Putten      "explanation": "Allows read only access to phone state, including the current cellular network information, the status of any ongoing calls, and a list of any <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/telecom/PhoneAccount\">PhoneAccount</a></code>s registered on the device.",
1323*561a1919SCedric van Putten      "constant": "android.permission.READ_PHONE_STATE",
1324*561a1919SCedric van Putten      "protection": "dangerous",
1325*561a1919SCedric van Putten      "warning": null
1326*561a1919SCedric van Putten    },
1327*561a1919SCedric van Putten    "READ_PRECISE_PHONE_STATE": {
1328*561a1919SCedric van Putten      "apiAdded": 30,
1329*561a1919SCedric van Putten      "apiDeprecated": null,
1330*561a1919SCedric van Putten      "apiReplaced": null,
1331*561a1919SCedric van Putten      "name": "READ_PRECISE_PHONE_STATE",
1332*561a1919SCedric van Putten      "description": "Allows read only access to precise phone state.",
1333*561a1919SCedric van Putten      "explanation": "Allows reading of detailed information about phone state for special-use applications such as dialers, carrier applications, or ims applications.",
1334*561a1919SCedric van Putten      "constant": "android.permission.READ_PRECISE_PHONE_STATE",
1335*561a1919SCedric van Putten      "protection": null,
1336*561a1919SCedric van Putten      "warning": null
1337*561a1919SCedric van Putten    },
1338*561a1919SCedric van Putten    "READ_SMS": {
1339*561a1919SCedric van Putten      "apiAdded": 1,
1340*561a1919SCedric van Putten      "apiDeprecated": null,
1341*561a1919SCedric van Putten      "apiReplaced": null,
1342*561a1919SCedric van Putten      "name": "READ_SMS",
1343*561a1919SCedric van Putten      "description": "Allows an application to read SMS messages.",
1344*561a1919SCedric van Putten      "explanation": null,
1345*561a1919SCedric van Putten      "constant": "android.permission.READ_SMS",
1346*561a1919SCedric van Putten      "protection": "dangerous",
1347*561a1919SCedric van Putten      "warning": null
1348*561a1919SCedric van Putten    },
1349*561a1919SCedric van Putten    "READ_SYNC_SETTINGS": {
1350*561a1919SCedric van Putten      "apiAdded": 1,
1351*561a1919SCedric van Putten      "apiDeprecated": null,
1352*561a1919SCedric van Putten      "apiReplaced": null,
1353*561a1919SCedric van Putten      "name": "READ_SYNC_SETTINGS",
1354*561a1919SCedric van Putten      "description": "Allows applications to read the sync settings.",
1355*561a1919SCedric van Putten      "explanation": null,
1356*561a1919SCedric van Putten      "constant": "android.permission.READ_SYNC_SETTINGS",
1357*561a1919SCedric van Putten      "protection": "normal",
1358*561a1919SCedric van Putten      "warning": null
1359*561a1919SCedric van Putten    },
1360*561a1919SCedric van Putten    "READ_SYNC_STATS": {
1361*561a1919SCedric van Putten      "apiAdded": 1,
1362*561a1919SCedric van Putten      "apiDeprecated": null,
1363*561a1919SCedric van Putten      "apiReplaced": null,
1364*561a1919SCedric van Putten      "name": "READ_SYNC_STATS",
1365*561a1919SCedric van Putten      "description": "Allows applications to read the sync stats.",
1366*561a1919SCedric van Putten      "explanation": null,
1367*561a1919SCedric van Putten      "constant": "android.permission.READ_SYNC_STATS",
1368*561a1919SCedric van Putten      "protection": "normal",
1369*561a1919SCedric van Putten      "warning": null
1370*561a1919SCedric van Putten    },
1371*561a1919SCedric van Putten    "READ_VOICEMAIL": {
1372*561a1919SCedric van Putten      "apiAdded": 21,
1373*561a1919SCedric van Putten      "apiDeprecated": null,
1374*561a1919SCedric van Putten      "apiReplaced": null,
1375*561a1919SCedric van Putten      "name": "READ_VOICEMAIL",
1376*561a1919SCedric van Putten      "description": "Allows an application to read voicemails in the system.",
1377*561a1919SCedric van Putten      "explanation": null,
1378*561a1919SCedric van Putten      "constant": "com.android.voicemail.permission.READ_VOICEMAIL",
1379*561a1919SCedric van Putten      "protection": "signature|privileged|role",
1380*561a1919SCedric van Putten      "warning": null
1381*561a1919SCedric van Putten    },
1382*561a1919SCedric van Putten    "REBOOT": {
1383*561a1919SCedric van Putten      "apiAdded": 1,
1384*561a1919SCedric van Putten      "apiDeprecated": null,
1385*561a1919SCedric van Putten      "apiReplaced": null,
1386*561a1919SCedric van Putten      "name": "REBOOT",
1387*561a1919SCedric van Putten      "description": "Required to be able to reboot the device.",
1388*561a1919SCedric van Putten      "explanation": null,
1389*561a1919SCedric van Putten      "constant": "android.permission.REBOOT",
1390*561a1919SCedric van Putten      "protection": null,
1391*561a1919SCedric van Putten      "warning": null
1392*561a1919SCedric van Putten    },
1393*561a1919SCedric van Putten    "RECEIVE_BOOT_COMPLETED": {
1394*561a1919SCedric van Putten      "apiAdded": 1,
1395*561a1919SCedric van Putten      "apiDeprecated": null,
1396*561a1919SCedric van Putten      "apiReplaced": null,
1397*561a1919SCedric van Putten      "name": "RECEIVE_BOOT_COMPLETED",
1398*561a1919SCedric van Putten      "description": "Allows an application to receive the Intent.ACTION_BOOT_COMPLETED that is broadcast after the system finishes booting.",
1399*561a1919SCedric van Putten      "explanation": "Allows an application to receive the <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/content/Intent#ACTION_BOOT_COMPLETED\">Intent.ACTION_BOOT_COMPLETED</a></code> that is broadcast after the system finishes booting. If you don't request this permission, you will not receive the broadcast at that time. Though holding this permission does not have any security implications, it can have a negative impact on the user experience by increasing the amount of time it takes the system to start and allowing applications to have themselves running without the user being aware of them. As such, you must explicitly declare your use of this facility to make that visible to the user.",
1400*561a1919SCedric van Putten      "constant": "android.permission.RECEIVE_BOOT_COMPLETED",
1401*561a1919SCedric van Putten      "protection": "normal",
1402*561a1919SCedric van Putten      "warning": null
1403*561a1919SCedric van Putten    },
1404*561a1919SCedric van Putten    "RECEIVE_MMS": {
1405*561a1919SCedric van Putten      "apiAdded": 1,
1406*561a1919SCedric van Putten      "apiDeprecated": null,
1407*561a1919SCedric van Putten      "apiReplaced": null,
1408*561a1919SCedric van Putten      "name": "RECEIVE_MMS",
1409*561a1919SCedric van Putten      "description": "Allows an application to monitor incoming MMS messages.",
1410*561a1919SCedric van Putten      "explanation": null,
1411*561a1919SCedric van Putten      "constant": "android.permission.RECEIVE_MMS",
1412*561a1919SCedric van Putten      "protection": "dangerous",
1413*561a1919SCedric van Putten      "warning": null
1414*561a1919SCedric van Putten    },
1415*561a1919SCedric van Putten    "RECEIVE_SMS": {
1416*561a1919SCedric van Putten      "apiAdded": 1,
1417*561a1919SCedric van Putten      "apiDeprecated": null,
1418*561a1919SCedric van Putten      "apiReplaced": null,
1419*561a1919SCedric van Putten      "name": "RECEIVE_SMS",
1420*561a1919SCedric van Putten      "description": "Allows an application to receive SMS messages.",
1421*561a1919SCedric van Putten      "explanation": null,
1422*561a1919SCedric van Putten      "constant": "android.permission.RECEIVE_SMS",
1423*561a1919SCedric van Putten      "protection": "dangerous",
1424*561a1919SCedric van Putten      "warning": null
1425*561a1919SCedric van Putten    },
1426*561a1919SCedric van Putten    "RECEIVE_WAP_PUSH": {
1427*561a1919SCedric van Putten      "apiAdded": 1,
1428*561a1919SCedric van Putten      "apiDeprecated": null,
1429*561a1919SCedric van Putten      "apiReplaced": null,
1430*561a1919SCedric van Putten      "name": "RECEIVE_WAP_PUSH",
1431*561a1919SCedric van Putten      "description": "Allows an application to receive WAP push messages.",
1432*561a1919SCedric van Putten      "explanation": null,
1433*561a1919SCedric van Putten      "constant": "android.permission.RECEIVE_WAP_PUSH",
1434*561a1919SCedric van Putten      "protection": "dangerous",
1435*561a1919SCedric van Putten      "warning": null
1436*561a1919SCedric van Putten    },
1437*561a1919SCedric van Putten    "RECORD_AUDIO": {
1438*561a1919SCedric van Putten      "apiAdded": 1,
1439*561a1919SCedric van Putten      "apiDeprecated": null,
1440*561a1919SCedric van Putten      "apiReplaced": null,
1441*561a1919SCedric van Putten      "name": "RECORD_AUDIO",
1442*561a1919SCedric van Putten      "description": "Allows an application to record audio.",
1443*561a1919SCedric van Putten      "explanation": null,
1444*561a1919SCedric van Putten      "constant": "android.permission.RECORD_AUDIO",
1445*561a1919SCedric van Putten      "protection": "dangerous",
1446*561a1919SCedric van Putten      "warning": null
1447*561a1919SCedric van Putten    },
1448*561a1919SCedric van Putten    "REORDER_TASKS": {
1449*561a1919SCedric van Putten      "apiAdded": 1,
1450*561a1919SCedric van Putten      "apiDeprecated": null,
1451*561a1919SCedric van Putten      "apiReplaced": null,
1452*561a1919SCedric van Putten      "name": "REORDER_TASKS",
1453*561a1919SCedric van Putten      "description": "Allows an application to change the Z-order of tasks.",
1454*561a1919SCedric van Putten      "explanation": null,
1455*561a1919SCedric van Putten      "constant": "android.permission.REORDER_TASKS",
1456*561a1919SCedric van Putten      "protection": "normal",
1457*561a1919SCedric van Putten      "warning": null
1458*561a1919SCedric van Putten    },
1459*561a1919SCedric van Putten    "REQUEST_COMPANION_PROFILE_WATCH": {
1460*561a1919SCedric van Putten      "apiAdded": 31,
1461*561a1919SCedric van Putten      "apiDeprecated": null,
1462*561a1919SCedric van Putten      "apiReplaced": null,
1463*561a1919SCedric van Putten      "name": "REQUEST_COMPANION_PROFILE_WATCH",
1464*561a1919SCedric van Putten      "description": "Allows app to request to be associated with a device via CompanionDeviceManager as a \"watch\"",
1465*561a1919SCedric van Putten      "explanation": "Allows app to request to be associated with a device via <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/companion/CompanionDeviceManager\">CompanionDeviceManager</a></code> as a \"watch\"",
1466*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_COMPANION_PROFILE_WATCH",
1467*561a1919SCedric van Putten      "protection": "normal",
1468*561a1919SCedric van Putten      "warning": null
1469*561a1919SCedric van Putten    },
1470*561a1919SCedric van Putten    "REQUEST_COMPANION_RUN_IN_BACKGROUND": {
1471*561a1919SCedric van Putten      "apiAdded": 26,
1472*561a1919SCedric van Putten      "apiDeprecated": null,
1473*561a1919SCedric van Putten      "apiReplaced": null,
1474*561a1919SCedric van Putten      "name": "REQUEST_COMPANION_RUN_IN_BACKGROUND",
1475*561a1919SCedric van Putten      "description": "Allows a companion app to run in the background.",
1476*561a1919SCedric van Putten      "explanation": "This permission implies <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND\">REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND</a></code>, and allows to start a foreground service from the background. If an app does not have to run in the background, but only needs to start a foreground service from the background, consider using <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/Manifest.permission#REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND\">REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND</a></code>, which is less powerful.",
1477*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_COMPANION_RUN_IN_BACKGROUND",
1478*561a1919SCedric van Putten      "protection": "normal",
1479*561a1919SCedric van Putten      "warning": null
1480*561a1919SCedric van Putten    },
1481*561a1919SCedric van Putten    "REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND": {
1482*561a1919SCedric van Putten      "apiAdded": 31,
1483*561a1919SCedric van Putten      "apiDeprecated": null,
1484*561a1919SCedric van Putten      "apiReplaced": null,
1485*561a1919SCedric van Putten      "name": "REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND",
1486*561a1919SCedric van Putten      "description": "Allows a companion app to start a foreground service from the background.",
1487*561a1919SCedric van Putten      "explanation": null,
1488*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_COMPANION_START_FOREGROUND_SERVICES_FROM_BACKGROUND",
1489*561a1919SCedric van Putten      "protection": "normal",
1490*561a1919SCedric van Putten      "warning": null
1491*561a1919SCedric van Putten    },
1492*561a1919SCedric van Putten    "REQUEST_COMPANION_USE_DATA_IN_BACKGROUND": {
1493*561a1919SCedric van Putten      "apiAdded": 26,
1494*561a1919SCedric van Putten      "apiDeprecated": null,
1495*561a1919SCedric van Putten      "apiReplaced": null,
1496*561a1919SCedric van Putten      "name": "REQUEST_COMPANION_USE_DATA_IN_BACKGROUND",
1497*561a1919SCedric van Putten      "description": "Allows a companion app to use data in the background.",
1498*561a1919SCedric van Putten      "explanation": null,
1499*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_COMPANION_USE_DATA_IN_BACKGROUND",
1500*561a1919SCedric van Putten      "protection": "normal",
1501*561a1919SCedric van Putten      "warning": null
1502*561a1919SCedric van Putten    },
1503*561a1919SCedric van Putten    "REQUEST_DELETE_PACKAGES": {
1504*561a1919SCedric van Putten      "apiAdded": 26,
1505*561a1919SCedric van Putten      "apiDeprecated": null,
1506*561a1919SCedric van Putten      "apiReplaced": null,
1507*561a1919SCedric van Putten      "name": "REQUEST_DELETE_PACKAGES",
1508*561a1919SCedric van Putten      "description": "Allows an application to request deleting packages.",
1509*561a1919SCedric van Putten      "explanation": "Apps targeting APIs <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/os/Build.VERSION_CODES#P\">Build.VERSION_CODES.P</a></code> or greater must hold this permission in order to use <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/content/Intent#ACTION_UNINSTALL_PACKAGE\">Intent.ACTION_UNINSTALL_PACKAGE</a></code> or <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/content/pm/PackageInstaller#uninstall(android.content.pm.VersionedPackage,%20android.content.IntentSender)\">PackageInstaller.uninstall(VersionedPackage, IntentSender)</a></code>.",
1510*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_DELETE_PACKAGES",
1511*561a1919SCedric van Putten      "protection": "normal",
1512*561a1919SCedric van Putten      "warning": null
1513*561a1919SCedric van Putten    },
1514*561a1919SCedric van Putten    "REQUEST_IGNORE_BATTERY_OPTIMIZATIONS": {
1515*561a1919SCedric van Putten      "apiAdded": 23,
1516*561a1919SCedric van Putten      "apiDeprecated": null,
1517*561a1919SCedric van Putten      "apiReplaced": null,
1518*561a1919SCedric van Putten      "name": "REQUEST_IGNORE_BATTERY_OPTIMIZATIONS",
1519*561a1919SCedric van Putten      "description": "Permission an application must hold in order to use Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS.",
1520*561a1919SCedric van Putten      "explanation": "Permission an application must hold in order to use <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/provider/Settings#ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS\">Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS</a></code>.",
1521*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS",
1522*561a1919SCedric van Putten      "protection": "normal",
1523*561a1919SCedric van Putten      "warning": null
1524*561a1919SCedric van Putten    },
1525*561a1919SCedric van Putten    "REQUEST_INSTALL_PACKAGES": {
1526*561a1919SCedric van Putten      "apiAdded": 23,
1527*561a1919SCedric van Putten      "apiDeprecated": null,
1528*561a1919SCedric van Putten      "apiReplaced": null,
1529*561a1919SCedric van Putten      "name": "REQUEST_INSTALL_PACKAGES",
1530*561a1919SCedric van Putten      "description": "Allows an application to request installing packages.",
1531*561a1919SCedric van Putten      "explanation": "Apps targeting APIs greater than 25 must hold this permission in order to use <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/content/Intent#ACTION_INSTALL_PACKAGE\">Intent.ACTION_INSTALL_PACKAGE</a></code>.",
1532*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_INSTALL_PACKAGES",
1533*561a1919SCedric van Putten      "protection": "signature",
1534*561a1919SCedric van Putten      "warning": null
1535*561a1919SCedric van Putten    },
1536*561a1919SCedric van Putten    "REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE": {
1537*561a1919SCedric van Putten      "apiAdded": 31,
1538*561a1919SCedric van Putten      "apiDeprecated": null,
1539*561a1919SCedric van Putten      "apiReplaced": null,
1540*561a1919SCedric van Putten      "name": "REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE",
1541*561a1919SCedric van Putten      "description": "Allows an application to subscribe to notifications about the presence status change of their associated companion device",
1542*561a1919SCedric van Putten      "explanation": null,
1543*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_OBSERVE_COMPANION_DEVICE_PRESENCE",
1544*561a1919SCedric van Putten      "protection": null,
1545*561a1919SCedric van Putten      "warning": null
1546*561a1919SCedric van Putten    },
1547*561a1919SCedric van Putten    "REQUEST_PASSWORD_COMPLEXITY": {
1548*561a1919SCedric van Putten      "apiAdded": 29,
1549*561a1919SCedric van Putten      "apiDeprecated": null,
1550*561a1919SCedric van Putten      "apiReplaced": null,
1551*561a1919SCedric van Putten      "name": "REQUEST_PASSWORD_COMPLEXITY",
1552*561a1919SCedric van Putten      "description": "Allows an application to request the screen lock complexity and prompt users to update the screen lock to a certain complexity level.",
1553*561a1919SCedric van Putten      "explanation": null,
1554*561a1919SCedric van Putten      "constant": "android.permission.REQUEST_PASSWORD_COMPLEXITY",
1555*561a1919SCedric van Putten      "protection": "normal",
1556*561a1919SCedric van Putten      "warning": null
1557*561a1919SCedric van Putten    },
1558*561a1919SCedric van Putten    "RESTART_PACKAGES": {
1559*561a1919SCedric van Putten      "apiAdded": 1,
1560*561a1919SCedric van Putten      "apiDeprecated": 15,
1561*561a1919SCedric van Putten      "apiReplaced": "ActivityManager.restartPackage(String)",
1562*561a1919SCedric van Putten      "name": "RESTART_PACKAGES",
1563*561a1919SCedric van Putten      "description": "",
1564*561a1919SCedric van Putten      "explanation": null,
1565*561a1919SCedric van Putten      "constant": "android.permission.RESTART_PACKAGES",
1566*561a1919SCedric van Putten      "protection": null,
1567*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 15. The ActivityManager.restartPackage(String) API is no longer supported."
1568*561a1919SCedric van Putten    },
1569*561a1919SCedric van Putten    "SCHEDULE_EXACT_ALARM": {
1570*561a1919SCedric van Putten      "apiAdded": 31,
1571*561a1919SCedric van Putten      "apiDeprecated": null,
1572*561a1919SCedric van Putten      "apiReplaced": null,
1573*561a1919SCedric van Putten      "name": "SCHEDULE_EXACT_ALARM",
1574*561a1919SCedric van Putten      "description": "Allows applications to use exact alarm APIs.",
1575*561a1919SCedric van Putten      "explanation": null,
1576*561a1919SCedric van Putten      "constant": "android.permission.SCHEDULE_EXACT_ALARM",
1577*561a1919SCedric van Putten      "protection": null,
1578*561a1919SCedric van Putten      "warning": null
1579*561a1919SCedric van Putten    },
1580*561a1919SCedric van Putten    "SEND_RESPOND_VIA_MESSAGE": {
1581*561a1919SCedric van Putten      "apiAdded": 18,
1582*561a1919SCedric van Putten      "apiDeprecated": null,
1583*561a1919SCedric van Putten      "apiReplaced": null,
1584*561a1919SCedric van Putten      "name": "SEND_RESPOND_VIA_MESSAGE",
1585*561a1919SCedric van Putten      "description": "Allows an application (Phone) to send a request to other applications to handle the respond-via-message action during incoming calls.",
1586*561a1919SCedric van Putten      "explanation": null,
1587*561a1919SCedric van Putten      "constant": "android.permission.SEND_RESPOND_VIA_MESSAGE",
1588*561a1919SCedric van Putten      "protection": null,
1589*561a1919SCedric van Putten      "warning": null
1590*561a1919SCedric van Putten    },
1591*561a1919SCedric van Putten    "SEND_SMS": {
1592*561a1919SCedric van Putten      "apiAdded": 1,
1593*561a1919SCedric van Putten      "apiDeprecated": null,
1594*561a1919SCedric van Putten      "apiReplaced": null,
1595*561a1919SCedric van Putten      "name": "SEND_SMS",
1596*561a1919SCedric van Putten      "description": "Allows an application to send SMS messages.",
1597*561a1919SCedric van Putten      "explanation": null,
1598*561a1919SCedric van Putten      "constant": "android.permission.SEND_SMS",
1599*561a1919SCedric van Putten      "protection": "dangerous",
1600*561a1919SCedric van Putten      "warning": null
1601*561a1919SCedric van Putten    },
1602*561a1919SCedric van Putten    "SET_ALARM": {
1603*561a1919SCedric van Putten      "apiAdded": 9,
1604*561a1919SCedric van Putten      "apiDeprecated": null,
1605*561a1919SCedric van Putten      "apiReplaced": null,
1606*561a1919SCedric van Putten      "name": "SET_ALARM",
1607*561a1919SCedric van Putten      "description": "Allows an application to broadcast an Intent to set an alarm for the user.",
1608*561a1919SCedric van Putten      "explanation": null,
1609*561a1919SCedric van Putten      "constant": "com.android.alarm.permission.SET_ALARM",
1610*561a1919SCedric van Putten      "protection": "normal",
1611*561a1919SCedric van Putten      "warning": null
1612*561a1919SCedric van Putten    },
1613*561a1919SCedric van Putten    "SET_ALWAYS_FINISH": {
1614*561a1919SCedric van Putten      "apiAdded": 1,
1615*561a1919SCedric van Putten      "apiDeprecated": null,
1616*561a1919SCedric van Putten      "apiReplaced": null,
1617*561a1919SCedric van Putten      "name": "SET_ALWAYS_FINISH",
1618*561a1919SCedric van Putten      "description": "Allows an application to control whether activities are immediately finished when put in the background.",
1619*561a1919SCedric van Putten      "explanation": null,
1620*561a1919SCedric van Putten      "constant": "android.permission.SET_ALWAYS_FINISH",
1621*561a1919SCedric van Putten      "protection": null,
1622*561a1919SCedric van Putten      "warning": null
1623*561a1919SCedric van Putten    },
1624*561a1919SCedric van Putten    "SET_ANIMATION_SCALE": {
1625*561a1919SCedric van Putten      "apiAdded": 1,
1626*561a1919SCedric van Putten      "apiDeprecated": null,
1627*561a1919SCedric van Putten      "apiReplaced": null,
1628*561a1919SCedric van Putten      "name": "SET_ANIMATION_SCALE",
1629*561a1919SCedric van Putten      "description": "Modify the global animation scaling factor.",
1630*561a1919SCedric van Putten      "explanation": null,
1631*561a1919SCedric van Putten      "constant": "android.permission.SET_ANIMATION_SCALE",
1632*561a1919SCedric van Putten      "protection": null,
1633*561a1919SCedric van Putten      "warning": null
1634*561a1919SCedric van Putten    },
1635*561a1919SCedric van Putten    "SET_DEBUG_APP": {
1636*561a1919SCedric van Putten      "apiAdded": 1,
1637*561a1919SCedric van Putten      "apiDeprecated": null,
1638*561a1919SCedric van Putten      "apiReplaced": null,
1639*561a1919SCedric van Putten      "name": "SET_DEBUG_APP",
1640*561a1919SCedric van Putten      "description": "Configure an application for debugging.",
1641*561a1919SCedric van Putten      "explanation": null,
1642*561a1919SCedric van Putten      "constant": "android.permission.SET_DEBUG_APP",
1643*561a1919SCedric van Putten      "protection": null,
1644*561a1919SCedric van Putten      "warning": null
1645*561a1919SCedric van Putten    },
1646*561a1919SCedric van Putten    "SET_PREFERRED_APPLICATIONS": {
1647*561a1919SCedric van Putten      "apiAdded": 1,
1648*561a1919SCedric van Putten      "apiDeprecated": 15,
1649*561a1919SCedric van Putten      "apiReplaced": "PackageManager.addPackageToPreferred(String)",
1650*561a1919SCedric van Putten      "name": "SET_PREFERRED_APPLICATIONS",
1651*561a1919SCedric van Putten      "description": "",
1652*561a1919SCedric van Putten      "explanation": null,
1653*561a1919SCedric van Putten      "constant": "android.permission.SET_PREFERRED_APPLICATIONS",
1654*561a1919SCedric van Putten      "protection": null,
1655*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 15. No longer useful, see PackageManager.addPackageToPreferred(String) for details."
1656*561a1919SCedric van Putten    },
1657*561a1919SCedric van Putten    "SET_PROCESS_LIMIT": {
1658*561a1919SCedric van Putten      "apiAdded": 1,
1659*561a1919SCedric van Putten      "apiDeprecated": null,
1660*561a1919SCedric van Putten      "apiReplaced": null,
1661*561a1919SCedric van Putten      "name": "SET_PROCESS_LIMIT",
1662*561a1919SCedric van Putten      "description": "Allows an application to set the maximum number of (not needed) application processes that can be running.",
1663*561a1919SCedric van Putten      "explanation": null,
1664*561a1919SCedric van Putten      "constant": "android.permission.SET_PROCESS_LIMIT",
1665*561a1919SCedric van Putten      "protection": null,
1666*561a1919SCedric van Putten      "warning": null
1667*561a1919SCedric van Putten    },
1668*561a1919SCedric van Putten    "SET_TIME": {
1669*561a1919SCedric van Putten      "apiAdded": 8,
1670*561a1919SCedric van Putten      "apiDeprecated": null,
1671*561a1919SCedric van Putten      "apiReplaced": null,
1672*561a1919SCedric van Putten      "name": "SET_TIME",
1673*561a1919SCedric van Putten      "description": "Allows applications to set the system time directly.",
1674*561a1919SCedric van Putten      "explanation": null,
1675*561a1919SCedric van Putten      "constant": "android.permission.SET_TIME",
1676*561a1919SCedric van Putten      "protection": null,
1677*561a1919SCedric van Putten      "warning": null
1678*561a1919SCedric van Putten    },
1679*561a1919SCedric van Putten    "SET_TIME_ZONE": {
1680*561a1919SCedric van Putten      "apiAdded": 1,
1681*561a1919SCedric van Putten      "apiDeprecated": null,
1682*561a1919SCedric van Putten      "apiReplaced": null,
1683*561a1919SCedric van Putten      "name": "SET_TIME_ZONE",
1684*561a1919SCedric van Putten      "description": "Allows applications to set the system time zone directly.",
1685*561a1919SCedric van Putten      "explanation": null,
1686*561a1919SCedric van Putten      "constant": "android.permission.SET_TIME_ZONE",
1687*561a1919SCedric van Putten      "protection": null,
1688*561a1919SCedric van Putten      "warning": null
1689*561a1919SCedric van Putten    },
1690*561a1919SCedric van Putten    "SET_WALLPAPER": {
1691*561a1919SCedric van Putten      "apiAdded": 1,
1692*561a1919SCedric van Putten      "apiDeprecated": null,
1693*561a1919SCedric van Putten      "apiReplaced": null,
1694*561a1919SCedric van Putten      "name": "SET_WALLPAPER",
1695*561a1919SCedric van Putten      "description": "Allows applications to set the wallpaper.",
1696*561a1919SCedric van Putten      "explanation": null,
1697*561a1919SCedric van Putten      "constant": "android.permission.SET_WALLPAPER",
1698*561a1919SCedric van Putten      "protection": "normal",
1699*561a1919SCedric van Putten      "warning": null
1700*561a1919SCedric van Putten    },
1701*561a1919SCedric van Putten    "SET_WALLPAPER_HINTS": {
1702*561a1919SCedric van Putten      "apiAdded": 1,
1703*561a1919SCedric van Putten      "apiDeprecated": null,
1704*561a1919SCedric van Putten      "apiReplaced": null,
1705*561a1919SCedric van Putten      "name": "SET_WALLPAPER_HINTS",
1706*561a1919SCedric van Putten      "description": "Allows applications to set the wallpaper hints.",
1707*561a1919SCedric van Putten      "explanation": null,
1708*561a1919SCedric van Putten      "constant": "android.permission.SET_WALLPAPER_HINTS",
1709*561a1919SCedric van Putten      "protection": "normal",
1710*561a1919SCedric van Putten      "warning": null
1711*561a1919SCedric van Putten    },
1712*561a1919SCedric van Putten    "SIGNAL_PERSISTENT_PROCESSES": {
1713*561a1919SCedric van Putten      "apiAdded": 1,
1714*561a1919SCedric van Putten      "apiDeprecated": null,
1715*561a1919SCedric van Putten      "apiReplaced": null,
1716*561a1919SCedric van Putten      "name": "SIGNAL_PERSISTENT_PROCESSES",
1717*561a1919SCedric van Putten      "description": "Allow an application to request that a signal be sent to all persistent processes.",
1718*561a1919SCedric van Putten      "explanation": null,
1719*561a1919SCedric van Putten      "constant": "android.permission.SIGNAL_PERSISTENT_PROCESSES",
1720*561a1919SCedric van Putten      "protection": null,
1721*561a1919SCedric van Putten      "warning": null
1722*561a1919SCedric van Putten    },
1723*561a1919SCedric van Putten    "SMS_FINANCIAL_TRANSACTIONS": {
1724*561a1919SCedric van Putten      "apiAdded": 29,
1725*561a1919SCedric van Putten      "apiDeprecated": 31,
1726*561a1919SCedric van Putten      "apiReplaced": null,
1727*561a1919SCedric van Putten      "name": "SMS_FINANCIAL_TRANSACTIONS",
1728*561a1919SCedric van Putten      "description": "",
1729*561a1919SCedric van Putten      "explanation": null,
1730*561a1919SCedric van Putten      "constant": "android.permission.SMS_FINANCIAL_TRANSACTIONS",
1731*561a1919SCedric van Putten      "protection": null,
1732*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 31. The API that used this permission is no longer functional."
1733*561a1919SCedric van Putten    },
1734*561a1919SCedric van Putten    "START_FOREGROUND_SERVICES_FROM_BACKGROUND": {
1735*561a1919SCedric van Putten      "apiAdded": 31,
1736*561a1919SCedric van Putten      "apiDeprecated": null,
1737*561a1919SCedric van Putten      "apiReplaced": null,
1738*561a1919SCedric van Putten      "name": "START_FOREGROUND_SERVICES_FROM_BACKGROUND",
1739*561a1919SCedric van Putten      "description": "Allows an application to start foreground services from the background at any time.",
1740*561a1919SCedric van Putten      "explanation": "<em>This permission is not for use by third-party applications</em>, with the only exception being if the app is the default SMS app. Otherwise, it's only usable by privileged apps, app verifier app, and apps with any of the EMERGENCY or SYSTEM GALLERY roles.",
1741*561a1919SCedric van Putten      "constant": "android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND",
1742*561a1919SCedric van Putten      "protection": null,
1743*561a1919SCedric van Putten      "warning": null
1744*561a1919SCedric van Putten    },
1745*561a1919SCedric van Putten    "START_VIEW_PERMISSION_USAGE": {
1746*561a1919SCedric van Putten      "apiAdded": 29,
1747*561a1919SCedric van Putten      "apiDeprecated": null,
1748*561a1919SCedric van Putten      "apiReplaced": null,
1749*561a1919SCedric van Putten      "name": "START_VIEW_PERMISSION_USAGE",
1750*561a1919SCedric van Putten      "description": "Allows the holder to start the permission usage screen for an app.",
1751*561a1919SCedric van Putten      "explanation": null,
1752*561a1919SCedric van Putten      "constant": "android.permission.START_VIEW_PERMISSION_USAGE",
1753*561a1919SCedric van Putten      "protection": "signature|installer",
1754*561a1919SCedric van Putten      "warning": null
1755*561a1919SCedric van Putten    },
1756*561a1919SCedric van Putten    "STATUS_BAR": {
1757*561a1919SCedric van Putten      "apiAdded": 1,
1758*561a1919SCedric van Putten      "apiDeprecated": null,
1759*561a1919SCedric van Putten      "apiReplaced": null,
1760*561a1919SCedric van Putten      "name": "STATUS_BAR",
1761*561a1919SCedric van Putten      "description": "Allows an application to open, close, or disable the status bar and its icons.",
1762*561a1919SCedric van Putten      "explanation": null,
1763*561a1919SCedric van Putten      "constant": "android.permission.STATUS_BAR",
1764*561a1919SCedric van Putten      "protection": null,
1765*561a1919SCedric van Putten      "warning": null
1766*561a1919SCedric van Putten    },
1767*561a1919SCedric van Putten    "SYSTEM_ALERT_WINDOW": {
1768*561a1919SCedric van Putten      "apiAdded": 1,
1769*561a1919SCedric van Putten      "apiDeprecated": null,
1770*561a1919SCedric van Putten      "apiReplaced": null,
1771*561a1919SCedric van Putten      "name": "SYSTEM_ALERT_WINDOW",
1772*561a1919SCedric van Putten      "description": "Allows an app to create windows using the type WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY, shown on top of all other apps.",
1773*561a1919SCedric van Putten      "explanation": "Allows an app to create windows using the type <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/view/WindowManager.LayoutParams#TYPE_APPLICATION_OVERLAY\">WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY</a></code>, shown on top of all other apps. Very few apps should use this permission; these windows are intended for system-level interaction with the user.",
1774*561a1919SCedric van Putten      "constant": "android.permission.SYSTEM_ALERT_WINDOW",
1775*561a1919SCedric van Putten      "protection": "signature|setup|appop|installer|pre23|development",
1776*561a1919SCedric van Putten      "warning": null
1777*561a1919SCedric van Putten    },
1778*561a1919SCedric van Putten    "TRANSMIT_IR": {
1779*561a1919SCedric van Putten      "apiAdded": 19,
1780*561a1919SCedric van Putten      "apiDeprecated": null,
1781*561a1919SCedric van Putten      "apiReplaced": null,
1782*561a1919SCedric van Putten      "name": "TRANSMIT_IR",
1783*561a1919SCedric van Putten      "description": "Allows using the device's IR transmitter, if available.",
1784*561a1919SCedric van Putten      "explanation": null,
1785*561a1919SCedric van Putten      "constant": "android.permission.TRANSMIT_IR",
1786*561a1919SCedric van Putten      "protection": "normal",
1787*561a1919SCedric van Putten      "warning": null
1788*561a1919SCedric van Putten    },
1789*561a1919SCedric van Putten    "UNINSTALL_SHORTCUT": {
1790*561a1919SCedric van Putten      "apiAdded": 19,
1791*561a1919SCedric van Putten      "apiDeprecated": null,
1792*561a1919SCedric van Putten      "apiReplaced": null,
1793*561a1919SCedric van Putten      "name": "UNINSTALL_SHORTCUT",
1794*561a1919SCedric van Putten      "description": "",
1795*561a1919SCedric van Putten      "explanation": null,
1796*561a1919SCedric van Putten      "constant": "com.android.launcher.permission.UNINSTALL_SHORTCUT",
1797*561a1919SCedric van Putten      "protection": null,
1798*561a1919SCedric van Putten      "warning": "Don't use this permission in your app.This permission is no longer supported."
1799*561a1919SCedric van Putten    },
1800*561a1919SCedric van Putten    "UPDATE_DEVICE_STATS": {
1801*561a1919SCedric van Putten      "apiAdded": 3,
1802*561a1919SCedric van Putten      "apiDeprecated": null,
1803*561a1919SCedric van Putten      "apiReplaced": null,
1804*561a1919SCedric van Putten      "name": "UPDATE_DEVICE_STATS",
1805*561a1919SCedric van Putten      "description": "Allows an application to update device statistics.",
1806*561a1919SCedric van Putten      "explanation": null,
1807*561a1919SCedric van Putten      "constant": "android.permission.UPDATE_DEVICE_STATS",
1808*561a1919SCedric van Putten      "protection": null,
1809*561a1919SCedric van Putten      "warning": null
1810*561a1919SCedric van Putten    },
1811*561a1919SCedric van Putten    "UPDATE_PACKAGES_WITHOUT_USER_ACTION": {
1812*561a1919SCedric van Putten      "apiAdded": 31,
1813*561a1919SCedric van Putten      "apiDeprecated": null,
1814*561a1919SCedric van Putten      "apiReplaced": null,
1815*561a1919SCedric van Putten      "name": "UPDATE_PACKAGES_WITHOUT_USER_ACTION",
1816*561a1919SCedric van Putten      "description": "Allows an application to indicate via PackageInstaller.SessionParams.setRequireUserAction(int) that user action should not be required for an app update.",
1817*561a1919SCedric van Putten      "explanation": "Allows an application to indicate via <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/content/pm/PackageInstaller.SessionParams#setRequireUserAction(int)\">PackageInstaller.SessionParams.setRequireUserAction(int)</a></code> that user action should not be required for an app update.",
1818*561a1919SCedric van Putten      "constant": "android.permission.UPDATE_PACKAGES_WITHOUT_USER_ACTION",
1819*561a1919SCedric van Putten      "protection": "normal",
1820*561a1919SCedric van Putten      "warning": null
1821*561a1919SCedric van Putten    },
1822*561a1919SCedric van Putten    "USE_BIOMETRIC": {
1823*561a1919SCedric van Putten      "apiAdded": 28,
1824*561a1919SCedric van Putten      "apiDeprecated": null,
1825*561a1919SCedric van Putten      "apiReplaced": null,
1826*561a1919SCedric van Putten      "name": "USE_BIOMETRIC",
1827*561a1919SCedric van Putten      "description": "Allows an app to use device supported biometric modalities.",
1828*561a1919SCedric van Putten      "explanation": null,
1829*561a1919SCedric van Putten      "constant": "android.permission.USE_BIOMETRIC",
1830*561a1919SCedric van Putten      "protection": "normal",
1831*561a1919SCedric van Putten      "warning": null
1832*561a1919SCedric van Putten    },
1833*561a1919SCedric van Putten    "USE_FINGERPRINT": {
1834*561a1919SCedric van Putten      "apiAdded": 23,
1835*561a1919SCedric van Putten      "apiDeprecated": 28,
1836*561a1919SCedric van Putten      "apiReplaced": "USE_BIOMETRIC",
1837*561a1919SCedric van Putten      "name": "USE_FINGERPRINT",
1838*561a1919SCedric van Putten      "description": "",
1839*561a1919SCedric van Putten      "explanation": null,
1840*561a1919SCedric van Putten      "constant": "android.permission.USE_FINGERPRINT",
1841*561a1919SCedric van Putten      "protection": "normal",
1842*561a1919SCedric van Putten      "warning": "This constant was deprecated in API level 28. Applications should request USE_BIOMETRIC instead"
1843*561a1919SCedric van Putten    },
1844*561a1919SCedric van Putten    "USE_FULL_SCREEN_INTENT": {
1845*561a1919SCedric van Putten      "apiAdded": 29,
1846*561a1919SCedric van Putten      "apiDeprecated": null,
1847*561a1919SCedric van Putten      "apiReplaced": null,
1848*561a1919SCedric van Putten      "name": "USE_FULL_SCREEN_INTENT",
1849*561a1919SCedric van Putten      "description": "Required for apps targeting Build.VERSION_CODES.Q that want to use notification full screen intents.",
1850*561a1919SCedric van Putten      "explanation": "Required for apps targeting <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/os/Build.VERSION_CODES#Q\">Build.VERSION_CODES.Q</a></code> that want to use <code translate=\"no\" dir=\"ltr\"><a href=\"https://developer.android.com/reference/android/app/Notification.Builder#setFullScreenIntent(android.app.PendingIntent,%20boolean)\">notification full screen intents</a></code>.",
1851*561a1919SCedric van Putten      "constant": "android.permission.USE_FULL_SCREEN_INTENT",
1852*561a1919SCedric van Putten      "protection": "normal",
1853*561a1919SCedric van Putten      "warning": null
1854*561a1919SCedric van Putten    },
1855*561a1919SCedric van Putten    "USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER": {
1856*561a1919SCedric van Putten      "apiAdded": 31,
1857*561a1919SCedric van Putten      "apiDeprecated": null,
1858*561a1919SCedric van Putten      "apiReplaced": null,
1859*561a1919SCedric van Putten      "name": "USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER",
1860*561a1919SCedric van Putten      "description": "Allows to read device identifiers and use ICC based authentication like EAP-AKA.",
1861*561a1919SCedric van Putten      "explanation": "Often required in authentication to access the carrier's server and manage services of the subscriber.",
1862*561a1919SCedric van Putten      "constant": "android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER",
1863*561a1919SCedric van Putten      "protection": "signature|appop",
1864*561a1919SCedric van Putten      "warning": null
1865*561a1919SCedric van Putten    },
1866*561a1919SCedric van Putten    "USE_SIP": {
1867*561a1919SCedric van Putten      "apiAdded": 9,
1868*561a1919SCedric van Putten      "apiDeprecated": null,
1869*561a1919SCedric van Putten      "apiReplaced": null,
1870*561a1919SCedric van Putten      "name": "USE_SIP",
1871*561a1919SCedric van Putten      "description": "Allows an application to use SIP service.",
1872*561a1919SCedric van Putten      "explanation": null,
1873*561a1919SCedric van Putten      "constant": "android.permission.USE_SIP",
1874*561a1919SCedric van Putten      "protection": "dangerous",
1875*561a1919SCedric van Putten      "warning": null
1876*561a1919SCedric van Putten    },
1877*561a1919SCedric van Putten    "UWB_RANGING": {
1878*561a1919SCedric van Putten      "apiAdded": 31,
1879*561a1919SCedric van Putten      "apiDeprecated": null,
1880*561a1919SCedric van Putten      "apiReplaced": null,
1881*561a1919SCedric van Putten      "name": "UWB_RANGING",
1882*561a1919SCedric van Putten      "description": "Required to be able to range to devices using ultra-wideband.",
1883*561a1919SCedric van Putten      "explanation": null,
1884*561a1919SCedric van Putten      "constant": "android.permission.UWB_RANGING",
1885*561a1919SCedric van Putten      "protection": "dangerous",
1886*561a1919SCedric van Putten      "warning": null
1887*561a1919SCedric van Putten    },
1888*561a1919SCedric van Putten    "VIBRATE": {
1889*561a1919SCedric van Putten      "apiAdded": 1,
1890*561a1919SCedric van Putten      "apiDeprecated": null,
1891*561a1919SCedric van Putten      "apiReplaced": null,
1892*561a1919SCedric van Putten      "name": "VIBRATE",
1893*561a1919SCedric van Putten      "description": "Allows access to the vibrator.",
1894*561a1919SCedric van Putten      "explanation": null,
1895*561a1919SCedric van Putten      "constant": "android.permission.VIBRATE",
1896*561a1919SCedric van Putten      "protection": "normal",
1897*561a1919SCedric van Putten      "warning": null
1898*561a1919SCedric van Putten    },
1899*561a1919SCedric van Putten    "WAKE_LOCK": {
1900*561a1919SCedric van Putten      "apiAdded": 1,
1901*561a1919SCedric van Putten      "apiDeprecated": null,
1902*561a1919SCedric van Putten      "apiReplaced": null,
1903*561a1919SCedric van Putten      "name": "WAKE_LOCK",
1904*561a1919SCedric van Putten      "description": "Allows using PowerManager WakeLocks to keep processor from sleeping or screen from dimming.",
1905*561a1919SCedric van Putten      "explanation": null,
1906*561a1919SCedric van Putten      "constant": "android.permission.WAKE_LOCK",
1907*561a1919SCedric van Putten      "protection": "normal",
1908*561a1919SCedric van Putten      "warning": null
1909*561a1919SCedric van Putten    },
1910*561a1919SCedric van Putten    "WRITE_APN_SETTINGS": {
1911*561a1919SCedric van Putten      "apiAdded": 1,
1912*561a1919SCedric van Putten      "apiDeprecated": null,
1913*561a1919SCedric van Putten      "apiReplaced": null,
1914*561a1919SCedric van Putten      "name": "WRITE_APN_SETTINGS",
1915*561a1919SCedric van Putten      "description": "Allows applications to write the apn settings and read sensitive fields of an existing apn settings like user and password.",
1916*561a1919SCedric van Putten      "explanation": null,
1917*561a1919SCedric van Putten      "constant": "android.permission.WRITE_APN_SETTINGS",
1918*561a1919SCedric van Putten      "protection": null,
1919*561a1919SCedric van Putten      "warning": null
1920*561a1919SCedric van Putten    },
1921*561a1919SCedric van Putten    "WRITE_CALENDAR": {
1922*561a1919SCedric van Putten      "apiAdded": 1,
1923*561a1919SCedric van Putten      "apiDeprecated": null,
1924*561a1919SCedric van Putten      "apiReplaced": null,
1925*561a1919SCedric van Putten      "name": "WRITE_CALENDAR",
1926*561a1919SCedric van Putten      "description": "Allows an application to write the user's calendar data.",
1927*561a1919SCedric van Putten      "explanation": null,
1928*561a1919SCedric van Putten      "constant": "android.permission.WRITE_CALENDAR",
1929*561a1919SCedric van Putten      "protection": "dangerous",
1930*561a1919SCedric van Putten      "warning": null
1931*561a1919SCedric van Putten    },
1932*561a1919SCedric van Putten    "WRITE_CALL_LOG": {
1933*561a1919SCedric van Putten      "apiAdded": 16,
1934*561a1919SCedric van Putten      "apiDeprecated": null,
1935*561a1919SCedric van Putten      "apiReplaced": null,
1936*561a1919SCedric van Putten      "name": "WRITE_CALL_LOG",
1937*561a1919SCedric van Putten      "description": "Allows an application to write (but not read) the user's call log data.",
1938*561a1919SCedric van Putten      "explanation": null,
1939*561a1919SCedric van Putten      "constant": "android.permission.WRITE_CALL_LOG",
1940*561a1919SCedric van Putten      "protection": "dangerous",
1941*561a1919SCedric van Putten      "warning": null
1942*561a1919SCedric van Putten    },
1943*561a1919SCedric van Putten    "WRITE_CONTACTS": {
1944*561a1919SCedric van Putten      "apiAdded": 1,
1945*561a1919SCedric van Putten      "apiDeprecated": null,
1946*561a1919SCedric van Putten      "apiReplaced": null,
1947*561a1919SCedric van Putten      "name": "WRITE_CONTACTS",
1948*561a1919SCedric van Putten      "description": "Allows an application to write the user's contacts data.",
1949*561a1919SCedric van Putten      "explanation": null,
1950*561a1919SCedric van Putten      "constant": "android.permission.WRITE_CONTACTS",
1951*561a1919SCedric van Putten      "protection": "dangerous",
1952*561a1919SCedric van Putten      "warning": null
1953*561a1919SCedric van Putten    },
1954*561a1919SCedric van Putten    "WRITE_EXTERNAL_STORAGE": {
1955*561a1919SCedric van Putten      "apiAdded": 4,
1956*561a1919SCedric van Putten      "apiDeprecated": null,
1957*561a1919SCedric van Putten      "apiReplaced": null,
1958*561a1919SCedric van Putten      "name": "WRITE_EXTERNAL_STORAGE",
1959*561a1919SCedric van Putten      "description": "Allows an application to write to external storage.",
1960*561a1919SCedric van Putten      "explanation": null,
1961*561a1919SCedric van Putten      "constant": "android.permission.WRITE_EXTERNAL_STORAGE",
1962*561a1919SCedric van Putten      "protection": "dangerous",
1963*561a1919SCedric van Putten      "warning": null
1964*561a1919SCedric van Putten    },
1965*561a1919SCedric van Putten    "WRITE_GSERVICES": {
1966*561a1919SCedric van Putten      "apiAdded": 1,
1967*561a1919SCedric van Putten      "apiDeprecated": null,
1968*561a1919SCedric van Putten      "apiReplaced": null,
1969*561a1919SCedric van Putten      "name": "WRITE_GSERVICES",
1970*561a1919SCedric van Putten      "description": "Allows an application to modify the Google service map.",
1971*561a1919SCedric van Putten      "explanation": null,
1972*561a1919SCedric van Putten      "constant": "android.permission.WRITE_GSERVICES",
1973*561a1919SCedric van Putten      "protection": null,
1974*561a1919SCedric van Putten      "warning": null
1975*561a1919SCedric van Putten    },
1976*561a1919SCedric van Putten    "WRITE_SECURE_SETTINGS": {
1977*561a1919SCedric van Putten      "apiAdded": 3,
1978*561a1919SCedric van Putten      "apiDeprecated": null,
1979*561a1919SCedric van Putten      "apiReplaced": null,
1980*561a1919SCedric van Putten      "name": "WRITE_SECURE_SETTINGS",
1981*561a1919SCedric van Putten      "description": "Allows an application to read or write the secure system settings.",
1982*561a1919SCedric van Putten      "explanation": null,
1983*561a1919SCedric van Putten      "constant": "android.permission.WRITE_SECURE_SETTINGS",
1984*561a1919SCedric van Putten      "protection": null,
1985*561a1919SCedric van Putten      "warning": null
1986*561a1919SCedric van Putten    },
1987*561a1919SCedric van Putten    "WRITE_SETTINGS": {
1988*561a1919SCedric van Putten      "apiAdded": 1,
1989*561a1919SCedric van Putten      "apiDeprecated": null,
1990*561a1919SCedric van Putten      "apiReplaced": null,
1991*561a1919SCedric van Putten      "name": "WRITE_SETTINGS",
1992*561a1919SCedric van Putten      "description": "Allows an application to read or write the system settings.",
1993*561a1919SCedric van Putten      "explanation": null,
1994*561a1919SCedric van Putten      "constant": "android.permission.WRITE_SETTINGS",
1995*561a1919SCedric van Putten      "protection": "signature|preinstalled|appop|pre23",
1996*561a1919SCedric van Putten      "warning": null
1997*561a1919SCedric van Putten    },
1998*561a1919SCedric van Putten    "WRITE_SYNC_SETTINGS": {
1999*561a1919SCedric van Putten      "apiAdded": 1,
2000*561a1919SCedric van Putten      "apiDeprecated": null,
2001*561a1919SCedric van Putten      "apiReplaced": null,
2002*561a1919SCedric van Putten      "name": "WRITE_SYNC_SETTINGS",
2003*561a1919SCedric van Putten      "description": "Allows applications to write the sync settings.",
2004*561a1919SCedric van Putten      "explanation": null,
2005*561a1919SCedric van Putten      "constant": "android.permission.WRITE_SYNC_SETTINGS",
2006*561a1919SCedric van Putten      "protection": "normal",
2007*561a1919SCedric van Putten      "warning": null
2008*561a1919SCedric van Putten    },
2009*561a1919SCedric van Putten    "WRITE_VOICEMAIL": {
2010*561a1919SCedric van Putten      "apiAdded": 21,
2011*561a1919SCedric van Putten      "apiDeprecated": null,
2012*561a1919SCedric van Putten      "apiReplaced": null,
2013*561a1919SCedric van Putten      "name": "WRITE_VOICEMAIL",
2014*561a1919SCedric van Putten      "description": "Allows an application to modify and remove existing voicemails in the system.",
2015*561a1919SCedric van Putten      "explanation": null,
2016*561a1919SCedric van Putten      "constant": "com.android.voicemail.permission.WRITE_VOICEMAIL",
2017*561a1919SCedric van Putten      "protection": "signature|privileged|role",
2018*561a1919SCedric van Putten      "warning": null
2019*561a1919SCedric van Putten    }
2020*561a1919SCedric van Putten  }
2021*561a1919SCedric van Putten}
2022