blob: 144dceb1daee63d9f3a89f6ab614fca0cc21924f [file] [log] [blame]
Hai Zhangd7c70c22018-10-04 12:03:42 -07001<?xml version="1.0" encoding="utf-8"?>
2
3<!-- Copyright (C) 2018 The Android Open Source Project
4
5 Licensed under the Apache License, Version 2.0 (the "License"" />
6 you may not use this file except in compliance with the License.
7 You may obtain a copy of the License at
8
9 http://www.apache.org/licenses/LICENSE-2.0
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16-->
17
18<roles>
19
20 <permission-set name="phone">
21 <permission name="android.permission.READ_PHONE_STATE" />
22 <permission name="android.permission.CALL_PHONE" />
23 <permission name="android.permission.READ_CALL_LOG" />
24 <permission name="android.permission.WRITE_CALL_LOG" />
25 <permission name="com.android.voicemail.permission.ADD_VOICEMAIL" />
26 <permission name="android.permission.USE_SIP" />
27 <permission name="android.permission.PROCESS_OUTGOING_CALLS" />
28 </permission-set>
29
30 <permission-set name="contacts">
31 <permission name="android.permission.READ_CONTACTS" />
32 <permission name="android.permission.WRITE_CONTACTS" />
33 <permission name="android.permission.GET_ACCOUNTS" />
34 </permission-set>
35
36 <permission-set name="location">
37 <permission name="android.permission.ACCESS_FINE_LOCATION" />
38 <permission name="android.permission.ACCESS_COARSE_LOCATION" />
39 </permission-set>
40
41 <permission-set name="coarse_location">
42 <permission name="android.permission.ACCESS_COARSE_LOCATION" />
43 </permission-set>
44
45 <permission-set name="calendar">
46 <permission name="android.permission.READ_CALENDAR" />
47 <permission name="android.permission.WRITE_CALENDAR" />
48 </permission-set>
49
50 <permission-set name="sms">
51 <permission name="android.permission.SEND_SMS" />
52 <permission name="android.permission.RECEIVE_SMS" />
53 <permission name="android.permission.READ_SMS" />
54 <permission name="android.permission.RECEIVE_WAP_PUSH" />
55 <permission name="android.permission.RECEIVE_MMS" />
56 <permission name="android.permission.READ_CELL_BROADCASTS" />
57 </permission-set>
58
59 <permission-set name="microphone">
60 <permission name="android.permission.RECORD_AUDIO" />
61 </permission-set>
62
63 <permission-set name="camera">
64 <permission name="android.permission.CAMERA" />
65 </permission-set>
66
67 <permission-set name="sensors">
68 <permission name="android.permission.BODY_SENSORS" />
69 </permission-set>
70
Philip P. Moltmann398a4662019-03-27 12:22:02 -070071 <permission-set name="storage">
72 <permission name="android.permission.READ_EXTERNAL_STORAGE" />
73 <permission name="android.permission.WRITE_EXTERNAL_STORAGE" />
Hai Zhangd7c70c22018-10-04 12:03:42 -070074 </permission-set>
75
Hai Zhang47c137e2019-02-08 12:29:01 -080076 <role
77 name="android.app.role.ASSISTANT"
78 behavior="AssistantRoleBehavior"
Hai Zhang722b49c2019-11-13 14:11:14 -080079 defaultHolders="config_defaultAssistant"
Hai Zhanga3e162c2019-03-27 17:58:15 -070080 description="@string/role_assistant_description"
Hai Zhang47c137e2019-02-08 12:29:01 -080081 exclusive="true"
Hai Zhang24e80f52020-06-23 17:09:05 -070082 fallBackToDefaultHolder="true"
Hai Zhang47c137e2019-02-08 12:29:01 -080083 showNone="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -070084 label="@string/role_assistant_label"
Hai Zhang3512ea12019-04-18 13:32:21 +080085 requestable="false"
Hai Zhangc7dd5852019-03-26 17:13:13 -070086 shortLabel="@string/role_assistant_short_label">
Hai Zhang47c137e2019-02-08 12:29:01 -080087 <required-components>
88 <!-- Qualified components are determined int AssistantRoleBehavior. This comment here is
89 ignored and represents just a rough description
90
91 <any-of>
92 <service permission="android.permission.BIND_VOICE_INTERACTION"
93 supportsAssist="true">
94 <intent-filter>
95 <action name="android.service.voice.VoiceInteractionService" />
96 </intent-filter>
97 <meta-data name="android.voice_interaction"
98 optional="false">
99 required tag in metadata xml: sessionService
100 required tag in metadata xml: recognitionService
101 required tag in metadata xml: supportsAssist = true
102 </meta-data>
103 </service>
104 <activity>
105 <intent-filter>
106 <action name="android.intent.action.ASSIST" />
107 </intent-filter>
108 </activity>
109 </ any-of>
110
111 -->
112 </required-components>
113 <permissions>
Hai Zhang47c137e2019-02-08 12:29:01 -0800114 <permission-set name="sms" />
115 <permission name="android.permission.READ_CALL_LOG" />
116 </permissions>
Linus Tufvesson6c880622021-02-10 14:49:35 +0000117 <app-op-permissions>
118 <app-op-permission name="android.permission.SYSTEM_ALERT_WINDOW" />
119 </app-op-permissions>
Hai Zhang47c137e2019-02-08 12:29:01 -0800120 </role>
121
Hai Zhanga74c19d2019-01-17 18:20:54 -0800122 <!---
123 ~ @see com.android.settings.applications.defaultapps.DefaultBrowserPreferenceController
124 ~ @see com.android.settings.applications.defaultapps.DefaultBrowserPicker
125 ~ @see com.android.server.pm.PackageManagerService.resolveAllBrowserApps(int)
126 ~ @see com.android.server.pm.PackageManagerService.setDefaultBrowserPackageName(String, int)
127 ~ @see com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultBrowser(String, int)
128 -->
Hai Zhang1a59a362019-01-30 14:21:05 -0800129 <role
130 name="android.app.role.BROWSER"
131 behavior="BrowserRoleBehavior"
Hai Zhang722b49c2019-11-13 14:11:14 -0800132 defaultHolders="config_defaultBrowser"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700133 description="@string/role_browser_description"
Hai Zhang1a59a362019-01-30 14:21:05 -0800134 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700135 label="@string/role_browser_label"
136 requestDescription="@string/role_browser_request_description"
137 requestTitle="@string/role_browser_request_title"
138 shortLabel="@string/role_browser_short_label">
Hai Zhanga74c19d2019-01-17 18:20:54 -0800139 <!--
140 ~ Required components matching is handled in BrowserRoleBehavior because it needs the
141 ~ PackageManager.MATCH_ALL flag and other manual filtering, which cannot fit in our
142 ~ current mechanism easily.
143 -->
144 <!--
145 <required-components>
146 <activity>
147 <intent-filter>
148 <action name="android.intent.action.VIEW" />
149 <category name="android.intent.category.BROWSABLE" />
150 <data scheme="http" />
151 </intent-filter>
152 </activity>
153 </required-components>
154 -->
155 <!--
156 ~ Not need to set preferred activity because PackageManager handles browser intents
157 ~ specially.
158 -->
159 </role>
160
Hai Zhang83aa3d32019-01-10 16:53:30 -0800161 <!--
162 ~ @see com.android.settings.applications.defaultapps.DefaultPhonePreferenceController
163 ~ @see com.android.settings.applications.defaultapps.DefaultPhonePicker
164 ~ @see android.telecom.DefaultDialerManager
165 ~ @see com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultDialerApp(String, int)
166 ~ @see com.android.server.pm.Settings.setDefaultDialerPackageNameLPw(String, int)
167 -->
Hai Zhang4817cb42018-12-18 16:52:56 -0800168 <role
169 name="android.app.role.DIALER"
Hai Zhang43c95bf2019-01-10 14:14:22 -0800170 behavior="DialerRoleBehavior"
Hai Zhang722b49c2019-11-13 14:11:14 -0800171 defaultHolders="config_defaultDialer"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700172 description="@string/role_dialer_description"
Hai Zhang4817cb42018-12-18 16:52:56 -0800173 exclusive="true"
Hai Zhang24e80f52020-06-23 17:09:05 -0700174 fallBackToDefaultHolder="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700175 label="@string/role_dialer_label"
176 requestDescription="@string/role_dialer_request_description"
177 requestTitle="@string/role_dialer_request_title"
Hai Zhang641b7262019-10-22 14:45:48 -0700178 searchKeywords="@string/role_dialer_search_keywords"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700179 shortLabel="@string/role_dialer_short_label">
Hai Zhangd7c70c22018-10-04 12:03:42 -0700180 <required-components>
181 <activity>
182 <intent-filter>
183 <action name="android.intent.action.DIAL" />
184 </intent-filter>
185 </activity>
186 <activity>
187 <intent-filter>
188 <action name="android.intent.action.DIAL" />
189 <data scheme="tel" />
190 </intent-filter>
191 </activity>
192 </required-components>
193 <permissions>
194 <permission-set name="phone" />
195 <permission-set name="contacts" />
196 <permission-set name="sms" />
197 <permission-set name="microphone" />
198 <permission-set name="camera" />
199 </permissions>
Linus Tufvesson0a8e2552021-01-14 10:45:59 +0000200 <app-op-permissions>
201 <app-op-permission name="android.permission.SYSTEM_ALERT_WINDOW" />
202 </app-op-permissions>
Hai Zhange32646e2018-12-20 16:03:45 -0800203 <app-ops>
204 <!--
Hai Zhang83aa3d32019-01-10 16:53:30 -0800205 ~ @see com.android.settings.applications.defaultapps.DefaultPhonePicker#setDefaultKey(String)
206 ~ @see com.android.settings.fuelgauge.BatteryUtils#setForceAppStandby(int, String, int)
Hai Zhange32646e2018-12-20 16:03:45 -0800207 -->
208 <app-op name="android:run_in_background" maxTargetSdkVersion="25" mode="allowed" />
209 <app-op name="android:run_any_in_background" mode="allowed" />
210 </app-ops>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700211 <preferred-activities>
Hai Zhang468196e2018-11-16 15:47:25 -0800212 <preferred-activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700213 <activity>
214 <intent-filter>
215 <action name="android.intent.action.DIAL" />
Hai Zhang5d1d4a32019-05-21 12:14:49 -0700216 </intent-filter>
217 </activity>
218 <intent-filter>
219 <action name="android.intent.action.DIAL" />
220 </intent-filter>
221 </preferred-activity>
222 <preferred-activity>
223 <activity>
224 <intent-filter>
225 <action name="android.intent.action.DIAL" />
Hai Zhangd7c70c22018-10-04 12:03:42 -0700226 <data scheme="tel" />
227 </intent-filter>
228 </activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700229 <intent-filter>
230 <action name="android.intent.action.DIAL" />
231 <data scheme="tel" />
232 </intent-filter>
Hai Zhang468196e2018-11-16 15:47:25 -0800233 </preferred-activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700234 </preferred-activities>
235 </role>
236
Hai Zhang83aa3d32019-01-10 16:53:30 -0800237 <!--
238 ~ @see com.android.settings.applications.defaultapps.DefaultSmsPreferenceController
239 ~ @see com.android.settings.applications.defaultapps.DefaultSmsPicker
240 ~ @see com.android.internal.telephony.SmsApplication
241 ~ @see com.android.server.pm.permission.DefaultPermissionGrantPolicy.grantDefaultPermissionsToDefaultSmsApp(String, int)
242 -->
Hai Zhang4817cb42018-12-18 16:52:56 -0800243 <role
244 name="android.app.role.SMS"
Hai Zhang43c95bf2019-01-10 14:14:22 -0800245 behavior="SmsRoleBehavior"
Hai Zhang722b49c2019-11-13 14:11:14 -0800246 defaultHolders="config_defaultSms"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700247 description="@string/role_sms_description"
Hai Zhang4817cb42018-12-18 16:52:56 -0800248 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700249 label="@string/role_sms_label"
250 requestDescription="@string/role_sms_request_description"
251 requestTitle="@string/role_sms_request_title"
Hai Zhang641b7262019-10-22 14:45:48 -0700252 searchKeywords="@string/role_sms_search_keywords"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700253 shortLabel="@string/role_sms_short_label">
Hai Zhangd7c70c22018-10-04 12:03:42 -0700254 <required-components>
255 <receiver permission="android.permission.BROADCAST_SMS">
256 <intent-filter>
257 <action name="android.provider.Telephony.SMS_DELIVER" />
258 </intent-filter>
259 </receiver>
260 <receiver permission="android.permission.BROADCAST_WAP_PUSH">
261 <intent-filter>
262 <action name="android.provider.Telephony.WAP_PUSH_DELIVER" />
263 <data mimeType="application/vnd.wap.mms-message" />
264 </intent-filter>
265 </receiver>
266 <service permission="android.permission.SEND_RESPOND_VIA_MESSAGE">
267 <intent-filter>
268 <action name="android.intent.action.RESPOND_VIA_MESSAGE" />
269 <data scheme="smsto" />
270 </intent-filter>
271 </service>
272 <activity>
273 <intent-filter>
274 <action name="android.intent.action.SENDTO" />
275 <data scheme="smsto" />
276 </intent-filter>
277 </activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700278 </required-components>
279 <permissions>
280 <permission-set name="phone" />
281 <permission-set name="contacts" />
282 <permission-set name="sms" />
Philip P. Moltmann398a4662019-03-27 12:22:02 -0700283 <permission-set name="storage" />
Hai Zhangd7c70c22018-10-04 12:03:42 -0700284 <permission-set name="microphone" />
285 <permission-set name="camera" />
286 </permissions>
287 <app-ops>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700288 <app-op name="android:write_sms" mode="allowed" />
Hai Zhange32646e2018-12-20 16:03:45 -0800289 <!--
Hai Zhang83aa3d32019-01-10 16:53:30 -0800290 ~ @see com.android.settings.applications.defaultapps.DefaultSmsPicker#setDefaultKey(String)
291 ~ @see com.android.settings.fuelgauge.BatteryUtils#setForceAppStandby(int, String, int)
Hai Zhange32646e2018-12-20 16:03:45 -0800292 -->
293 <app-op name="android:run_in_background" maxTargetSdkVersion="25" mode="allowed" />
294 <app-op name="android:run_any_in_background" mode="allowed" />
Michael Groovereca68522019-04-09 16:56:16 -0700295 <app-op name="android:read_device_identifiers" mode="allowed" />
Hai Zhangd7c70c22018-10-04 12:03:42 -0700296 </app-ops>
297 <preferred-activities>
Hai Zhang468196e2018-11-16 15:47:25 -0800298 <preferred-activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700299 <activity>
300 <intent-filter>
301 <action name="android.intent.action.SENDTO" />
302 <data scheme="smsto" />
303 </intent-filter>
304 </activity>
305 <intent-filter>
306 <action name="android.intent.action.SENDTO" />
307 <data scheme="sms" />
308 </intent-filter>
309 <intent-filter>
310 <action name="android.intent.action.SENDTO" />
311 <data scheme="smsto" />
312 </intent-filter>
313 <intent-filter>
314 <action name="android.intent.action.SENDTO" />
315 <data scheme="mms" />
316 </intent-filter>
317 <intent-filter>
318 <action name="android.intent.action.SENDTO" />
319 <data scheme="mmsto" />
320 </intent-filter>
Hai Zhang468196e2018-11-16 15:47:25 -0800321 </preferred-activity>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700322 </preferred-activities>
323 </role>
324
Hai Zhang83aa3d32019-01-10 16:53:30 -0800325 <!---
Hai Zhanga74c19d2019-01-17 18:20:54 -0800326 ~ @see com.android.settings.applications.defaultapps.DefaultEmergencyPreferenceController
327 ~ @see com.android.settings.applications.defaultapps.DefaultEmergencyPicker
328 ~ @see com.android.phone.EmergencyAssistanceHelper
Hai Zhang83aa3d32019-01-10 16:53:30 -0800329 -->
Hai Zhang93113782019-01-29 15:05:37 -0800330 <role
331 name="android.app.role.EMERGENCY"
Hai Zhangf0077532019-01-31 14:22:02 -0800332 behavior="EmergencyRoleBehavior"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700333 description="@string/role_emergency_description"
Hai Zhang93113782019-01-29 15:05:37 -0800334 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700335 label="@string/role_emergency_label"
336 requestDescription="@string/role_emergency_request_description"
337 requestTitle="@string/role_emergency_request_title"
Hai Zhang641b7262019-10-22 14:45:48 -0700338 searchKeywords="@string/role_emergency_search_keywords"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700339 shortLabel="@string/role_emergency_short_label"
Hai Zhang93113782019-01-29 15:05:37 -0800340 systemOnly="true">
Hai Zhangd7c70c22018-10-04 12:03:42 -0700341 <required-components>
342 <activity>
343 <intent-filter>
Hai Zhanga74c19d2019-01-17 18:20:54 -0800344 <action name="android.telephony.action.EMERGENCY_ASSISTANCE" />
Hai Zhangd7c70c22018-10-04 12:03:42 -0700345 </intent-filter>
346 </activity>
347 </required-components>
Hai Zhanga74c19d2019-01-17 18:20:54 -0800348 </role>
349
Hai Zhanga74c19d2019-01-17 18:20:54 -0800350 <!---
351 ~ @see com.android.settings.applications.defaultapps.DefaultHomePreferenceController
352 ~ @see com.android.settings.applications.defaultapps.DefaultHomePicker
353 ~ @see com.android.server.pm.PackageManagerService#setHomeActivity(ComponentName, int)
354 -->
Hai Zhangcb1dda32019-02-12 16:09:32 -0800355 <role
356 name="android.app.role.HOME"
357 behavior="HomeRoleBehavior"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700358 description="@string/role_home_description"
Hai Zhangcb1dda32019-02-12 16:09:32 -0800359 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700360 label="@string/role_home_label"
361 requestDescription="@string/role_home_request_description"
362 requestTitle="@string/role_home_request_title"
Hai Zhang641b7262019-10-22 14:45:48 -0700363 searchKeywords="@string/role_home_search_keywords"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700364 shortLabel="@string/role_home_short_label">
Hai Zhangf1e56802019-02-13 13:52:27 -0800365 <!-- Also used by HomeRoleBehavior.getFallbackHolder(). -->
Hai Zhanga74c19d2019-01-17 18:20:54 -0800366 <required-components>
367 <activity>
368 <intent-filter>
369 <action name="android.intent.action.MAIN" />
370 <category name="android.intent.category.HOME" />
371 </intent-filter>
372 </activity>
373 </required-components>
374 <preferred-activities>
375 <preferred-activity>
376 <activity>
377 <intent-filter>
378 <action name="android.intent.action.MAIN" />
379 <category name="android.intent.category.HOME" />
380 </intent-filter>
381 </activity>
382 <intent-filter>
383 <action name="android.intent.action.MAIN" />
384 <category name="android.intent.category.HOME" />
385 </intent-filter>
386 </preferred-activity>
387 </preferred-activities>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700388 </role>
Jeff Sharkeyaebdf4f2018-11-18 17:52:27 -0700389
Hai Zhang83aa3d32019-01-10 16:53:30 -0800390 <!--- @see android.telecom.CallRedirectionService -->
391 <role
Hai Zhang48594f22019-02-06 16:40:51 -0800392 name="android.app.role.CALL_REDIRECTION"
Hai Zhang722b49c2019-11-13 14:11:14 -0800393 defaultHolders="config_defaultCallRedirection"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700394 description="@string/role_call_redirection_description"
Hai Zhang83aa3d32019-01-10 16:53:30 -0800395 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700396 label="@string/role_call_redirection_label"
397 requestDescription="@string/role_call_redirection_request_description"
398 requestTitle="@string/role_call_redirection_request_title"
Hai Zhangd8c7b582019-08-30 11:26:33 -0700399 shortLabel="@string/role_call_redirection_short_label"
400 showNone="true">
Hai Zhang83aa3d32019-01-10 16:53:30 -0800401 <required-components>
402 <service permission="android.permission.BIND_CALL_REDIRECTION_SERVICE">
403 <intent-filter>
404 <action name="android.telecom.CallRedirectionService" />
405 </intent-filter>
406 </service>
407 </required-components>
408 </role>
409
410 <!--- @see android.telecom.CallScreeningService -->
411 <role
Hai Zhang48594f22019-02-06 16:40:51 -0800412 name="android.app.role.CALL_SCREENING"
Hai Zhang722b49c2019-11-13 14:11:14 -0800413 defaultHolders="config_defaultCallScreening"
Hai Zhanga3e162c2019-03-27 17:58:15 -0700414 description="@string/role_call_screening_description"
Hai Zhang83aa3d32019-01-10 16:53:30 -0800415 exclusive="true"
Hai Zhangc7dd5852019-03-26 17:13:13 -0700416 label="@string/role_call_screening_label"
417 requestDescription="@string/role_call_screening_request_description"
418 requestTitle="@string/role_call_screening_request_title"
Hai Zhangd8c7b582019-08-30 11:26:33 -0700419 shortLabel="@string/role_call_screening_short_label"
420 showNone="true">
Hai Zhang83aa3d32019-01-10 16:53:30 -0800421 <required-components>
422 <service permission="android.permission.BIND_SCREENING_SERVICE">
423 <intent-filter>
424 <action name="android.telecom.CallScreeningService" />
425 </intent-filter>
426 </service>
427 </required-components>
Hai Zhang258a5192020-04-29 14:32:45 -0700428 <app-op-permissions>
429 <app-op-permission name="android.permission.SYSTEM_ALERT_WINDOW" />
430 </app-op-permissions>
Hai Zhang83aa3d32019-01-10 16:53:30 -0800431 </role>
Hai Zhang3360edc2019-11-13 15:36:27 -0800432
433 <role
434 name="android.app.role.SYSTEM_GALLERY"
435 defaultHolders="config_systemGallery"
436 exclusive="true"
Hai Zhang24e80f52020-06-23 17:09:05 -0700437 fallBackToDefaultHolder="true"
Hai Zhangd1094212020-01-13 11:52:13 -0800438 systemOnly="true"
439 visible="false">
Hai Zhang3360edc2019-11-13 15:36:27 -0800440 <permissions>
441 <permission-set name="storage" />
442 <permission name="android.permission.ACCESS_MEDIA_LOCATION" />
443 </permissions>
444 <app-ops>
shafik21962a42020-01-22 20:34:04 +0000445 <app-op name="android:write_media_images" mode="allowed" />
446 <app-op name="android:write_media_video" mode="allowed" />
Hai Zhang3360edc2019-11-13 15:36:27 -0800447 </app-ops>
448 </role>
Anthony Hugh0516f3b2020-07-07 15:45:08 -0700449
450 <role
451 name="android.app.role.SYSTEM_AUTOMOTIVE_CLUSTER"
452 behavior="SystemAutomotiveClusterRoleBehavior"
453 defaultHolders="config_systemAutomotiveCluster"
454 exclusive="true"
455 systemOnly="true"
456 visible="false">
457 <permissions>
Anthony Hugh87b6d152020-12-10 13:58:43 -0800458 <permission name="android.permission.ANSWER_PHONE_CALLS" />
Anthony Hugh0516f3b2020-07-07 15:45:08 -0700459 <permission name="android.permission.READ_CALL_LOG" />
460 <permission name="android.permission.READ_CONTACTS" />
Anthony Hugh718bfca2020-09-15 17:33:19 -0700461 <permission name="android.car.permission.CAR_ENERGY"/>
Anthony Hugh0516f3b2020-07-07 15:45:08 -0700462 </permissions>
463 </role>
Philip P. Moltmannc0504302020-09-25 14:50:18 -0700464
465 <role
Eugene Susla8a910e32020-10-05 16:39:30 -0700466 name="android.app.role.COMPANION_DEVICE_WATCH"
467 behavior="CompanionDeviceWatchRoleBehavior"
Eugene Susla61f1e212021-01-06 11:51:16 -0800468 description="@string/role_watch_description"
Eugene Susla8a910e32020-10-05 16:39:30 -0700469 exclusive="false"
Eugene Susla64f99642020-10-29 00:04:33 +0000470 overrideUserWhenGranting="false"
Eugene Susla8a910e32020-10-05 16:39:30 -0700471 systemOnly="false"
472 visible="false">
473 <permissions>
474 <permission-set name="calendar" />
475 <permission-set name="phone" />
Eugene Suslab195fe82021-02-02 17:13:56 -0800476 <permission-set name="contacts" />
Eugene Susla8a910e32020-10-05 16:39:30 -0700477 </permissions>
Shuo Qian60676d72020-12-03 19:04:45 -0800478 <app-op-permissions>
479 <app-op-permission name="android.permission.MANAGE_ONGOING_CALLS" />
Meng Wang1b6724a2020-11-25 15:02:52 -0800480 <app-op-permission name="android.permission.USE_ICC_AUTH_WITH_DEVICE_IDENTIFIER" />
Shuo Qian60676d72020-12-03 19:04:45 -0800481 </app-op-permissions>
Eugene Susla8a910e32020-10-05 16:39:30 -0700482 </role>
Kurt Dresnerab258232020-08-18 15:50:31 -0700483
484 <role
485 name="android.app.role.SYSTEM_AUTOMOTIVE_PROJECTION"
486 defaultHolders="config_systemAutomotiveProjection"
487 exclusive="false"
488 systemOnly="true"
489 visible="false">
490 <permissions>
Kurt Dresner4bd69c32020-11-07 11:31:59 -0800491 <permission-set name="microphone" />
Kurt Dresnerc98d73e2021-02-19 00:05:11 +0000492 <permission-set name="location" />
Kurt Dresnerab258232020-08-18 15:50:31 -0700493 <permission name="android.permission.CALL_PHONE" />
Kurt Dresner4bd69c32020-11-07 11:31:59 -0800494 <permission name="android.permission.READ_CALENDAR" />
Kurt Dresnerab258232020-08-18 15:50:31 -0700495 <permission name="android.permission.READ_CALL_LOG" />
496 <permission name="android.permission.READ_CONTACTS" />
Kurt Dresner4bd69c32020-11-07 11:31:59 -0800497 <permission name="android.permission.READ_PHONE_STATE" />
Kurt Dresnerab258232020-08-18 15:50:31 -0700498 <permission name="android.permission.RECEIVE_SMS" />
499 <permission name="android.permission.SEND_SMS" />
Kurt Dresnerab258232020-08-18 15:50:31 -0700500 </permissions>
501 </role>
Hai Zhang40ca87c2021-02-16 12:18:55 -0800502
503 <role
504 name="android.app.role.SYSTEM_SHELL"
505 behavior="SystemShellRoleBehavior"
506 defaultHolders="config_systemShell"
507 exclusive="true"
508 systemOnly="true"
Brad Ebinger81c7e2f2021-02-16 01:29:22 +0000509 visible="false">
510 <permissions>
511 <!-- Used for CTS testing -->
512 <permission name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE" />
513 <permission name="android.permission.PERFORM_IMS_SINGLE_REGISTRATION" />
514 </permissions>
515 </role>
516
517 <role
518 name="android.app.role.SYSTEM_CONTACTS"
519 defaultHolders="config_systemContacts"
520 exclusive="true"
521 systemOnly="true"
522 visible="false">
523 <permissions>
524 <permission name="android.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE" />
525 </permissions>
526 </role>
Ahaan Ugaleb3b0d602021-02-15 22:46:06 -0800527
528 <role
529 name="android.app.role.SYSTEM_SPEECH_RECOGNIZER"
530 defaultHolders="config_systemSpeechRecognizer"
531 exclusive="true"
532 systemOnly="true"
533 visible="false">
534 <permissions>
535 <permission name="android.permission.RECORD_AUDIO" />
536 </permissions>
537 <required-components>
538 <service>
539 <intent-filter>
540 <action name="android.speech.RecognitionService" />
541 </intent-filter>
542 </service>
543 </required-components>
544 </role>
Hai Zhangd7c70c22018-10-04 12:03:42 -0700545</roles>