• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2
3<!--
4  ~ Copyright (C) 2022 The Android Open Source Project
5  ~
6  ~ Licensed under the Apache License, Version 2.0 (the "License");
7  ~ you may not use this file except in compliance with the License.
8  ~ You may obtain a copy of the License at
9  ~
10  ~      http://www.apache.org/licenses/LICENSE-2.0
11  ~
12  ~ Unless required by applicable law or agreed to in writing, software
13  ~ distributed under the License is distributed on an "AS IS" BASIS,
14  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  ~ See the License for the specific language governing permissions and
16  ~ limitations under the License.
17  -->
18
19<manifest xmlns:android="http://schemas.android.com/apk/res/android"
20          package="com.android.DevicePolicyManagerRoleHolder" android:targetSandboxVersion="2">
21    <uses-permission android:name="android.permission.BIND_DEVICE_ADMIN" />
22    <uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS" />
23    <uses-permission android:name="android.permission.NETWORK_MANAGED_PROVISIONING" />
24    <uses-permission android:name="android.permission.PEERS_MAC_ADDRESS" />
25    <uses-permission android:name="android.permission.USE_COLORIZED_NOTIFICATIONS" />
26    <uses-permission android:name="android.permission.MASTER_CLEAR" />
27    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
28    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
29    <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND" />
30    <uses-permission android:name="android.permission.START_FOREGROUND_SERVICES_FROM_BACKGROUND" />
31    <uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS" />
32    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
33    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
34    <uses-permission android:name="com.android.permission.INSTALL_EXISTING_PACKAGES" />
35    <uses-permission android:name="android.permission.DELETE_PACKAGES" />
36    <uses-permission android:name="android.permission.ACCESS_PDB_STATE" />
37    <uses-permission android:name="android.permission.MARK_DEVICE_ORGANIZATION_OWNED" />
38    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
39    <uses-permission android:name="android.permission.SET_TIME" />
40    <uses-permission android:name="android.permission.SET_TIME_ZONE" />
41    <uses-permission android:name="android.permission.CRYPT_KEEPER" />
42    <uses-permission android:name="android.permission.SHUTDOWN" />
43    <uses-permission android:name="android.permission.PERFORM_CDMA_PROVISIONING" />
44    <uses-permission android:name="android.permission.CONFIGURE_INTERACT_ACROSS_PROFILES" />
45    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
46    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
47    <uses-permission android:name="android.permission.LAUNCH_DEVICE_MANAGER_SETUP" />
48    <uses-permission android:name="android.permission.INSTALL_DPC_PACKAGES" />
49    <uses-permission android:name="android.permission.QUERY_USERS" />
50    <uses-permission android:name="android.permission.UPDATE_DEVICE_MANAGEMENT_RESOURCES" />
51    <uses-permission android:name="android.permission.QUERY_ADMIN_POLICY" />
52    <uses-permission android:name="android.permission.TRIGGER_LOST_MODE" />
53    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_APP_EXEMPTIONS" />
54    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_ACCOUNT_MANAGEMENT" />
55    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_AIRPLANE_MODE" />
56    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_CAMERA" />
57    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_CERTIFICATES" />
58    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_COMMON_CRITERIA_MODE" />
59    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_DEFAULT_SMS" />
60    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_FACTORY_RESET" />
61    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_INPUT_METHODS" />
62    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_INSTALL_UNKNOWN_SOURCES" />
63    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_KEYGUARD" />
64    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_LOCK" />
65    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_LOCK_CREDENTIALS" />
66    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_MOBILE_NETWORK" />
67    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_MTE" />
68    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_PACKAGE_STATE" />
69    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_PROFILES" />
70    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_RESTRICT_PRIVATE_DNS" />
71    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SCREEN_CAPTURE" />
72    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SECURITY_LOGGING" />
73    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_AUDIT_LOGGING" />
74    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SUSPEND_PERSONAL_APPS" />
75    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SYSTEM_UPDATES" />
76    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_TIME" />
77    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_USB_DATA_SIGNALLING" />
78    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_WIFI" />
79    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_WIPE_DATA" />
80    <uses-permission android:name="android.permission.SET_TIME" />
81    <uses-permission android:name="android.permission.SET_TIME_ZONE" />
82    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_DEBUGGING_FEATURES" />
83    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_MODIFY_USERS" />
84    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_SAFE_BOOT" />
85    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_MICROPHONE" />
86    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_USB_FILE_TRANSFER" />
87    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_CONTENT_PROTECTION" />
88    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_APP_FUNCTIONS" />
89    <uses-permission android:name="android.permission.MANAGE_DEVICE_POLICY_QUERY_SYSTEM_UPDATES" />
90    <uses-permission android:name="android.permission.QUERY_DEVICE_STOLEN_STATE" />
91    <uses-permission android:name="android.permission.COPY_ACCOUNTS" />
92    <uses-permission android:name="android.permission.REMOVE_ACCOUNTS" />
93
94    <application
95        android:label="DevicePolicyManagerRoleHolder" android:testOnly="true">
96    <!-- Don't allow this test app to be returned by queries unless filtered by package name -->
97        <meta-data android:name="testapp-package-query-only" android:value="true" />
98
99        <activity android:name=".provision_managed_device_from_trusted_source" android:exported="true" android:permission="android.permission.LAUNCH_DEVICE_MANAGER_SETUP">
100            <intent-filter>
101                <action android:name="android.app.action.ROLE_HOLDER_PROVISION_MANAGED_DEVICE_FROM_TRUSTED_SOURCE" />
102                <category android:name="android.intent.category.DEFAULT" />
103            </intent-filter>
104        </activity>
105        <activity android:name=".role_holder_provision_managed_profile" android:exported="true" android:permission="android.permission.LAUNCH_DEVICE_MANAGER_SETUP">
106            <intent-filter>
107                <action android:name="android.app.action.ROLE_HOLDER_PROVISION_MANAGED_PROFILE" />
108                <category android:name="android.intent.category.DEFAULT" />
109            </intent-filter>
110        </activity>
111        <activity android:name=".role_holder_provision_finalization" android:exported="true" android:permission="android.permission.LAUNCH_DEVICE_MANAGER_SETUP">
112            <intent-filter>
113                <action android:name="android.app.action.ROLE_HOLDER_PROVISION_FINALIZATION" />
114                <category android:name="android.intent.category.DEFAULT" />
115            </intent-filter>
116        </activity>
117
118        <receiver android:name=".RoleHolderReceiver" android:exported="true">
119            <intent-filter>
120                <action android:name="android.intent.action.MANAGED_PROFILE_REMOVED" />
121                <action android:name="android.intent.action.MANAGED_PROFILE_AVAILABLE" />
122                <action android:name="android.intent.action.MANAGED_PROFILE_UNAVAILABLE" />
123            </intent-filter>
124        </receiver>
125
126        <receiver android:name=".FinancedDeviceStateReceiver" android:exported="true">
127            <intent-filter>
128                <action android:name="android.app.admin.action.DEVICE_FINANCING_STATE_CHANGED" />
129            </intent-filter>
130        </receiver>
131
132        <!-- Ideally it's not required for role holder to act as a dpc, but its required for
133        some of our ManagedSubscriptionsPolicy test, adding this receiver only for this reason.-->
134        <receiver android:name=".DeviceAdminReceiver"
135            android:permission="android.permission.BIND_DEVICE_ADMIN"
136            android:exported="true">
137            <meta-data android:name="android.app.device_admin"
138                android:resource="@xml/device_admin"/>
139            <intent-filter>
140                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
141                <action android:name="android.app.action.NOTIFY_PENDING_SYSTEM_UPDATE"/>
142            </intent-filter>
143        </receiver>
144
145    </application>
146</manifest>