| <?xml version="1.0" encoding="utf-8"?> |
| <!-- |
| ~ Copyright (C) 2022 The Android Open Source Project |
| ~ |
| ~ Licensed under the Apache License, Version 2.0 (the "License"); |
| ~ you may not use this file except in compliance with the License. |
| ~ You may obtain a copy of the License at |
| ~ |
| ~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~ |
| ~ Unless required by applicable law or agreed to in writing, software |
| ~ distributed under the License is distributed on an "AS IS" BASIS, |
| ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ~ See the License for the specific language governing permissions and |
| ~ limitations under the License. |
| --> |
| |
| <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
| xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" |
| xmlns:tools="http://schemas.android.com/tools" |
| package="com.android.devicelockcontroller"> |
| |
| <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> |
| <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"/> |
| <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/> |
| <uses-permission android:name="android.permission.INSTALL_PACKAGES"/> |
| <uses-permission android:name="android.permission.MASTER_CLEAR"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_APPS_CONTROL"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_CALLS"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_LOCK_TASK"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT"/> |
| <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_TIME"/> |
| <uses-permission android:name="android.permission.INTERNET" /> |
| <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> |
| |
| <application |
| android:name=".DeviceLockControllerApplication" |
| android:allowBackup="false" |
| android:label="@string/app_name" |
| android:supportsRtl="true"> |
| <activity |
| android:name="com.android.devicelockcontroller.activities.HelpActivity" |
| android:theme="@style/Theme.Materialu" |
| android:exported="false"/> |
| <activity |
| android:name="com.android.devicelockcontroller.activities.LandingActivity" |
| android:theme="@style/Theme.Materialu" |
| android:exported="true"> |
| <intent-filter> |
| <action android:name="com.android.devicelockcontroller.action.START_DEVICE_LOCK_PROVISIONING"/> |
| <category android:name="android.intent.category.DEFAULT"/> |
| </intent-filter> |
| </activity> |
| <activity-alias |
| android:name="com.android.devicelockcontroller.activities.DeviceFinancingDeferredProvisioningLandingActivity" |
| android:targetActivity=".activities.LandingActivity" |
| android:exported="false"> |
| <intent-filter> |
| <action android:name="com.android.devicelockcontroller.action.START_DEVICE_FINANCING_DEFERRED_PROVISIONING"/> |
| <category android:name="android.intent.category.DEFAULT"/> |
| </intent-filter> |
| </activity-alias> |
| <activity-alias |
| android:name="com.android.devicelockcontroller.activities.DeviceSubsidyProvisioningLandingActivity" |
| android:targetActivity=".activities.LandingActivity" |
| android:exported="false"> |
| <intent-filter> |
| <action android:name="com.android.devicelockcontroller.action.START_DEVICE_SUBSIDY_PROVISIONING"/> |
| <category android:name="android.intent.category.DEFAULT"/> |
| </intent-filter> |
| </activity-alias> |
| <service android:name="com.android.devicelockcontroller.DeviceLockControllerService" |
| android:directBootAware="true" |
| android:exported="false" |
| androidprv:systemUserOnly="true"> |
| <intent-filter> |
| <action android:name="android.app.action.DEVICE_LOCK_CONTROLLER_SERVICE"/> |
| </intent-filter> |
| </service> |
| <service android:name="com.android.devicelockcontroller.setup.SetupParametersService" |
| android:directBootAware="true" |
| android:exported="false" |
| android:singleUser="true"> |
| </service> |
| <service android:name="com.android.devicelockcontroller.setup.UserPreferencesService" |
| android:directBootAware="true" |
| android:exported="false" |
| android:singleUser="true"> |
| </service> |
| <!-- The following component is needed because many Device Policy Manager APIs require |
| this receiver component name as first argument. --> |
| <receiver android:name="com.android.devicelockcontroller.receivers.DlcDeviceAdminReceiver" |
| android:permission="android.permission.BIND_DEVICE_ADMIN" |
| android:exported="false" |
| androidprv:systemUserOnly="true"> |
| <meta-data |
| android:name="android.app.device_admin" |
| android:resource="@xml/device_admin"/> |
| <intent-filter> |
| <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/> |
| </intent-filter> |
| </receiver> |
| <!-- Single user boot completed broadcast receiver --> |
| <receiver |
| android:name="com.android.devicelockcontroller.receivers.CheckInBootCompletedReceiver" |
| android:exported="false" |
| androidprv:systemUserOnly="true"> |
| <intent-filter> |
| <action android:name="android.intent.action.BOOT_COMPLETED"/> |
| </intent-filter> |
| </receiver> |
| <!-- Multi users boot completed broadcast receiver --> |
| <receiver |
| android:name="com.android.devicelockcontroller.receivers.LockTaskBootCompletedReceiver" |
| android:exported="false" |
| android:singleUser="false"> |
| <intent-filter> |
| <action android:name="android.intent.action.BOOT_COMPLETED"/> |
| </intent-filter> |
| </receiver> |
| <!-- Multi users locked boot completed broadcast receiver --> |
| <receiver |
| android:name="com.android.devicelockcontroller.receivers.DlcLockedBootCompletedReceiver" |
| android:directBootAware="true" |
| android:exported="false" |
| android:singleUser="false"> |
| <intent-filter> |
| <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED"/> |
| </intent-filter> |
| </receiver> |
| <!-- b/267355744: Disable the default initializer used by WorkManager, so that we can ensure |
| WorkManager is initialized when needed. --> |
| <provider |
| android:name="androidx.startup.InitializationProvider" |
| android:authorities="${applicationId}.androidx-startup" |
| tools:node="remove"> |
| </provider> |
| </application> |
| |
| </manifest> |