• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3 * Copyright (C) 2017 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="android.autofillservice.cts"
20     android:targetSandboxVersion="2">
21
22    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
23    <uses-permission android:name="android.permission.INJECT_EVENTS"/>
24    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
25    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/>
26    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
27    <!--  Some tests use sticky broadcasts to ensure that inline suggestion extras
28    are delivered to the IME even when its process is not running persistently.
29    This can happen when the IME is unbound as a result of enabling
30    the config_preventImeStartupUnlessTextEditor option. -->
31    <uses-permission android:name="android.permission.BROADCAST_STICKY"/>
32
33    <application>
34
35        <uses-library android:name="android.test.runner"/>
36
37        <activity android:name=".activities.LoginActivity"
38             android:exported="true">
39            <intent-filter>
40                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
41                                         this app during CTS development... -->
42                <action android:name="android.intent.action.MAIN"/>
43                <category android:name="android.intent.category.LAUNCHER"/>
44            </intent-filter>
45        </activity>
46        <activity android:name=".activities.PreFilledLoginActivity"/>
47        <activity android:name=".activities.LoginWithCustomHighlightActivity"
48             android:theme="@style/MyAutofilledHighlight"/>
49        <activity android:name=".activities.LoginWithStringsActivity"/>
50        <activity android:name=".activities.LoginNotImportantForAutofillActivity"/>
51        <activity android:name=".activities.LoginNotImportantForAutofillWrappedActivityContextActivity"/>
52        <activity android:name=".activities.LoginNotImportantForAutofillWrappedApplicationContextActivity"/>
53        <activity android:name=".activities.WelcomeActivity"
54             android:taskAffinity=".WelcomeActivity"/>
55        <activity android:name=".activities.ViewActionActivity"
56             android:taskAffinity=".ViewActionActivity"
57             android:launchMode="singleTask"
58             android:exported="true">
59            <intent-filter>
60                <action android:name="android.intent.action.VIEW"/>
61                <data android:scheme="autofillcts"/>
62                <category android:name="android.intent.category.DEFAULT"/>
63            </intent-filter>
64        </activity>
65        <activity android:name=".activities.SecondActivity"
66             android:taskAffinity=".SecondActivity"/>
67        <activity android:name=".activities.ViewAttributesTestActivity"/>
68        <activity android:name=".activities.AuthenticationActivity"/>
69        <activity android:name=".activities.ManualAuthenticationActivity"/>
70        <activity android:name=".activities.CheckoutActivity"
71             android:taskAffinity=".CheckoutActivity"/>
72        <activity android:name=".activities.InitializedCheckoutActivity"/>
73        <activity android:name=".activities.DatePickerCalendarActivity"/>
74        <activity android:name=".activities.DatePickerSpinnerActivity"/>
75        <activity android:name=".activities.TimePickerClockActivity"/>
76        <activity android:name=".activities.TimePickerSpinnerActivity"/>
77        <activity android:name=".activities.FatActivity"/>
78        <activity android:name=".activities.VirtualContainerActivity"
79             android:exported="true">
80            <intent-filter>
81                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
82                                         this app during CTS development... -->
83                <action android:name="android.intent.action.MAIN"/>
84                <category android:name="android.intent.category.LAUNCHER"/>
85            </intent-filter>
86        </activity>
87        <activity android:name=".activities.OptionalSaveActivity"/>
88        <activity android:name=".activities.GridActivity"/>
89        <activity android:name=".activities.EmptyActivity"/>
90        <activity android:name=".activities.DummyActivity"/>
91        <activity android:name=".activities.OutOfProcessLoginActivity"
92             android:process="android.autofillservice.cts.outside"/>
93        <activity android:name=".activities.FragmentContainerActivity"/>
94        <activity android:name=".activities.DuplicateIdActivity"
95             android:theme="@android:style/Theme.NoTitleBar"/>
96        <activity android:name=".activities.SimpleSaveActivity"/>
97        <activity android:name=".activities.PreSimpleSaveActivity"
98             android:exported="true">
99            <intent-filter>
100                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
101                                         this app during CTS development... -->
102                <action android:name="android.intent.action.MAIN"/>
103                <category android:name="android.intent.category.LAUNCHER"/>
104            </intent-filter>
105        </activity>
106        <activity android:name=".activities.WebViewActivity"/>
107        <activity android:name=".activities.WebViewMultiScreenLoginActivity"/>
108        <activity android:name=".activities.TrampolineWelcomeActivity"/>
109        <activity android:name=".activities.AttachedContextActivity"/>
110        <activity android:name=".activities.DialogLauncherActivity"
111             android:exported="true">
112            <intent-filter>
113                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
114                                         this app during CTS development... -->
115                <action android:name="android.intent.action.MAIN"/>
116                <category android:name="android.intent.category.LAUNCHER"/>
117            </intent-filter>
118        </activity>
119        <activity android:name=".activities.MultiWindowLoginActivity"
120             android:resizeableActivity="true"
121             android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout"/>
122        <activity android:name=".activities.MultiWindowEmptyActivity"
123             android:resizeableActivity="true"
124             android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout"
125             android:taskAffinity="nobody.but.EmptyActivity"
126             android:exported="true"/>
127
128        <activity android:name=".activities.TrampolineForResultActivity"/>
129        <activity android:name=".activities.OnCreateServiceStatusVerifierActivity"/>
130        <activity android:name=".activities.UsernameOnlyActivity"
131             android:exported="true">
132            <intent-filter>
133                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
134                                         this app during CTS development... -->
135                <action android:name="android.intent.action.MAIN"/>
136                <category android:name="android.intent.category.LAUNCHER"/>
137            </intent-filter>
138        </activity>
139        <activity android:name=".activities.PasswordOnlyActivity"
140             android:exported="true">
141            <intent-filter>
142                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
143                                         this app during CTS development... -->
144                <action android:name="android.intent.action.MAIN"/>
145                <category android:name="android.intent.category.LAUNCHER"/>
146            </intent-filter>
147        </activity>
148        <activity android:name=".activities.AugmentedLoginActivity"
149             android:exported="true">
150            <intent-filter>
151                <!-- This intent filter is not really needed by CTS, but it makes easier to launch
152                                         this app during CTS development... -->
153                <action android:name="android.intent.action.MAIN"/>
154                <category android:name="android.intent.category.LAUNCHER"/>
155            </intent-filter>
156        </activity>
157        <activity android:name=".activities.FadeInActivity"/>
158        <activity android:name=".activities.MultipleStepsSignInActivity"/>
159        <activity android:name=".activities.FieldsNoPasswordActivity"/>
160        <activity android:name=".activities.AugmentedAuthActivity" />
161        <activity android:name=".activities.SimpleAfterLoginActivity"/>
162        <activity android:name=".activities.SimpleBeforeLoginActivity"/>
163        <activity android:name=".activities.NonAutofillableActivity"/>
164
165        <receiver android:name=".testcore.SelfDestructReceiver"
166             android:exported="true"
167             android:process="android.autofillservice.cts.outside"/>
168        <receiver android:name=".testcore.OutOfProcessLoginActivityFinisherReceiver"
169             android:exported="true"
170             android:process="android.autofillservice.cts.outside"/>
171
172        <service android:name=".testcore.InstrumentedAutoFillService"
173             android:label="InstrumentedAutoFillService"
174             android:permission="android.permission.BIND_AUTOFILL_SERVICE"
175             android:exported="true">
176            <intent-filter>
177                <action android:name="android.service.autofill.AutofillService"/>
178            </intent-filter>
179        </service>
180        <service android:name=".testcore.InstrumentedAutoFillServiceCompatMode"
181             android:label="testcore.InstrumentedAutoFillServiceCompatMode"
182             android:permission="android.permission.BIND_AUTOFILL_SERVICE"
183             android:exported="true">
184            <intent-filter>
185                <action android:name="android.service.autofill.AutofillService"/>
186            </intent-filter>
187            <meta-data android:name="android.autofill"
188                 android:resource="@xml/autofill_service_compat_mode_config">
189            </meta-data>
190        </service>
191        <service android:name=".testcore.InstrumentedAutoFillServiceInlineEnabled"
192             android:label="InstrumentedAutoFillServiceInlineEnabled"
193             android:permission="android.permission.BIND_AUTOFILL_SERVICE"
194             android:exported="true">
195            <intent-filter>
196                <action android:name="android.service.autofill.AutofillService"/>
197            </intent-filter>
198            <meta-data android:name="android.autofill"
199                 android:resource="@xml/autofill_service_inline_enabled">
200            </meta-data>
201        </service>
202        <service android:name=".testcore.NoOpAutofillService"
203             android:label="NoOpAutofillService"
204             android:permission="android.permission.BIND_AUTOFILL_SERVICE"
205             android:exported="true">
206            <intent-filter>
207                <action android:name="android.service.autofill.AutofillService"/>
208            </intent-filter>
209        </service>
210        <!--  BadAutofillService does not declare the proper permission -->
211        <service android:name=".testcore.BadAutofillService"
212             android:label="testcore.BadAutofillService"
213             android:exported="true">
214            <intent-filter>
215                <action android:name="android.service.autofill.AutofillService"/>
216            </intent-filter>
217        </service>
218
219        <service android:name=".testcore.CtsAugmentedAutofillService"
220             android:label="CtsAugmentedAutofillService"
221             android:permission="android.permission.BIND_AUGMENTED_AUTOFILL_SERVICE"
222             android:exported="true">
223            <intent-filter>
224                <action android:name="android.service.autofill.AutofillService"/>
225            </intent-filter>
226        </service>
227
228    </application>
229
230    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
231         android:label="CTS tests for the AutoFill Framework APIs."
232         android:targetPackage="android.autofillservice.cts">
233    </instrumentation>
234
235</manifest>
236