• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3  ~ Copyright (C) 2023 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<!--The base manifest file contains all elements from DeviceLockController.
19    Any new components should also be added to
20    src/com/android/devicelockcontroller/debug/AndroidManifest.xml
21    -->
22<manifest xmlns:android="http://schemas.android.com/apk/res/android"
23    xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
24    xmlns:tools="http://schemas.android.com/tools"
25    package="com.android.devicelockcontroller">
26
27    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
28    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
29    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
30    <uses-permission android:name="android.permission.INSTALL_PACKAGES" />
31    <uses-permission android:name="android.permission.MASTER_CLEAR" />
32    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL" />
33    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_CALLS" />
34    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES" />
35    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES" />
36    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK" />
37    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT" />
38    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_TIME" />
39    <uses-permission android:name="android.permission.INTERNET" />
40    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
41    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
42    <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
43    <uses-permission android:name="com.android.permission.INSTALL_EXISTING_PACKAGES" />
44    <uses-permission android:name="com.android.devicelockcontroller.permission.MANAGE_DEVICE_LOCK_SERVICE_FROM_CONTROLLER" />
45
46    <application
47        android:name=".DeviceLockControllerApplication"
48        android:allowBackup="false"
49        android:allowClearUserData="false"
50        android:label="@string/app_name"
51        android:supportsRtl="true">
52        <activity
53            android:name="com.android.devicelockcontroller.activities.HelpActivity"
54            android:exported="false"
55            android:theme="@style/Theme.DeviceLock.NoActionBar" />
56        <activity
57            android:name="com.android.devicelockcontroller.activities.LandingActivity"
58            android:exported="false"
59            android:excludeFromRecents="true"
60            android:immersive="true"
61            android:theme="@style/Theme.DeviceLock.NoActionBar">
62            <intent-filter>
63                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_FINANCING_PROVISIONING" />
64                <category android:name="android.intent.category.DEFAULT" />
65            </intent-filter>
66        </activity>
67
68        <activity
69            android:name="com.android.devicelockcontroller.activities.ProvisioningActivity"
70            android:exported="false"
71            android:excludeFromRecents="true"
72            android:immersive="true"
73            android:theme="@style/Theme.DeviceLock.NoActionBar" />
74
75        <activity-alias
76            android:name="com.android.devicelockcontroller.activities.DeviceFinancingSecondaryUserLandingActivity"
77            android:exported="false"
78            android:targetActivity=".activities.LandingActivity">
79            <intent-filter>
80                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_FINANCING_SECONDARY_USER_PROVISIONING" />
81                <category android:name="android.intent.category.DEFAULT" />
82            </intent-filter>
83        </activity-alias>
84        <activity-alias
85            android:name="com.android.devicelockcontroller.activities.DeviceFinancingDeferredProvisioningLandingActivity"
86            android:exported="false"
87            android:targetActivity=".activities.LandingActivity">
88            <intent-filter>
89                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_FINANCING_DEFERRED_PROVISIONING" />
90                <category android:name="android.intent.category.DEFAULT" />
91            </intent-filter>
92        </activity-alias>
93        <activity-alias
94            android:name="com.android.devicelockcontroller.activities.DeviceSubsidyProvisioningLandingActivity"
95            android:exported="false"
96            android:targetActivity=".activities.LandingActivity">
97            <intent-filter>
98                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_SUBSIDY_PROVISIONING" />
99                <category android:name="android.intent.category.DEFAULT" />
100            </intent-filter>
101        </activity-alias>
102
103        <activity-alias
104            android:name="com.android.devicelockcontroller.activities.DeviceSubsidyDeferredProvisioningLandingActivity"
105            android:exported="false"
106            android:targetActivity=".activities.LandingActivity">
107            <intent-filter>
108                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_SUBSIDY_DEFERRED_PROVISIONING" />
109                <category android:name="android.intent.category.DEFAULT" />
110            </intent-filter>
111        </activity-alias>
112
113        <activity-alias
114            android:name="com.android.devicelockcontroller.activities.DeviceFinancingProvisionNotRequiredLandingActivity"
115            android:exported="false"
116            android:targetActivity=".activities.LandingActivity">
117            <intent-filter>
118                <action android:name="com.android.devicelockcontroller.action.DEVICE_FINANCING_PROVISION_NOT_REQUIRED" />
119                <category android:name="android.intent.category.DEFAULT" />
120            </intent-filter>
121        </activity-alias>
122
123        <activity-alias
124            android:name="com.android.devicelockcontroller.activities.DeviceSubsidyProvisionNotRequiredLandingActivity"
125            android:exported="false"
126            android:targetActivity=".activities.LandingActivity">
127            <intent-filter>
128                <action android:name="com.android.devicelockcontroller.action.DEVICE_SUBSIDY_PROVISION_NOT_REQUIRED" />
129                <category android:name="android.intent.category.DEFAULT" />
130            </intent-filter>
131        </activity-alias>
132
133        <activity
134            android:name="com.android.devicelockcontroller.activities.DeviceEnrollmentActivity"
135            android:theme="@style/Theme.DeviceLock.NoActionBar"
136            android:exported="false">
137            <intent-filter>
138                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_FINANCING_ENROLLMENT"/>
139                <category android:name="android.intent.category.DEFAULT"/>
140            </intent-filter>
141        </activity>
142        <activity-alias
143            android:name="com.android.devicelockcontroller.activities.DeviceSubsidyEnrollmentActivity"
144            android:targetActivity=".activities.DeviceEnrollmentActivity"
145            android:exported="false">
146            <intent-filter>
147                <action android:name="com.android.devicelockcontroller.action.START_DEVICE_SUBSIDY_ENROLLMENT"/>
148                <category android:name="android.intent.category.DEFAULT"/>
149            </intent-filter>
150        </activity-alias>
151
152        <activity
153            android:name="com.android.devicelockcontroller.activities.DeviceLockSettingsActivity"
154            android:theme="@style/Theme.DeviceLock.NoActionBar"
155            android:exported="true">
156            <intent-filter>
157                <action android:name="com.android.devicelockcontroller.action.DEVICE_INFO_SETTINGS"/>
158                <category android:name="android.intent.category.DEFAULT"/>
159            </intent-filter>
160        </activity>
161
162        <provider
163            android:name="androidx.startup.InitializationProvider"
164            android:authorities="${applicationId}.androidx-startup"
165            tools:node="remove" />
166
167        <!-- System user only boot completed broadcast receiver -->
168        <receiver
169            android:name="com.android.devicelockcontroller.receivers.CheckInBootCompletedReceiver"
170            android:exported="false"
171            androidprv:systemUserOnly="true">
172            <intent-filter>
173                <action android:name="android.intent.action.BOOT_COMPLETED" />
174            </intent-filter>
175        </receiver>
176
177        <!-- Multi users boot completed broadcast receiver -->
178        <receiver
179            android:name="com.android.devicelockcontroller.receivers.LockTaskBootCompletedReceiver"
180            android:exported="false"
181            android:singleUser="false">
182            <intent-filter>
183                <action android:name="android.intent.action.BOOT_COMPLETED" />
184            </intent-filter>
185        </receiver>
186
187        <!-- Multi users locked boot completed broadcast receiver -->
188        <receiver
189            android:name="com.android.devicelockcontroller.receivers.LockedBootCompletedReceiver"
190            android:directBootAware="true"
191            android:exported="false"
192            android:singleUser="false">
193            <intent-filter>
194                <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
195            </intent-filter>
196        </receiver>
197
198        <service
199            android:name="com.android.devicelockcontroller.DeviceLockControllerService"
200            android:directBootAware="true"
201            android:exported="false"
202            androidprv:systemUserOnly="true">
203            <intent-filter>
204                <action android:name="android.app.action.DEVICE_LOCK_CONTROLLER_SERVICE" />
205            </intent-filter>
206        </service>
207
208        <service
209            android:name="com.android.devicelockcontroller.storage.SetupParametersService"
210            android:directBootAware="true"
211            android:exported="false"
212            android:singleUser="true" />
213
214        <service
215            android:name="com.android.devicelockcontroller.storage.GlobalParametersService"
216            android:directBootAware="true"
217            android:exported="false"
218            android:singleUser="true" />
219
220    </application>
221
222</manifest>
223