1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  ~ Copyright (C) 2019 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<manifest
19    android:sharedUserId="android.uid.system"
20    android:versionCode="1"
21    android:versionName="1.0"
22    package="com.android.tv.settings"
23    xmlns:android="http://schemas.android.com/apk/res/android"
24    xmlns:tools="http://schemas.android.com/tools">
25
26    <uses-sdk android:minSdkVersion="34"
27        tools:overrideLibrary="com.android.tv.settings.library"/>
28
29    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
30    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
31    <uses-permission android:name="android.permission.BACKUP"/>
32    <uses-permission android:name="android.permission.BLUETOOTH"/>
33    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
34    <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"/>
35    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
36    <uses-permission android:name="android.permission.CLEAR_APP_USER_DATA"/>
37    <uses-permission android:name="android.permission.DELETE_CACHE_FILES"/>
38    <uses-permission android:name="android.permission.DUMP"/>
39    <uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
40    <uses-permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"/>
41    <uses-permission android:name="android.permission.GET_PACKAGE_SIZE"/>
42    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/>
43    <uses-permission android:name="android.permission.INJECT_EVENTS"/>
44    <uses-permission android:name="android.permission.INTERNET"/>
45    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS"/>
46    <uses-permission android:name="android.permission.MANAGE_DEBUGGING"/>
47    <uses-permission android:name="android.permission.MANAGE_SENSOR_PRIVACY"/>
48    <uses-permission android:name="android.permission.MANAGE_SCOPED_ACCESS_DIRECTORY_PERMISSIONS"/>
49    <uses-permission android:name="android.permission.MANAGE_USERS"/>
50    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"/>
51    <uses-permission android:name="android.permission.READ_PROFILE"/>
52    <uses-permission android:name="android.permission.NETWORK_SETTINGS"/>
53    <uses-permission android:name="android.permission.OBSERVE_SENSOR_PRIVACY"/>
54    <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"/>
55    <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS"/>
56    <uses-permission android:name="android.permission.READ_CONTACTS"/>
57    <uses-permission android:name="android.permission.REBOOT"/>
58    <uses-permission android:name="android.permission.RECORD_AUDIO"/>
59    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
60    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
61    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"/>
62    <uses-permission android:name="android.permission.SUGGEST_MANUAL_TIME_AND_ZONE"/>
63    <uses-permission android:name="android.permission.SET_TIME"/>
64    <uses-permission android:name="android.permission.SET_TIME_ZONE"/>
65    <uses-permission android:name="android.permission.USE_RESERVED_DISK"/>
66    <uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE"/>
67    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
68    <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
69    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
70    <uses-permission android:name="android.permission.REQUEST_DELETE_PACKAGES"/>
71    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
72    <uses-permission android:name="com.google.android.assistant.READ_HOTWORD_STATE"/>
73    <uses-permission android:name="com.google.android.assistant.WRITE_HOTWORD_STATE"/>
74    <uses-permission android:name="android.permission.MANAGE_SLICE_PERMISSIONS"/>
75    <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND"/>
76    <uses-permission android:name="android.permission.SET_UNRESTRICTED_KEEP_CLEAR_AREAS"/>
77
78    <!-- Permissions for reading network change related data. -->
79    <permission
80        android:name="com.android.settings.connectivity.READ_NETWORK_CHANGE_DATA"
81        android:protectionLevel="signature|preinstalled" />
82
83    <application
84         android:name=".TvSettingsApplication"
85         android:allowClearUserData="false"
86         android:banner="@drawable/ic_launcher_banner_settings"
87         android:defaultToDeviceProtectedStorage="true"
88         android:directBootAware="true"
89         android:forceQueryable="true"
90         android:icon="@drawable/logo_settings_color_48dp"
91         android:label="@string/settings_app_name"
92         android:supportsRtl="true"
93         android:theme="@style/Theme.Settings"
94         android:usesCleartextTraffic="true">
95
96        <activity
97            android:name=".MainSettings"
98            android:configChanges="keyboard|keyboardHidden|navigation"
99            android:excludeFromRecents="true"
100            android:exported="true"
101            android:label="@string/settings_app_name"
102            android:theme="@style/TvSettingsActivityTheme">
103            <intent-filter android:priority="1">
104                <action android:name="android.intent.action.MAIN"/>
105                <action android:name="android.settings.SETTINGS"/>
106                <category android:name="android.intent.category.DEFAULT"/>
107            </intent-filter>
108            <!-- Intent filter used to display this activity as a settings entry point in the
109                 LeanbackLauncher -->
110            <intent-filter android:icon="@drawable/ic_settings_launcher_icon"
111                 android:label="@string/launcher_settings_app_name"
112                 android:priority="3">
113                <action android:name="android.intent.action.MAIN"/>
114                <category android:name="android.intent.category.LEANBACK_SETTINGS"/>
115            </intent-filter>
116            <!-- Intent filter used to display this activity as a settings entry point in the
117                 LeanbackLauncher -->
118            <intent-filter android:icon="@drawable/ic_settings_launcher_icon"
119                 android:label="@string/launcher_settings_app_name"
120                 android:priority="3">
121                <action android:name="android.intent.action.MAIN"/>
122                <category android:name="android.intent.category.LEANBACK_LAUNCHER"/>
123            </intent-filter>
124        </activity>
125
126        <!-- WifiSetupActivity may be (usually is) started from setup so theme is determined at
127             runtime. -->
128        <activity-alias
129            android:name=".connectivity.setup.WifiSetupActivity"
130            android:clearTaskOnLaunch="true"
131            android:configChanges="keyboard|keyboardHidden|navigation"
132            android:excludeFromRecents="true"
133            android:exported="true"
134            android:theme="@style/TvSettingsActivityTheme"
135            android:targetActivity=".connectivity.NetworkActivity">
136            <intent-filter>
137                <action android:name="android.intent.action.MAIN"/>
138                <action android:name="com.android.net.wifi.SETUP_WIFI_NETWORK"/>
139                <!-- TODO remove custom action when stop including /packages/apps/Settings -->
140                <action android:name="com.android.net.wifi.CANVAS_SETUP_WIFI_NETWORK"/>
141                <category android:name="android.intent.category.DEFAULT"/>
142            </intent-filter>
143            <!-- Enabling this <intent-filter> will signal to Setup that WifiSetupActivity will
144                 handle network connectivity (in that case Setup will launch us to handle network
145                 duty).
146            <intent-filter>
147                <action android:name="com.android.net.GET_CONNECTED" />
148                <category android:name="android.intent.category.DEFAULT" />
149            </intent-filter>
150            -->
151        </activity-alias>
152
153        <activity
154            android:name=".connectivity.NetworkRequestDialogActivity"
155            android:theme="@style/Transparent"
156            android:excludeFromRecents="true"
157            android:launchMode="singleTop"
158            android:taskAffinity=".connectivity.NetworkRequestDialogActivity"
159            android:exported="true"
160            android:permission="android.permission.NETWORK_SETTINGS">
161            <intent-filter>
162                <action android:name="com.android.settings.wifi.action.NETWORK_REQUEST"/>
163                <category android:name="android.intent.category.DEFAULT"/>
164            </intent-filter>
165        </activity>
166
167        <activity
168            android:name=".connectivity.WifiConnectionActivity"
169            android:clearTaskOnLaunch="true"
170            android:configChanges="keyboard|keyboardHidden|navigation"
171            android:excludeFromRecents="true"
172            android:exported="true"
173            android:permission="android.permission.NETWORK_SETTINGS"
174            android:theme="@style/Theme.SettingsConnectivity" >
175            <intent-filter>
176                <action android:name="com.android.settings.wifi.action.WIFI_CONNECTION_SETTINGS"/>
177                <category android:name="android.intent.category.DEFAULT"/>
178            </intent-filter>
179        </activity>
180
181        <activity
182            android:name=".connectivity.EditProxySettingsActivity"
183            android:clearTaskOnLaunch="true"
184            android:configChanges="keyboard|keyboardHidden|navigation"
185            android:excludeFromRecents="true"
186            android:exported="true"
187            android:theme="@style/Theme.SettingsConnectivity">
188            <intent-filter>
189                <action android:name="com.android.settings.wifi.action.EDIT_PROXY_SETTINGS"/>
190                <category android:name="android.intent.category.DEFAULT"/>
191            </intent-filter>
192        </activity>
193
194        <activity
195            android:name=".connectivity.EditIpSettingsActivity"
196            android:clearTaskOnLaunch="true"
197            android:configChanges="keyboard|keyboardHidden|navigation"
198            android:excludeFromRecents="true"
199            android:exported="true"
200            android:theme="@style/Theme.SettingsConnectivity">
201            <intent-filter>
202                <action android:name="com.android.settings.wifi.action.EDIT_IP_SETTINGS"/>
203                <category android:name="android.intent.category.DEFAULT"/>
204            </intent-filter>
205        </activity>
206
207        <activity
208            android:name=".connectivity.AddWifiNetworkActivity"
209            android:clearTaskOnLaunch="true"
210            android:configChanges="keyboard|keyboardHidden|navigation"
211            android:excludeFromRecents="true"
212            android:exported="true"
213            android:theme="@style/Theme.SettingsConnectivity">
214            <intent-filter>
215                <action android:name="com.android.settings.wifi.action.ADD_WIFI_NETWORK"/>
216                <category android:name="android.intent.category.DEFAULT"/>
217            </intent-filter>
218        </activity>
219
220        <!-- The other application needs to define the similar custom permission in its manifest
221        to be able to READ network change data -->
222        <provider
223            android:name=".connectivity.NetworkChangeContentProvider"
224            android:authorities="com.android.settings.connectivity.networkchangedetection"
225            android:exported="true"
226            android:readPermission="com.android.settings.connectivity.READ_NETWORK_CHANGE_DATA" >
227        </provider>
228
229        <!-- AccountSliceActivity is just here to facilitate the activity-alias below to eliminate
230             the risk of repackaging. -->
231        <activity
232            android:name=".accounts.AccountSliceActivity"
233            android:configChanges="keyboard|keyboardHidden|navigation"
234            android:excludeFromRecents="true"
235            android:theme="@style/TvSettingsActivityTheme"
236            android:exported="false" />
237
238        <activity
239            android:name=".accounts.AccountsActivity"
240            android:configChanges="keyboard|keyboardHidden|navigation"
241            android:excludeFromRecents="true"
242            android:exported="false"
243            android:theme="@style/TvSettingsActivityTheme" />
244
245        <activity
246            android:name=".accounts.AccountsTrampolineActivity"
247            android:excludeFromRecents="true"
248            android:enabled="true"
249            android:launchMode="singleInstance"
250            android:theme="@style/TvSettingsActivityTheme"
251            android:exported="false" />
252
253        <activity-alias
254            android:name="com.google.android.tv.settings.AccountActivity"
255            android:targetActivity=".accounts.AccountsTrampolineActivity"
256            android:exported="true">
257            <intent-filter android:priority="1">
258                <action android:name="android.settings.USER_SETTINGS"/>
259                <category android:name="android.intent.category.DEFAULT"/>
260            </intent-filter>
261            <intent-filter android:priority="1">
262                <action android:name="android.intent.action.MAIN"/>
263                <action android:name="android.settings.ACCOUNT_SYNC_SETTINGS"/>
264                <action android:name="android.settings.SYNC_SETTINGS"/>
265                <category android:name="android.intent.category.DEFAULT"/>
266            </intent-filter>
267        </activity-alias>
268
269        <activity
270            android:name=".accounts.AccountSyncActivity"
271            android:configChanges="keyboard|keyboardHidden|navigation"
272            android:excludeFromRecents="true"
273            android:exported="true"
274            android:theme="@style/TvSettingsActivityTheme">
275        </activity>
276
277        <!-- ManageUserServicesSliceActivity is just here to facilitate the activity-alias below to
278             eliminate the risk of repackaging. -->
279        <activity
280            android:name=".accounts.ManageUserServicesSliceActivity"
281            android:configChanges="keyboard|keyboardHidden|navigation"
282            android:excludeFromRecents="true"
283            android:theme="@style/TvSettingsActivityTheme"
284            android:exported="false" />
285
286        <activity-alias
287            android:name="com.google.android.tv.settings.ManageUserServicesActivity"
288            android:targetActivity=".accounts.ManageUserServicesSliceActivity"
289            android:exported="true" >
290            <intent-filter android:priority="1">
291                <action android:name="android.settings.MANAGE_USER_SERVICES_SETTINGS"/>
292                <category android:name="android.intent.category.DEFAULT"/>
293            </intent-filter>
294        </activity-alias>
295
296        <activity
297            android:name=".accounts.RemoveAccountDialog"
298            android:configChanges="keyboard|keyboardHidden|navigation"
299            android:excludeFromRecents="true"
300            android:exported="true" />
301
302        <activity
303            android:name=".accounts.AddAccountWithTypeActivity"
304            android:excludeFromRecents="true"
305            android:exported="true">
306            <intent-filter>
307                <action android:name="android.settings.ADD_ACCOUNT_SETTINGS"/>
308                <category android:name="android.intent.category.DEFAULT"/>
309            </intent-filter>
310        </activity>
311
312        <activity
313            android:name=".device.apps.AppsActivity"
314            android:configChanges="keyboard|keyboardHidden|navigation"
315            android:excludeFromRecents="true"
316            android:exported="true"
317            android:theme="@style/TvSettingsActivityTheme">
318            <intent-filter>
319                <action android:name="android.intent.action.MAIN"/>
320                <action android:name="android.settings.APPLICATION_SETTINGS"/>
321                <action android:name="android.settings.MANAGE_APPLICATIONS_SETTINGS"/>
322                <category android:name="android.intent.category.DEFAULT"/>
323                <category android:name="android.intent.category.VOICE_LAUNCH"/>
324                <category android:name="com.android.settings.SHORTCUT"/>
325            </intent-filter>
326        </activity>
327
328        <activity
329            android:name=".device.apps.AllAppsActivity"
330            android:configChanges="keyboard|keyboardHidden|navigation"
331            android:excludeFromRecents="true"
332            android:exported="true"
333            android:theme="@style/TvSettingsActivityTheme">
334            <intent-filter>
335                <action android:name="android.intent.action.MAIN"/>
336                <action android:name="android.settings.APPLICATION_SETTINGS"/>
337                <action android:name="android.settings.MANAGE_ALL_APPLICATIONS_SETTINGS"/>
338                <category android:name="android.intent.category.DEFAULT"/>
339                <category android:name="android.intent.category.VOICE_LAUNCH"/>
340                <category android:name="com.android.settings.SHORTCUT"/>
341            </intent-filter>
342        </activity>
343
344        <activity
345            android:name=".device.apps.specialaccess.AllFilesAccessActivity"
346            android:excludeFromRecents="true"
347            android:exported="true"
348            android:taskAffinity=""
349            android:theme="@style/TvSettingsActivityTheme">
350            <intent-filter android:priority="1">
351                <category android:name="android.intent.category.DEFAULT"/>
352                <action android:name="android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION"/>
353                <data android:scheme="package" />
354            </intent-filter>
355        </activity>
356
357        <activity
358            android:name=".device.apps.specialaccess.AppUsageAccessActivity"
359            android:excludeFromRecents="true"
360            android:exported="true"
361            android:taskAffinity=""
362            android:theme="@style/TvSettingsActivityTheme">
363            <intent-filter android:priority="1">
364                <category android:name="android.intent.category.DEFAULT"/>
365                <action android:name="android.settings.USAGE_ACCESS_SETTINGS"/>
366            </intent-filter>
367        </activity>
368
369        <activity
370            android:name=".device.apps.specialaccess.PictureInPictureActivity"
371            android:excludeFromRecents="true"
372            android:exported="true"
373            android:taskAffinity=""
374            android:theme="@style/TvSettingsActivityTheme">
375            <intent-filter android:priority="1">
376                <category android:name="android.intent.category.DEFAULT"/>
377                <action android:name="android.settings.PICTURE_IN_PICTURE_SETTINGS"/>
378            </intent-filter>
379        </activity>
380
381        <activity
382            android:name=".device.apps.specialaccess.SystemAlertActivity"
383            android:theme="@style/TvSettingsActivityTheme"
384            android:taskAffinity=""
385            android:excludeFromRecents="true"
386            android:exported="true">
387            <intent-filter android:priority="1">
388                <category android:name="android.intent.category.DEFAULT"/>
389                <action android:name="android.settings.action.MANAGE_OVERLAY_PERMISSION"/>
390            </intent-filter>
391            <intent-filter android:priority="1">
392                <category android:name="android.intent.category.DEFAULT" />
393                <action android:name="android.settings.action.MANAGE_OVERLAY_PERMISSION" />
394                <data android:scheme="package" />
395            </intent-filter>
396        </activity>
397
398        <activity
399            android:name=".device.apps.specialaccess.AlarmsAndRemindersActivity"
400            android:theme="@style/TvSettingsActivityTheme"
401            android:taskAffinity=""
402            android:excludeFromRecents="true"
403            android:exported="true">
404            <intent-filter android:priority="1">
405                <category android:name="android.intent.category.DEFAULT" />
406                <action android:name="android.settings.REQUEST_SCHEDULE_EXACT_ALARM" />
407            </intent-filter>
408            <intent-filter android:priority="1">
409                <category android:name="android.intent.category.DEFAULT" />
410                <action android:name="android.settings.REQUEST_SCHEDULE_EXACT_ALARM" />
411                <data android:scheme="package" />
412            </intent-filter>
413        </activity>
414
415        <activity
416            android:name=".device.apps.AppManagementActivity"
417            android:configChanges="keyboard|keyboardHidden|navigation"
418            android:excludeFromRecents="true"
419            android:exported="true"
420            android:theme="@style/TvSettingsActivityTheme">
421            <intent-filter android:priority="1">
422                <action android:name="android.intent.action.AUTO_REVOKE_PERMISSIONS" />
423                <action android:name="android.settings.APPLICATION_DETAILS_SETTINGS"/>
424                <category android:name="android.intent.category.DEFAULT"/>
425                <data android:scheme="package"/>
426            </intent-filter>
427        </activity>
428
429        <activity
430            android:name=".device.StorageResetActivity"
431            android:configChanges="keyboard|keyboardHidden|navigation"
432            android:excludeFromRecents="true"
433            android:exported="true"
434            android:theme="@style/TvSettingsActivityTheme">
435            <intent-filter android:priority="1">
436                <action android:name="android.settings.INTERNAL_STORAGE_SETTINGS"/>
437                <action android:name="android.settings.MEMORY_CARD_SETTINGS"/>
438                <category android:name="android.intent.category.DEFAULT"/>
439            </intent-filter>
440            <intent-filter>
441                <action android:name="android.intent.action.MAIN"/>
442                <category android:name="android.intent.category.DEFAULT"/>
443                <action android:name="android.intent.action.MANAGE_PACKAGE_STORAGE"/>
444                <action android:name="android.os.storage.action.MANAGE_STORAGE"/>
445            </intent-filter>
446        </activity>
447
448        <activity android:name=".device.storage.ResetActivity"
449            android:theme="@style/Theme.Reset"
450            android:configChanges="keyboard|keyboardHidden|navigation"
451            android:excludeFromRecents="true" />
452        <activity
453            android:name=".connectivity.NetworkActivity"
454            android:configChanges="keyboard|keyboardHidden|navigation"
455            android:excludeFromRecents="true"
456            android:exported="true"
457            android:theme="@style/TvSettingsActivityTheme">
458            <!-- Intent filter used to display this activity as a settings entry point in the
459                 LeanbackLauncher -->
460            <intent-filter android:icon="@drawable/ic_settings_wifi_active_0_launcher"
461                 android:label="@string/launcher_network_app_name"
462                 android:priority="2">
463                <action android:name="android.intent.action.MAIN"/>
464                <category android:name="android.intent.category.LEANBACK_SETTINGS"/>
465            </intent-filter>
466            <intent-filter android:priority="100">
467                <action android:name="android.settings.WIFI_SETTINGS"/>
468                <category android:name="android.intent.category.DEFAULT"/>
469                <category android:name="android.intent.category.LEANBACK_SETTINGS"/>
470            </intent-filter>
471            <intent-filter android:priority="1">
472                <action android:name="android.settings.LOCATION_SCANNING_SETTINGS"/>
473                <category android:name="android.intent.category.DEFAULT"/>
474            </intent-filter>
475            <intent-filter>
476                <action android:name="android.settings.panel.action.INTERNET_CONNECTIVITY"/>
477                <action android:name="android.settings.panel.action.WIFI"/>
478                <category android:name="android.intent.category.DEFAULT"/>
479            </intent-filter>
480            <intent-filter>
481                <action android:name="android.settings.WIFI_ADD_NETWORKS"/>
482                <category android:name="android.intent.category.DEFAULT"/>
483                <category android:name="android.intent.category.LEANBACK_SETTINGS"/>
484            </intent-filter>
485        </activity>
486
487        <activity
488            android:name=".system.SecurityActivity"
489            android:configChanges="keyboard|keyboardHidden|navigation"
490            android:excludeFromRecents="true"
491            android:exported="true"
492            android:theme="@style/TvSettingsActivityTheme">
493            <intent-filter>
494                <action android:name="android.settings.SECURITY_SETTINGS"/>
495                <category android:name="android.intent.category.DEFAULT"/>
496            </intent-filter>
497        </activity>
498
499        <activity-alias
500            android:name=".users.RestrictedProfileActivityLauncherEntry"
501            android:enabled="false"
502            android:excludeFromRecents="true"
503            android:exported="true"
504            android:targetActivity=".system.SecurityActivity">
505            <!-- Intent filter used to display this activity as a settings entry point in the
506                 LeanbackLauncher -->
507            <intent-filter android:icon="@drawable/ic_settings_restricted_profile_launcher"
508                 android:label="@string/launcher_restricted_profile_app_name"
509                 android:priority="0">
510                <action android:name="android.intent.action.MAIN"/>
511                <category android:name="android.intent.category.LEANBACK_SETTINGS"/>
512            </intent-filter>
513        </activity-alias>
514
515        <activity
516            android:name=".system.CreateRestrictedProfileActivity"
517            android:configChanges="keyboard|keyboardHidden|navigation"
518            android:excludeFromRecents="true"
519            android:exported="true"
520            android:theme="@style/TvSettingsActivityTheme">
521            <intent-filter>
522                <action android:name="com.android.tv.settings.action.CREATE_RESTRICTED_PROFILE"/>
523                <category android:name="android.intent.category.DEFAULT"/>
524            </intent-filter>
525        </activity>
526
527        <activity
528            android:name=".system.EnterRestrictedProfileActivity"
529            android:configChanges="keyboard|keyboardHidden|navigation"
530            android:excludeFromRecents="true"
531            android:exported="true"
532            android:theme="@style/TvSettingsActivityTheme">
533            <intent-filter>
534                <action android:name="com.android.tv.settings.action.ENTER_RESTRICTED_PROFILE"/>
535                <category android:name="android.intent.category.DEFAULT"/>
536            </intent-filter>
537        </activity>
538
539        <activity
540            android:name=".device.displaysound.DisplaySoundActivity"
541            android:configChanges="keyboard|keyboardHidden|navigation"
542            android:excludeFromRecents="true"
543            android:exported="true"
544            android:theme="@style/TvSettingsActivityTheme">
545            <intent-filter>
546                <action android:name="android.intent.action.MAIN"/>
547                <action android:name="com.android.settings.SOUND_SETTINGS"/>
548                <action android:name="android.settings.SOUND_SETTINGS"/>
549                <action android:name="android.settings.panel.action.VOLUME"/>
550                <category android:name="android.intent.category.DEFAULT"/>
551                <category android:name="android.intent.category.VOICE_LAUNCH"/>
552                <category android:name="com.android.settings.SHORTCUT"/>
553            </intent-filter>
554        </activity>
555
556        <!-- AmbientSliceActivity is just here to facilitate the activity-alias below to eliminate
557             the risk of repackaging. -->
558        <activity
559            android:name=".device.display.ambient.AmbientSliceActivity"
560            android:configChanges="keyboard|keyboardHidden|navigation"
561            android:excludeFromRecents="true"
562            android:theme="@style/TvSettingsActivityTheme"
563            android:exported="false" />
564
565        <activity-alias
566            android:name="com.google.android.tv.settings.AmbientActivity"
567            android:targetActivity=".device.display.ambient.AmbientSliceActivity"
568            android:exported="true" >
569            <intent-filter android:priority="1">
570                <action android:name="com.google.android.tv.settings.ambient"/>
571                <category android:name="android.intent.category.DEFAULT"/>
572            </intent-filter>
573        </activity-alias>
574
575        <activity
576            android:name=".device.display.daydream.DaydreamActivity"
577            android:configChanges="keyboard|keyboardHidden|navigation"
578            android:excludeFromRecents="true"
579            android:exported="true"
580            android:theme="@style/TvSettingsActivityTheme" />
581
582        <activity
583            android:name=".device.display.daydream.DaydreamVoiceAction"
584            android:excludeFromRecents="true"
585            android:exported="true"
586            android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
587            <intent-filter>
588                <!-- This intent is launched by the SLEEP voice action from Pano Search -->
589                <action android:name="com.google.android.pano.action.SLEEP"/>
590                <category android:name="android.intent.category.DEFAULT"/>
591            </intent-filter>
592        </activity>
593
594        <activity
595            android:name=".system.CaptionSetupActivity"
596            android:configChanges="keyboard|keyboardHidden|navigation"
597            android:excludeFromRecents="true"
598            android:exported="true"
599            android:theme="@style/TvSettingsActivityTheme">
600            <intent-filter>
601                <action android:name="android.settings.CAPTIONING_SETTINGS"/>
602                <category android:name="android.intent.category.DEFAULT"/>
603            </intent-filter>
604        </activity>
605
606        <activity
607            android:name=".system.DateTimeActivity"
608            android:configChanges="keyboard|keyboardHidden|navigation"
609            android:excludeFromRecents="true"
610            android:exported="true"
611            android:theme="@style/TvSettingsActivityTheme">
612            <intent-filter>
613                <action android:name="android.settings.DATE_SETTINGS"/>
614                <category android:name="android.intent.category.DEFAULT"/>
615            </intent-filter>
616        </activity>
617
618        <activity
619            android:name=".system.LocationActivity"
620            android:configChanges="keyboard|keyboardHidden|navigation"
621            android:excludeFromRecents="true"
622            android:exported="true"
623            android:theme="@style/TvSettingsActivityTheme">
624            <intent-filter>
625                <action android:name="android.intent.action.MAIN"/>
626                <action android:name="android.settings.LOCATION_SOURCE_SETTINGS"/>
627                <category android:name="android.intent.category.DEFAULT"/>
628                <category android:name="android.intent.category.VOICE_LAUNCH"/>
629                <category android:name="com.android.settings.SHORTCUT"/>
630            </intent-filter>
631        </activity>
632
633        <activity
634            android:name=".system.TextToSpeechActivity"
635            android:configChanges="keyboard|keyboardHidden|navigation"
636            android:excludeFromRecents="true"
637            android:exported="true"
638            android:theme="@style/TvSettingsActivityTheme">
639            <intent-filter>
640                <action android:name="android.settings.TTS_SETTINGS"/>
641                <category android:name="android.intent.category.DEFAULT"/>
642            </intent-filter>
643        </activity>
644
645        <activity
646            android:name=".system.development.DevelopmentActivity"
647            android:configChanges="keyboard|keyboardHidden|navigation"
648            android:excludeFromRecents="true"
649            android:exported="true"
650            android:theme="@style/TvSettingsActivityTheme">
651            <intent-filter>
652                <action android:name="android.intent.action.MAIN"/>
653                <action android:name="android.settings.APPLICATION_DEVELOPMENT_SETTINGS"/>
654                <action android:name="com.android.settings.APPLICATION_DEVELOPMENT_SETTINGS"/>
655                <category android:name="android.intent.category.DEFAULT"/>
656            </intent-filter>
657        </activity>
658
659        <activity
660            android:name=".system.development.AppPicker"
661            android:configChanges="keyboard|keyboardHidden|navigation"
662            android:excludeFromRecents="true"
663            android:exported="false" />
664
665        <activity
666            android:name=".inputmethod.KeyboardActivity"
667            android:configChanges="keyboard|keyboardHidden|navigation"
668            android:excludeFromRecents="true"
669            android:exported="true"
670            android:theme="@style/TvSettingsActivityTheme">
671            <intent-filter android:priority="1">
672                <action android:name="android.settings.INPUT_METHOD_SETTINGS"/>
673                <category android:name="android.intent.category.VOICE_LAUNCH" />
674                <category android:name="android.intent.category.BROWSABLE"/>
675                <category android:name="android.intent.category.DEFAULT"/>
676            </intent-filter>
677            <intent-filter>
678                <action android:name="android.intent.action.MAIN"/>
679                <category android:name="android.intent.category.VOICE_LAUNCH"/>
680                <category android:name="android.intent.category.DEFAULT"/>
681            </intent-filter>
682        </activity>
683
684        <activity
685            android:name=".autofill.AutofillPickerActivity"
686            android:configChanges="keyboard|keyboardHidden|navigation"
687            android:excludeFromRecents="true"
688            android:exported="false"
689            android:launchMode="singleInstance"
690            android:theme="@style/TvSettingsActivityTheme" />
691
692        <activity
693            android:name=".autofill.AutofillPickerTrampolineActivity"
694            android:excludeFromRecents="true"
695            android:exported="true"
696            android:label="@string/title_select_autofill_service"
697            android:launchMode="singleInstance"
698            android:theme="@android:style/Theme.NoDisplay">
699            <intent-filter android:priority="1">
700                <action android:name="android.settings.REQUEST_SET_AUTOFILL_SERVICE"/>
701                <category android:name="android.intent.category.DEFAULT"/>
702                <data android:scheme="package"/>
703            </intent-filter>
704        </activity>
705
706        <activity
707            android:name=".system.AppLanguageActivity"
708            android:configChanges="keyboard|keyboardHidden|navigation|locale"
709            android:excludeFromRecents="true"
710            android:exported="true"
711            android:theme="@style/TvSettingsActivityTheme">
712            <intent-filter>
713                <action android:name="android.settings.APP_LOCALE_SETTINGS"/>
714                <category android:name="android.intent.category.DEFAULT"/>
715                <data android:scheme="package" />
716            </intent-filter>
717        </activity>
718
719        <activity
720            android:name=".system.LanguageActivity"
721            android:configChanges="keyboard|keyboardHidden|navigation|locale"
722            android:excludeFromRecents="true"
723            android:exported="true"
724            android:theme="@style/TvSettingsActivityTheme">
725            <intent-filter>
726                <action android:name="android.settings.LOCALE_SETTINGS"/>
727                <category android:name="android.intent.category.DEFAULT"/>
728            </intent-filter>
729        </activity>
730
731        <activity
732            android:name=".system.InputsActivity"
733            android:configChanges="keyboard|keyboardHidden|navigation"
734            android:excludeFromRecents="true"
735            android:exported="true" />
736
737        <activity
738            android:name=".accessories.BluetoothAccessoryActivity"
739            android:configChanges="keyboard|keyboardHidden|navigation"
740            android:excludeFromRecents="true"
741            android:exported="true"
742            android:permission="android.permission.BLUETOOTH_CONNECT"
743            android:theme="@style/TvSettingsActivityTheme" />
744
745        <activity
746            android:name=".accessories.AddAccessoryActivity"
747            android:configChanges="keyboard|keyboardHidden|navigation"
748            android:excludeFromRecents="true"
749            android:exported="true"
750            android:launchMode="singleTask"
751            android:permission="android.permission.BLUETOOTH_CONNECT"
752            android:persistableMode="persistNever"
753            android:showWhenLocked="true"
754            android:taskAffinity=""
755            android:turnScreenOn="true">
756            <intent-filter android:priority="1">
757                <action android:name="com.google.android.intent.action.CONNECT_INPUT"/>
758                <category android:name="android.intent.category.DEFAULT"/>
759            </intent-filter>
760        </activity>
761
762        <receiver
763            android:name=".accessories.BluetoothPairingRequest"
764            android:exported="true">
765            <intent-filter>
766                <action android:name="android.bluetooth.device.action.PAIRING_REQUEST"/>
767            </intent-filter>
768        </receiver>
769
770        <activity
771            android:name=".accessories.BluetoothPairingDialog"
772            android:configChanges="keyboard|keyboardHidden|navigation"
773            android:excludeFromRecents="true"
774            android:exported="true"
775            android:permission="android.permission.BLUETOOTH_PRIVILEGED"
776            android:taskAffinity="">
777            <intent-filter>
778                <action android:name="android.bluetooth.device.action.PAIRING_REQUEST"/>
779                <category android:name="android.intent.category.DEFAULT"/>
780            </intent-filter>
781        </activity>
782
783        <activity
784            android:name=".accessories.BluetoothDevicePickerActivity"
785            android:configChanges="keyboard|keyboardHidden|navigation"
786            android:excludeFromRecents="true"
787            android:exported="true">
788            <intent-filter>
789                <action android:name="android.bluetooth.devicepicker.action.LAUNCH"/>
790                <category android:name="android.intent.category.DEFAULT"/>
791            </intent-filter>
792        </activity>
793
794        <activity
795            android:name=".about.AboutActivity"
796            android:excludeFromRecents="true"
797            android:exported="true"
798            android:theme="@style/TvSettingsActivityTheme">
799            <intent-filter>
800                <action android:name="android.intent.action.MAIN"/>
801                <action android:name="android.settings.DEVICE_INFO_SETTINGS"/>
802                <category android:name="android.intent.category.DEFAULT"/>
803                <category android:name="android.intent.category.VOICE_LAUNCH"/>
804            </intent-filter>
805        </activity>
806
807        <!-- Runs in the phone process since it needs access to the Phone object -->
808        <activity
809            android:name=".about.StatusActivity"
810            android:excludeFromRecents="true"
811            android:exported="true"
812            android:process="com.android.phone"
813            android:theme="@style/TvSettingsActivityTheme">
814            <intent-filter>
815                <action android:name="android.intent.action.MAIN"/>
816                <category android:name="android.intent.category.DEFAULT"/>
817                <category android:name="android.intent.category.VOICE_LAUNCH"/>
818            </intent-filter>
819        </activity>
820
821        <activity
822            android:name=".about.LicenseActivity"
823            android:excludeFromRecents="true"
824            android:exported="true"
825            android:label="@string/about_legal_license">
826            <intent-filter>
827                <action android:name="android.settings.LICENSE"/>
828                <category android:name="android.intent.category.DEFAULT"/>
829            </intent-filter>
830        </activity>
831
832        <activity
833            android:name=".name.DeviceNameSettingsActivity"
834            android:theme="@style/Theme.SettingsDeviceName"
835            android:configChanges="keyboardHidden|navigation"
836            android:excludeFromRecents="true"
837            android:exported="true">
838                <intent-filter>
839                    <action android:name="android.settings.DEVICE_NAME" />
840                    <category android:name="android.intent.category.DEFAULT" />
841                </intent-filter>
842        </activity>
843
844        <activity
845            android:name=".name.DeviceNameSuggestionActivity"
846            android:excludeFromRecents="true"
847            android:theme="@style/GuidedStepFragmentThemeTwoPanel"
848            android:exported="true">
849            <intent-filter>
850                <action android:name="android.intent.action.MAIN"/>
851                <category android:name="com.android.settings.suggested.category.FIRST_IMPRESSION"/>
852            </intent-filter>
853            <!-- Default title for suggested setting -->
854            <meta-data android:name="com.android.settings.title"
855                 android:resource="@string/device_name_suggestion_title"/>
856            <!-- Default summary for suggested setting -->
857            <meta-data android:name="com.android.settings.summary"
858                 android:resource="@string/device_name_suggestion_summary"/>
859            <!-- Default icon for our suggested setting -->
860            <meta-data android:name="com.android.settings.icon"
861                 android:resource="@drawable/ic_device_name_suggestion"/>
862        </activity>
863
864        <activity
865            android:name=".name.setup.DeviceNameFlowStartActivity"
866            android:configChanges="keyboardHidden|navigation"
867            android:theme="@style/GuidedStepFragmentThemeTwoPanel"
868            android:excludeFromRecents="true"
869            android:exported="true"
870            android:label="@string/device_name">
871            <intent-filter>
872                <action android:name="android.settings.START_DEVICE_NAME_FLOW"/>
873                <category android:name="android.intent.category.DEFAULT"/>
874            </intent-filter>
875        </activity>
876
877        <service
878            android:name=".users.UserSwitchListenerService"
879            android:exported="false"
880            android:singleUser="true" />
881
882        <receiver
883            android:name=".users.UserSwitchListenerService$BootReceiver"
884            android:exported="true"
885            android:singleUser="true">
886            <intent-filter android:priority="1">
887                <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED"/>
888                <action android:name="android.intent.action.BOOT_COMPLETED"/>
889            </intent-filter>
890        </receiver>
891
892        <receiver
893            android:name=".device.storage.DiskReceiver"
894            android:exported="true">
895            <intent-filter>
896                <action android:name="android.os.storage.action.VOLUME_STATE_CHANGED"/>
897                <action android:name="com.google.android.tungsten.setupwraith.TV_SETTINGS_POST_SETUP"/>
898            </intent-filter>
899        </receiver>
900
901        <service
902            android:name=".users.RestrictedProfilePinService"
903            android:exported="false" />
904
905        <service
906            android:name=".device.storage.SettingsStorageService$Impl"
907            android:exported="false" />
908
909        <activity
910            android:name=".device.storage.NewStorageActivity"
911            android:excludeFromRecents="true"
912            android:exported="false"
913            android:taskAffinity="">
914            <intent-filter>
915                <action android:name="com.android.tv.settings.action.NEW_STORAGE"/>
916                <category android:name="android.intent.category.DEFAULT"/>
917            </intent-filter>
918        </activity>
919
920        <activity
921            android:name=".device.storage.UnmountActivity"
922            android:excludeFromRecents="true"
923            android:exported="false">
924            <intent-filter>
925                <action android:name="com.android.tv.settings.action.UNMOUNT_STORAGE"/>
926                <category android:name="android.intent.category.DEFAULT"/>
927            </intent-filter>
928        </activity>
929
930        <activity
931            android:name=".device.storage.FormatActivity"
932            android:excludeFromRecents="true"
933            android:exported="false" >
934            <intent-filter>
935                <action android:name="com.android.tv.settings.device.storage.FormatActivity.formatAsPublic"/>
936                <action android:name="com.android.tv.settings.device.storage.FormatActivity.formatAsPrivate"/>
937                <category android:name="android.intent.category.DEFAULT"/>
938            </intent-filter>
939        </activity>
940
941        <activity
942            android:name=".device.storage.MigrateStorageActivity"
943            android:excludeFromRecents="true"
944            android:exported="false">
945            <intent-filter>
946                <action android:name="com.android.tv.settings.action.MIGRATE_STORAGE"/>
947                <category android:name="android.intent.category.DEFAULT"/>
948            </intent-filter>
949        </activity>
950
951        <activity
952            android:name=".device.apps.MoveAppActivity"
953            android:excludeFromRecents="true"
954            android:exported="false">
955            <intent-filter>
956                <action android:name="com.android.tv.settings.action.MOVE_APP"/>
957                <category android:name="android.intent.category.DEFAULT"/>
958            </intent-filter>
959        </activity>
960
961        <activity
962            android:name=".accessories.BluetoothRequestPermissionActivity"
963            android:excludeFromRecents="true"
964            android:exported="true"
965            android:label="@string/bluetooth_permission_request"
966            android:permission="android.permission.BLUETOOTH_ADVERTISE"
967            android:theme="@style/TvSettingsActivityTheme">
968            <intent-filter android:priority="1">
969                <action android:name="android.bluetooth.adapter.action.REQUEST_DISCOVERABLE"/>
970                <action android:name="android.bluetooth.adapter.action.REQUEST_ENABLE"/>
971                <category android:name="android.intent.category.DEFAULT"/>
972            </intent-filter>
973        </activity>
974
975        <!-- Triggered when user-selected home app isn't encryption aware -->
976        <activity
977            android:name=".system.FallbackHome"
978            android:configChanges="locale|keyboard|keyboardHidden|navigation|screenLayout|fontScale|uiMode|orientation|screenSize|smallestScreenSize|layoutDirection"
979            android:excludeFromRecents="true"
980            android:exported="true"
981            android:theme="@style/FallbackHome">
982            <intent-filter android:priority="-1000">
983                <action android:name="android.intent.action.MAIN"/>
984                <category android:name="android.intent.category.HOME"/>
985                <category android:name="android.intent.category.DEFAULT"/>
986            </intent-filter>
987        </activity>
988
989        <activity
990            android:name=".inputmethod.InputMethodAndSubtypeEnablerActivity"
991            android:clearTaskOnLaunch="true"
992            android:exported="true"
993            android:label=""
994            android:theme="@style/TvSettingsActivityTheme">
995            <intent-filter android:priority="1">
996                <action android:name="android.settings.INPUT_METHOD_SUBTYPE_SETTINGS"/>
997                <category android:name="android.intent.category.DEFAULT"/>
998            </intent-filter>
999            <intent-filter>
1000                <action android:name="android.intent.action.MAIN"/>
1001                <category android:name="android.intent.category.VOICE_LAUNCH"/>
1002                <category android:name="android.intent.category.DEFAULT"/>
1003            </intent-filter>
1004        </activity>
1005
1006        <activity
1007            android:name=".device.apps.specialaccess.ExternalSourcesActivity"
1008            android:exported="true"
1009            android:label="@string/install_other_apps"
1010            android:taskAffinity=""
1011            android:theme="@style/TvSettingsActivityTheme">
1012            <intent-filter android:priority="1">
1013                <action android:name="android.settings.MANAGE_UNKNOWN_APP_SOURCES"/>
1014                <category android:name="android.intent.category.DEFAULT"/>
1015            </intent-filter>
1016            <intent-filter android:priority="1">
1017                <action android:name="android.settings.MANAGE_UNKNOWN_APP_SOURCES"/>
1018                <category android:name="android.intent.category.DEFAULT"/>
1019                <data android:scheme="package"/>
1020            </intent-filter>
1021        </activity>
1022
1023        <activity
1024            android:name=".privacy.NotificationAccessActivity"
1025            android:configChanges="keyboard|keyboardHidden|navigation"
1026            android:excludeFromRecents="true"
1027            android:exported="true"
1028            android:theme="@style/TvSettingsActivityTheme">
1029            <intent-filter android:priority="1">
1030                <action android:name="android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"/>
1031                <category android:name="android.intent.category.DEFAULT"/>
1032            </intent-filter>
1033        </activity>
1034
1035        <activity
1036            android:name=".privacy.SensorToggleActivity"
1037            android:configChanges="keyboard|keyboardHidden|navigation"
1038            android:excludeFromRecents="true"
1039            android:exported="true"
1040            android:theme="@style/TvSettingsActivityTheme">
1041            <intent-filter android:priority="1">
1042                <action android:name="android.settings.MANAGE_MICROPHONE_PRIVACY"/>
1043                <category android:name="android.intent.category.DEFAULT"/>
1044            </intent-filter>
1045            <intent-filter android:priority="1">
1046                <action android:name="android.settings.MANAGE_CAMERA_PRIVACY"/>
1047                <category android:name="android.intent.category.DEFAULT"/>
1048            </intent-filter>
1049        </activity>
1050
1051        <!-- Stub intent filters for CTS TODO: implement something useful -->
1052        <activity
1053            android:name=".EmptyStubActivity"
1054            android:excludeFromRecents="true"
1055            android:exported="true"
1056            android:theme="@android:style/Theme.NoDisplay">
1057            <intent-filter>
1058                <action android:name="android.settings.WEBVIEW_SETTINGS"/>
1059                <category android:name="android.intent.category.DEFAULT"/>
1060            </intent-filter>
1061            <intent-filter android:priority="1">
1062                <action android:name="android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS"/>
1063                <category android:name="android.intent.category.DEFAULT"/>
1064            </intent-filter>
1065            <intent-filter android:priority="1">
1066                <action android:name="android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>
1067                <category android:name="android.intent.category.DEFAULT"/>
1068                <data android:scheme="package"/>
1069            </intent-filter>
1070            <intent-filter android:priority="1">
1071                <action android:name="android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"/>
1072                <category android:name="android.intent.category.DEFAULT"/>
1073                <data android:scheme="package"/>
1074            </intent-filter>
1075            <intent-filter android:priority="1">
1076                <action android:name="android.settings.MANAGE_DEFAULT_APPS_SETTINGS"/>
1077                <action android:name="android.settings.HOME_SETTINGS"/>
1078                <category android:name="android.intent.category.DEFAULT"/>
1079            </intent-filter>
1080        </activity>
1081
1082        <!-- FileProvider to share a generated license html file. Note that
1083             "com.android.settings.files" is set here as its authorities because a Uri permission
1084             grant should be allowed to share a file with an external browser but it is allowed only
1085             for Settings' authorities in ActivityManagerService. -->
1086        <provider
1087            android:name="androidx.core.content.FileProvider"
1088            android:authorities="com.android.settings.files"
1089            android:exported="false"
1090            android:grantUriPermissions="true">
1091            <meta-data
1092                android:name="android.support.FILE_PROVIDER_PATHS"
1093                android:resource="@xml/file_paths"/>
1094        </provider>
1095
1096        <provider
1097            android:name=".name.SuggestionContentProvider"
1098            android:authorities="com.android.tv.settings.name"
1099            android:exported="true">
1100            <intent-filter>
1101                <action android:name="com.android.settings.action.SUGGESTION_STATE_PROVIDER"/>
1102            </intent-filter>
1103        </provider>
1104
1105        <activity
1106            android:name=".deviceadmin.ProfileOwnerAdd"
1107            android:clearTaskOnLaunch="true"
1108            android:excludeFromRecents="true"
1109            android:exported="true"
1110            android:theme="@style/TvSettingsActivityTheme">
1111            <intent-filter android:priority="1000">
1112                <action android:name="android.app.action.SET_PROFILE_OWNER"/>
1113                <category android:name="android.intent.category.DEFAULT"/>
1114            </intent-filter>
1115        </activity>
1116
1117        <activity
1118            android:name=".ActionDisabledByAdminDialog"
1119            android:excludeFromRecents="true"
1120            android:exported="true"
1121            android:launchMode="singleTop"
1122            android:taskAffinity="com.android.tv.settings"
1123            android:theme="@style/ActionDisabledDialogTheme">
1124            <intent-filter android:priority="1">
1125                <action android:name="android.settings.SHOW_ADMIN_SUPPORT_DETAILS"/>
1126                <category android:name="android.intent.category.DEFAULT"/>
1127            </intent-filter>
1128        </activity>
1129
1130        <activity
1131            android:name=".deviceadmin.DeviceAdminAdd"
1132            android:clearTaskOnLaunch="true"
1133            android:excludeFromRecents="true"
1134            android:exported="true">
1135            <intent-filter>
1136                <action android:name="android.app.action.ADD_DEVICE_ADMIN"/>
1137                <category android:name="android.intent.category.DEFAULT"/>
1138            </intent-filter>
1139        </activity>
1140
1141        <activity
1142            android:name=".slice.SliceActivity"
1143            android:configChanges="keyboard|keyboardHidden|navigation"
1144            android:excludeFromRecents="true"
1145            android:exported="true"
1146            android:permission="android.permission.WRITE_SECURE_SETTINGS"
1147            android:theme="@style/TvSettingsActivityTheme">
1148            <intent-filter android:priority="3">
1149                <action android:name="android.settings.SLICE_SETTINGS" />
1150                <category android:name="android.intent.category.DEFAULT" />
1151            </intent-filter>
1152        </activity>
1153
1154        <!-- It is critical to make sure that the OEM links below all have "android:priority" larger
1155             than 0 to make sure that non-System apps, whose "android:priority" are capped to 0 at
1156             runtime by the system, cannot "abduct" the intent. -->
1157        <activity-alias
1158            android:name=".oemlink.AccessibilityCaptionActivity"
1159            android:targetActivity=".system.CaptionSetupActivity"
1160            android:configChanges="keyboard|keyboardHidden|navigation"
1161            android:excludeFromRecents="true"
1162            android:exported="true"
1163            android:noHistory="true"
1164            android:theme="@style/TvSettingsActivityTheme">
1165            <intent-filter android:priority="1" >
1166                <action android:name="android.settings.ACCESSIBILITY_CAPTION_TV_OEM_LINK" />
1167                <category android:name="android.intent.category.DEFAULT" />
1168            </intent-filter>
1169        </activity-alias>
1170
1171        <activity
1172            android:name=".oemlink.AccessibilitySettingsActivity"
1173            android:configChanges="keyboard|keyboardHidden|navigation"
1174            android:excludeFromRecents="true"
1175            android:exported="true"
1176            android:theme="@style/TvSettingsActivityTheme">
1177            <intent-filter android:priority="1" >
1178                <action android:name="android.settings.ACCESSIBILITY_TV_OEM_LINK" />
1179                <action android:name="android.settings.ACCESSIBILITY_SETTINGS" />
1180                <category android:name="android.intent.category.DEFAULT" />
1181            </intent-filter>
1182        </activity>
1183
1184        <activity
1185            android:name=".accessibility.AccessibilityColorCorrectionActivity"
1186            android:configChanges="keyboard|keyboardHidden|navigation"
1187            android:excludeFromRecents="true"
1188            android:exported="true"
1189            android:theme="@style/TvSettingsActivityTheme">
1190            <intent-filter android:priority="1" >
1191                <action android:name="android.settings.ACCESSIBILITY_COLOR_CORRECTION_TV_OEM_LINK" />
1192                <category android:name="android.intent.category.DEFAULT" />
1193            </intent-filter>
1194        </activity>
1195
1196        <activity
1197            android:name=".oemlink.AccessibilityServiceActivity"
1198            android:configChanges="keyboard|keyboardHidden|navigation"
1199            android:excludeFromRecents="true"
1200            android:exported="true"
1201            android:theme="@style/TvSettingsActivityTheme">
1202            <intent-filter android:priority="1" >
1203                <action android:name="android.settings.ACCESSIBILITY_SHORTCUT_SERVICES_TV_OEM_LINK" />
1204                <category android:name="android.intent.category.DEFAULT" />
1205            </intent-filter>
1206        </activity>
1207
1208        <activity-alias
1209            android:name=".oemlink.NetworkSettingsActivity"
1210            android:targetActivity=".connectivity.NetworkActivity"
1211            android:configChanges="keyboard|keyboardHidden|navigation"
1212            android:excludeFromRecents="true"
1213            android:exported="true"
1214            android:theme="@style/TvSettingsActivityTheme">
1215            <intent-filter android:priority="1" >
1216                <action android:name="android.settings.NETWORK_SETTINGS_TV_OEM_LINK" />
1217                <category android:name="android.intent.category.DEFAULT" />
1218            </intent-filter>
1219        </activity-alias>
1220
1221        <activity
1222            android:name=".oemlink.FactoryResetActivity"
1223            android:configChanges="keyboard|keyboardHidden|navigation"
1224            android:excludeFromRecents="true"
1225            android:exported="false"
1226            android:theme="@style/ActionDisabledDialogTheme">
1227            <intent-filter android:priority="1" >
1228                <action android:name="android.settings.FACTORY_RESET_TV_OEM_LINK" />
1229                <category android:name="android.intent.category.DEFAULT" />
1230            </intent-filter>
1231            <intent-filter android:priority="1" >
1232                <action android:name="android.intent.action.FACTORY_RESET" />
1233                <category android:name="android.intent.category.DEFAULT" />
1234            </intent-filter>
1235        </activity>
1236
1237        <activity
1238            android:name="com.android.tv.settings.vendor.VendorActivity"
1239            android:configChanges="keyboard|keyboardHidden|navigation"
1240            android:excludeFromRecents="true"
1241            android:exported="true"
1242            android:theme="@style/TvSettingsActivityTheme">
1243            <intent-filter android:priority="1" >
1244                <action android:name="com.google.android.tv.settings.vendor"/>
1245                <category android:name="android.intent.category.DEFAULT"/>
1246            </intent-filter>
1247        </activity>
1248
1249        <receiver
1250            android:name=".DeviceSettingBroadcastReceiver"
1251            android:exported="true"
1252            android:permission="android.permission.READ_PRIVILEGED_PHONE_STATE">
1253            <intent-filter>
1254                <action android:name="com.android.tv.settings.REBOOT_DEVICE"/>
1255                <action android:name="com.android.tv.settings.REMOVE_WIFI"/>
1256            </intent-filter>
1257        </receiver>
1258
1259        <activity
1260            android:name=".accessories.BluetoothActionActivity"
1261            android:exported="false" />
1262
1263        <service
1264            android:name=".accessories.BluetoothDevicesService"
1265            android:exported="false" />
1266        <provider
1267            android:name=".accessories.ConnectedDevicesSliceProvider"
1268            android:authorities="com.android.tv.settings.accessories.sliceprovider"
1269            android:exported="true">
1270            <intent-filter>
1271                <action android:name="android.intent.action.VIEW"/>
1272                <category android:name="android.app.slice.category.SLICE"/>
1273            </intent-filter>
1274        </provider>
1275
1276        <receiver
1277            android:name=".accessories.ConnectedDevicesSliceBroadcastReceiver"
1278            android:exported="false">
1279        </receiver>
1280
1281        <activity
1282            android:name=".device.LimitNetworkInStandbyConfirmationDialogActivity"
1283            android:theme="@style/Transparent"
1284            android:excludeFromRecents="true"
1285            android:launchMode="singleTop"
1286            android:exported="false" />
1287
1288        <receiver
1289            android:name=".BootReceiver"
1290            android:enabled="true"
1291            android:exported="true">
1292            <intent-filter>
1293                <action android:name="android.intent.action.BOOT_COMPLETED"/>
1294            </intent-filter>
1295        </receiver>
1296
1297        <receiver
1298            android:name=".connectivity.EthernetDetectionReceiver"
1299            android:exported="false"
1300            android:enabled="true">
1301            <intent-filter>
1302                <action android:name="com.android.settings.connectivity.ETHERNET_DETECTED"/>
1303            </intent-filter>
1304        </receiver>
1305
1306        <receiver
1307            android:name=".PreBootCompleteReceiver"
1308            android:enabled="true"
1309            android:exported="true">
1310            <intent-filter>
1311                <action android:name="android.intent.action.PRE_BOOT_COMPLETED"/>
1312            </intent-filter>
1313        </receiver>
1314
1315        <activity android:name=".RemoteBugreportActivity"
1316            android:excludeFromRecents="true"
1317            android:exported="true"
1318            android:permission="android.permission.DUMP"
1319            android:theme="@style/TvSettingsActivityTheme">
1320            <intent-filter>
1321                <action android:name="android.settings.SHOW_REMOTE_BUGREPORT_DIALOG" />
1322                <category android:name="android.intent.category.DEFAULT" />
1323            </intent-filter>
1324        </activity>
1325
1326        <activity
1327            android:name=".enterprise.EnterprisePrivacySettingsActivity"
1328            android:excludeFromRecents="true"
1329            android:exported="true"
1330            android:label="@string/enterprise_privacy_settings"
1331            android:theme="@style/TvSettingsActivityTheme">
1332            <intent-filter>
1333                <action android:name="android.settings.ENTERPRISE_PRIVACY_SETTINGS" />
1334                <category android:name="android.intent.category.DEFAULT" />
1335            </intent-filter>
1336        </activity>
1337
1338        <activity
1339            android:name=".device.apps.ConfirmationActivity"
1340            android:theme="@style/GuidedStepFragmentThemeTwoPanel"
1341            android:exported="true">
1342            <intent-filter>
1343                <action android:name="android.settings.ui.CONFIRM" />
1344                <category android:name="android.intent.category.DEFAULT" />
1345            </intent-filter>
1346        </activity>
1347
1348        <service android:name=".device.eco.EnergyModesStatsLogJobService"
1349            android:permission="android.permission.BIND_JOB_SERVICE" />
1350
1351        <provider
1352            android:name=".device.eco.EnergyModesContentProvider"
1353            android:authorities="com.android.tv.settings.device.eco.energymodes"
1354            android:exported="true">
1355            <intent-filter>
1356                <action android:name="com.android.tv.settings.ENERGY_MODES_PROVIDER"/>
1357            </intent-filter>
1358        </provider>
1359
1360        <activity
1361            android:name=".device.eco.EnergyModesActivity"
1362            android:configChanges="keyboard|keyboardHidden|navigation"
1363            android:excludeFromRecents="true"
1364            android:exported="true"
1365            android:theme="@style/TvSettingsActivityTheme">
1366            <intent-filter android:priority="1" >
1367                <action android:name="com.google.android.tv.settings.energymodes"/>
1368                <category android:name="android.intent.category.DEFAULT"/>
1369            </intent-filter>
1370        </activity>
1371
1372        <activity android:name=".device.eco.EnergyModeConfirmationActivity"
1373            android:theme="@style/Theme.Reset"
1374            android:configChanges="keyboard|keyboardHidden|navigation"
1375            android:excludeFromRecents="true" />
1376
1377        <receiver
1378            android:name=".GlobalKeyReceiver"
1379            android:exported="true">
1380            <intent-filter>
1381                <action android:name="android.intent.action.GLOBAL_BUTTON"/>
1382            </intent-filter>
1383        </receiver>
1384
1385    </application>
1386
1387    <queries>
1388        <intent>
1389            <action android:name="com.google.android.tv.FIND_MY_REMOTE" />
1390        </intent>
1391    </queries>
1392
1393    <protected-broadcast android:name="com.android.tv.settings.display.HDR_SETTINGS_CHANGED" />
1394
1395</manifest>
1396