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<manifest xmlns:android="http://schemas.android.com/apk/res/android"
19          package="com.android.ondevicepersonalization.federatedcomputetests" >
20
21    <!-- Used for scheduling connectivity jobs -->
22    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
23    <uses-permission android:name="android.permission.INTERNET" />
24    <!-- Used for persisting scheduled jobs -->
25    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
26    <uses-permission android:name="android.permission.BIND_EXAMPLE_STORE_SERVICE" />
27
28    <application android:label="FederatedComputeServicesTests"
29                 android:debuggable="true">
30        <uses-library android:name="android.test.runner"/>
31
32        <!-- The JobService schedules all jobs for FederatedCompute using SPE framework. -->
33        <service
34            android:name="com.android.federatedcompute.services.sharedlibrary.spe.FederatedComputeJobService"
35            android:exported="false"
36            android:permission="android.permission.BIND_JOB_SERVICE">
37        </service>
38
39        <service android:name="com.android.federatedcompute.services.training.FederatedJobService"
40                 android:exported="false"
41                 android:permission="android.permission.BIND_JOB_SERVICE">
42        </service>
43        <service
44            android:name="com.android.federatedcompute.services.encryption.BackgroundKeyFetchJobService"
45            android:exported="false"
46            android:permission="android.permission.BIND_JOB_SERVICE">
47        </service>
48        <service
49            android:name="com.android.federatedcompute.services.scheduling.DeleteExpiredJobService"
50            android:exported="false"
51            android:permission="android.permission.BIND_JOB_SERVICE">
52        </service>
53        <service android:name="com.android.federatedcompute.services.training.IsolatedTrainingService"
54                 android:isolatedProcess="true" android:allowSharedIsolatedProcess="true" android:exported="false" >
55        </service>
56        <service
57            android:name="com.android.federatedcompute.services.examplestore.SampleExampleStoreService"
58            android:enabled="true"
59            android:exported="true">
60                 <intent-filter>
61                    <action android:name="android.federatedcompute.EXAMPLE_STORE" />
62                 </intent-filter>
63        </service>
64        <service android:name="com.android.federatedcompute.services.training.SampleResultHandlingService"
65                 android:enabled="true"
66                 android:exported="true">
67                 <intent-filter>
68                    <action android:name="android.federatedcompute.COMPUTATION_RESULT" />
69                 </intent-filter>
70        </service>
71        <service android:name="com.android.federatedcompute.services.training.FederatedIsolatedTrainingService"
72                android:exported="false"
73                android:process=":remote"
74                android:isolatedProcess="true">
75       </service>
76    </application>
77    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
78                     android:targetPackage="com.android.ondevicepersonalization.federatedcomputetests"
79                     android:label="Tests of FederatedComputeManagingService"/>
80</manifest>