1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2008 The Android Open Source Project
3
4     Licensed under the Apache License, Version 2.0 (the "License");
5     you may not use this file except in compliance with the License.
6     You may obtain a copy of the License at
7
8          http://www.apache.org/licenses/LICENSE-2.0
9
10     Unless required by applicable law or agreed to in writing, software
11     distributed under the License is distributed on an "AS IS" BASIS,
12     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13     See the License for the specific language governing permissions and
14     limitations under the License.
15-->
16
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
18     package="com.android.frameworks.servicestests">
19
20    <uses-permission android:name="android.permission.READ_LOGS"/>
21    <uses-permission android:name="android.permission.ACCESS_VR_MANAGER"/>
22    <uses-permission android:name="android.permission.ACCOUNT_MANAGER"/>
23    <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
24    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
25    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
26    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
27    <uses-permission android:name="android.permission.BROADCAST_STICKY"/>
28    <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"/>
29    <uses-permission android:name="android.permission.MANAGE_APP_TOKENS"/>
30    <uses-permission android:name="android.permission.WAKE_LOCK"/>
31    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/>
32    <uses-permission android:name="android.permission.REAL_GET_TASKS"/>
33    <uses-permission android:name="android.permission.GET_DETAILED_TASKS"/>
34    <uses-permission android:name="android.permission.REORDER_TASKS"/>
35    <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY"/>
36    <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"/>
37    <uses-permission android:name="android.permission.OBSERVE_NETWORK_POLICY"/>
38    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
39    <uses-permission android:name="android.permission.MANAGE_USERS"/>
40    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/>
41    <uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS"/>
42    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE"/>
43    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"/>
44    <uses-permission android:name="android.permission.INTERNET"/>
45    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
46    <uses-permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"/>
47    <uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT"/>
48    <uses-permission android:name="android.permission.MANAGE_ACTIVITY_TASKS"/>
49    <uses-permission android:name="android.permission.INSTALL_PACKAGES"/>
50    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION"/>
51    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"/>
52    <uses-permission android:name="android.permission.DELETE_PACKAGES"/>
53    <uses-permission android:name="android.permission.GET_APP_OPS_STATS"/>
54    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS"/>
55    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES"/>
56    <uses-permission android:name="android.permission.DEVICE_POWER"/>
57    <uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
58    <uses-permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"/>
59    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
60    <uses-permission android:name="android.permission.STATUS_BAR"/>
61    <uses-permission android:name="android.permission.STATUS_BAR_SERVICE"/>
62    <uses-permission android:name="android.permission.ACCESS_SURFACE_FLINGER"/>
63    <uses-permission android:name="android.permission.READ_FRAME_BUFFER"/>
64    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
65    <uses-permission android:name="android.permission.STORAGE_INTERNAL"/>
66    <uses-permission android:name="android.permission.WATCH_APPOPS"/>
67    <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
68    <uses-permission android:name="android.permission.SUSPEND_APPS"/>
69    <uses-permission android:name="android.permission.LOG_COMPAT_CHANGE"/>
70    <uses-permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG"/>
71    <uses-permission android:name="android.permission.CONTROL_KEYGUARD"/>
72    <uses-permission android:name="android.permission.MANAGE_BIND_INSTANT_SERVICE"/>
73    <uses-permission android:name="android.permission.CONTROL_DISPLAY_COLOR_TRANSFORMS"/>
74    <uses-permission android:name="android.permission.CONTROL_DISPLAY_BRIGHTNESS"/>
75    <uses-permission android:name="android.permission.CONFIGURE_DISPLAY_BRIGHTNESS"/>
76    <uses-permission android:name="android.permission.READ_DEVICE_CONFIG"/>
77    <uses-permission android:name="android.permission.WRITE_ALLOWLISTED_DEVICE_CONFIG"/>
78    <uses-permission android:name="android.permission.READ_WRITE_SYNC_DISABLED_MODE_CONFIG"/>
79    <uses-permission android:name="android.permission.HARDWARE_TEST"/>
80    <uses-permission android:name="android.permission.BLUETOOTH"/>
81    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
82    <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE"/>
83    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/>
84    <uses-permission android:name="android.permission.BLUETOOTH_SCAN"/>
85    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"/>
86    <uses-permission android:name="android.permission.DUMP"/>
87    <uses-permission android:name="android.permission.READ_DREAM_STATE"/>
88    <uses-permission android:name="android.permission.READ_DREAM_SUPPRESSION"/>
89    <uses-permission android:name="android.permission.WRITE_DREAM_STATE"/>
90    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
91    <uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"/>
92    <uses-permission android:name="android.permission.MEDIA_RESOURCE_OVERRIDE_PID"/>
93    <uses-permission android:name="android.permission.VIBRATE"/>
94    <uses-permission android:name="android.permission.ACCESS_VIBRATOR_STATE"/>
95    <uses-permission android:name="android.permission.VIBRATE_ALWAYS_ON"/>
96    <uses-permission android:name="android.permission.CONTROL_DEVICE_STATE"/>
97    <uses-permission android:name="android.permission.READ_PROJECTION_STATE"/>
98    <uses-permission android:name="android.permission.KILL_UID"/>
99    <uses-permission android:name="android.permission.MAINLINE_NETWORK_STACK"/>
100    <uses-permission
101        android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG_ON_RELEASE_BUILD"/>
102    <uses-permission android:name="android.permission.OVERRIDE_COMPAT_CHANGE_CONFIG"/>
103    <uses-permission android:name="android.permission.ASSOCIATE_INPUT_DEVICE_TO_DISPLAY" />
104    <uses-permission android:name="android.permission.READ_NEARBY_STREAMING_POLICY" />
105    <uses-permission android:name="android.permission.MODIFY_AUDIO_ROUTING" />
106    <uses-permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT" />
107    <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS" />
108    <uses-permission android:name="android.permission.BATTERY_STATS" />
109    <uses-permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES" />
110    <uses-permission android:name="android.permission.ACCESS_CONTEXT_HUB" />
111    <uses-permission android:name="android.permission.USE_BIOMETRIC_INTERNAL" />
112    <uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION" />
113    <uses-permission android:name="android.permission.MANAGE_ROLE_HOLDERS" />
114
115    <queries>
116        <package android:name="com.android.servicestests.apps.suspendtestapp" />
117        <intent>
118            <action android:name="android.media.browse.MediaBrowserService" />
119        </intent>
120    </queries>
121
122    <!-- Uses API introduced in O (26) -->
123    <uses-sdk android:minSdkVersion="1"
124         android:targetSdkVersion="26"/>
125
126    <application android:testOnly="true" android:debuggable="true">
127        <uses-library android:name="android.test.runner"/>
128
129        <service android:name="com.android.server.accounts.TestAccountType1AuthenticatorService"
130             android:exported="false">
131          <intent-filter>
132            <action android:name="android.accounts.AccountAuthenticator"/>
133          </intent-filter>
134          <meta-data android:name="android.accounts.AccountAuthenticator"
135               android:resource="@xml/test_account_type1_authenticator"/>
136        </service>
137
138        <service android:name="com.android.server.accounts.TestAccountType2AuthenticatorService"
139             android:exported="false">
140          <intent-filter>
141            <action android:name="android.accounts.AccountAuthenticator"/>
142          </intent-filter>
143          <meta-data android:name="android.accounts.AccountAuthenticator"
144               android:resource="@xml/test_account_type2_authenticator"/>
145        </service>
146
147        <service
148            android:name="com.android.server.dreams.TestDreamService"
149            android:exported="false"
150            android:label="Test Dream" >
151            <intent-filter>
152                <action android:name="android.service.dreams.DreamService" />
153                <category android:name="android.intent.category.DEFAULT" />
154            </intent-filter>
155            <meta-data
156                android:name="android.service.dream"
157                android:resource="@xml/test_dream_metadata" />
158        </service>
159
160        <service
161            android:name="com.android.server.dreams.TestDreamServiceWithInvalidSettings"
162            android:exported="false"
163            android:label="Test Dream" >
164            <intent-filter>
165                <action android:name="android.service.dreams.DreamService" />
166                <category android:name="android.intent.category.DEFAULT" />
167            </intent-filter>
168            <meta-data
169                android:name="android.service.dream"
170                android:resource="@xml/test_dream_metadata_invalid" />
171        </service>
172
173        <receiver android:name="com.android.server.devicepolicy.ApplicationRestrictionsTest$AdminReceiver"
174             android:permission="android.permission.BIND_DEVICE_ADMIN"
175             android:exported="true">
176            <meta-data android:name="android.app.device_admin"
177                 android:resource="@xml/device_admin_sample"/>
178            <intent-filter>
179                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
180            </intent-filter>
181        </receiver>
182
183        <receiver android:name="com.android.server.devicepolicy.DummyDeviceAdmins$Admin1"
184             android:permission="android.permission.BIND_DEVICE_ADMIN"
185             android:exported="true">
186            <meta-data android:name="android.app.device_admin"
187                 android:resource="@xml/device_admin_sample"/>
188            <intent-filter>
189                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
190            </intent-filter>
191        </receiver>
192
193        <receiver android:name="com.android.server.devicepolicy.DummyDeviceAdmins$Admin2"
194             android:permission="android.permission.BIND_DEVICE_ADMIN"
195             android:exported="true">
196            <meta-data android:name="android.app.device_admin"
197                 android:resource="@xml/device_admin_sample"/>
198            <intent-filter>
199                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
200            </intent-filter>
201        </receiver>
202
203        <receiver android:name="com.android.server.devicepolicy.DummyDeviceAdmins$Admin3"
204             android:permission="android.permission.BIND_DEVICE_ADMIN"
205             android:exported="true">
206            <meta-data android:name="android.app.device_admin"
207                 android:resource="@xml/device_admin_sample"/>
208            <intent-filter>
209                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
210            </intent-filter>
211        </receiver>
212
213        <receiver android:name="com.android.server.devicepolicy.DummyDeviceAdmins$AdminNoPerm"
214             android:exported="true">
215            <meta-data android:name="android.app.device_admin"
216                 android:resource="@xml/device_admin_sample"/>
217            <intent-filter>
218                <action android:name="android.app.action.DEVICE_ADMIN_ENABLED"/>
219            </intent-filter>
220        </receiver>
221
222        <service android:name="com.android.server.job.MockBiasJobService"
223             android:permission="android.permission.BIND_JOB_SERVICE"/>
224
225        <activity android:name="com.android.server.pm.BaseShortcutManagerTest$ShortcutActivity"/>
226        <activity android:name="com.android.server.pm.BaseShortcutManagerTest$ShortcutActivity2"/>
227        <activity android:name="com.android.server.pm.BaseShortcutManagerTest$ShortcutActivity3"/>
228
229        <activity android:name="com.android.server.pm.ShortcutTestActivity"
230             android:enabled="true"
231             android:exported="true"/>
232
233        <activity android:name="com.android.server.pm.SuspendedDetailsActivity"
234             android:enabled="true"
235             android:permission="android.permission.SEND_SHOW_SUSPENDED_APP_DETAILS"
236             android:exported="true">
237            <intent-filter>
238                <action android:name="android.intent.action.SHOW_SUSPENDED_APP_DETAILS"/>
239                <category android:name="android.intent.category.DEFAULT"/>
240            </intent-filter>
241        </activity>
242
243        <activity android:name="com.android.server.accounts.AccountAuthenticatorDummyActivity"/>
244        <activity android:name="com.android.server.adb.AdbDebuggingManagerTestActivity"/>
245
246        <activity-alias android:name="a.ShortcutEnabled"
247             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
248             android:enabled="true"
249             android:exported="true">
250        </activity-alias>
251        <activity-alias android:name="a.ShortcutDisabled"
252             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
253             android:enabled="false"
254             android:exported="true">
255            <meta-data android:name="android.app.shortcuts"
256                 android:resource="@xml/shortcut_5"/>
257        </activity-alias>
258        <activity-alias android:name="a.ShortcutUnexported"
259             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
260             android:enabled="true"
261             android:exported="false">
262            <meta-data android:name="android.app.shortcuts"
263                 android:resource="@xml/shortcut_5"/>
264        </activity-alias>
265        <activity-alias android:name="a.Shortcut1"
266             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
267             android:enabled="true"
268             android:exported="true">
269            <meta-data android:name="android.app.shortcuts"
270                 android:resource="@xml/shortcut_1"/>
271        </activity-alias>
272        <activity-alias android:name="a.ShortcutConfigActivity"
273             android:targetActivity="com.android.server.pm.ShortcutTestActivity">
274            <intent-filter>
275                <action android:name="android.intent.action.CREATE_SHORTCUT"/>
276            </intent-filter>
277        </activity-alias>
278
279        <activity-alias android:name="a.DisabledMain"
280             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
281             android:enabled="false"
282             android:exported="true">
283            <intent-filter>
284                <action android:name="android.intent.action.MAIN"/>
285                <category android:name="android.intent.category.DEFAULT"/>
286                <category android:name="android.intent.category.LAUNCHER"/>
287            </intent-filter>
288        </activity-alias>
289
290        <activity-alias android:name="a.UnexportedMain"
291             android:targetActivity="com.android.server.pm.ShortcutTestActivity"
292             android:enabled="true"
293             android:exported="false">
294            <intent-filter>
295                <action android:name="android.intent.action.MAIN"/>
296                <category android:name="android.intent.category.DEFAULT"/>
297                <category android:name="android.intent.category.LAUNCHER"/>
298            </intent-filter>
299        </activity-alias>
300
301        <receiver android:name="com.android.server.appwidget.DummyAppWidget"
302             android:exported="true">
303            <intent-filter>
304                <action android:name="android.appwidget.action.APPWIDGET_UPDATE"/>
305            </intent-filter>
306            <meta-data android:name="android.appwidget.provider"
307                 android:resource="@xml/dummy_appwidget_info"/>
308        </receiver>
309    </application>
310
311    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
312         android:targetPackage="com.android.frameworks.servicestests"
313         android:label="Frameworks Services Tests"/>
314</manifest>
315