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.contacts.tests">
19
20    <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="29" />
21
22    <uses-permission android:name="android.permission.READ_CONTACTS" />
23    <uses-permission android:name="android.permission.READ_CALL_LOG"/>
24    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
25    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
26
27    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
28    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
29    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
30    <uses-permission android:name="android.permission.READ_SYNC_STATS" />
31    <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
32    <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
33
34    <uses-permission android:name="android.permission.READ_PROFILE" />
35    <uses-permission android:name="android.permission.READ_SOCIAL_STREAM" />
36
37    <application
38        android:icon="@mipmap/ic_contacts_launcher"
39        android:label="@string/applicationLabel">
40
41        <uses-library android:name="android.test.runner" />
42        <meta-data android:name="com.android.contacts.iconset" android:resource="@xml/iconset" />
43
44        <activity android:name=".allintents.AllIntentsActivity"
45            android:exported="true">
46            <intent-filter>
47                <action android:name="android.intent.action.MAIN" />
48                <category android:name="android.intent.category.DEFAULT" />
49                <category android:name="android.intent.category.LAUNCHER" />
50            </intent-filter>
51        </activity>
52
53        <activity android:name=".allintents.ResultActivity"
54            android:exported="true">
55            <intent-filter>
56                <action android:name="android.intent.action.VIEW" />
57                <category android:name="android.intent.category.DEFAULT" />
58                <data android:mimeType="vnd.android.cursor.item/vnd.contactstest.profile" />
59            </intent-filter>
60        </activity>
61
62        <activity android:name=".quickcontact.QuickContactTestsActivity"/>
63
64        <!--
65          Test authenticators/sync adapters.
66
67          The idea is to have multiple account types with various edit schemas.  We use subclasses
68          so we could easily add multiple pairs of authenticators and sync adapters.
69          Unfortunately there's an issue with the contacts app which prevents a single apk from
70          having multiple contacts.xml files, so for now we only declare one account type here.
71        -->
72        <service android:name=".testauth.TestAuthenticationService$Basic" android:exported="true">
73            <intent-filter>
74                <action android:name="android.accounts.AccountAuthenticator" />
75            </intent-filter>
76            <meta-data
77                android:name="android.accounts.AccountAuthenticator"
78                android:resource="@xml/test_basic_authenticator" />
79        </service>
80        <service android:name=".testauth.TestSyncService$Basic" android:exported="true" >
81            <intent-filter>
82                <action android:name="android.content.SyncAdapter"/>
83            </intent-filter>
84            <meta-data
85                android:name="android.content.SyncAdapter"
86                android:resource="@xml/test_basic_syncadapter" />
87            <meta-data
88                android:name="android.provider.CONTACTS_STRUCTURE"
89                android:resource="@xml/contacts_contactsdatakind" />
90        </service>
91
92        <service android:name=".QueryService" />
93        <service android:name=".PhoneNumberTestService" />
94    </application>
95
96    <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner"
97        android:targetPackage="com.android.contacts"
98        android:label="Contacts app tests">
99    </instrumentation>
100
101    <instrumentation android:name="com.android.contacts.ContactsLaunchPerformance"
102        android:targetPackage="com.android.contacts"
103        android:label="Contacts launch performance">
104    </instrumentation>
105
106    <instrumentation
107        android:name="com.android.contacts.RunMethodInstrumentation"
108        android:targetPackage="com.android.contacts"
109        android:label="Run Contacts Method">
110    </instrumentation>
111
112</manifest>
113