1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2016 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 for the privileged CTS shim -->
18<manifest xmlns:android="http://schemas.android.com/apk/res/android"
19    xmlns:tools="http://schemas.android.com/tools"
20    package="com.android.cts.priv.ctsshim" >
21
22    <uses-sdk android:minSdkVersion="24"
23        android:targetSdkVersion="28" />
24
25    <restrict-update
26        android:hash="__HASH__" />
27
28    <application
29        android:hasCode="false"
30        android:multiArch="true"
31        tools:ignore="AllowBackup,MissingApplicationIcon" >
32
33        <!-- These activities don't actually exist; define them just to test the filters !-->
34
35        <!-- install test; [some] high priority filters granted -->
36        <activity android:name=".InstallPriority"
37            android:exported="true">
38            <!-- normal actions; priority will be granted -->
39            <intent-filter android:priority="100">
40                <action android:name="android.intent.action.SEARCH" />
41                <category android:name="android.intent.category.INFO" />
42            </intent-filter>
43
44            <!-- protected actions; priority will be denied -->
45            <intent-filter android:priority="100">
46                <action android:name="android.intent.action.VIEW" />
47                <category android:name="android.intent.category.BROWSABLE" />
48            </intent-filter>
49            <intent-filter android:priority="100">
50                <action android:name="android.intent.action.SEND" />
51            </intent-filter>
52            <intent-filter android:priority="100">
53                <action android:name="android.intent.action.SEND_MULTIPLE" />
54            </intent-filter>
55            <intent-filter android:priority="100">
56                <action android:name="android.intent.action.SENDTO" />
57            </intent-filter>
58        </activity>
59
60        <!-- upgrade test; single, equivalent filter -->
61        <activity android:name=".UpgradeMatch"
62            android:exported="true">
63            <intent-filter android:priority="100">
64                <action android:name="com.android.cts.action.MATCH" />
65                <category android:name="android.intent.category.INFO" />
66            </intent-filter>
67        </activity>
68
69        <!-- upgrade test; multiple, equivalent filters -->
70        <activity android:name=".UpgradeMatchMultiple"
71            android:exported="true">
72            <intent-filter android:priority="100">
73                <action android:name="com.android.cts.action.MATCH_MULTIPLE" />
74                <category android:name="android.intent.category.INFO" />
75            </intent-filter>
76
77            <intent-filter android:priority="150">
78                <action android:name="com.android.cts.action.MATCH_MULTIPLE" />
79                <category android:name="android.intent.category.DEFAULT" />
80                <data android:scheme="http" />
81                <data android:scheme="https" />
82                <data android:host="www.google.com" android:port="80" />
83                <data android:host="www.google.com" android:port="8080" />
84                <data android:host="goo.gl" android:port="443" />
85            </intent-filter>
86        </activity>
87
88        <!-- upgrade test; lower priority -->
89        <activity android:name=".UpgradeLowerPriority"
90            android:exported="true">
91            <intent-filter android:priority="100">
92                <action android:name="com.android.cts.action.LOWER_PRIORITY" />
93                <category android:name="android.intent.category.INFO" />
94            </intent-filter>
95        </activity>
96
97        <!-- upgrade test; action subset -->
98        <activity android:name=".UpgradeActionSubset"
99            android:exported="true">
100            <intent-filter android:priority="100">
101                <action android:name="com.android.cts.action.ACTION_SUB" />
102                <action android:name="com.android.cts.action.ACTION_SUB_2" />
103                <action android:name="com.android.cts.action.ACTION_SUB_3" />
104                <category android:name="android.intent.category.DEFAULT" />
105            </intent-filter>
106        </activity>
107
108        <!-- upgrade test; category subset -->
109        <activity android:name=".UpgradeCategorySubset"
110            android:exported="true">
111            <intent-filter android:priority="100">
112                <action android:name="com.android.cts.action.CATEGORY_SUB" />
113                <category android:name="android.intent.category.INFO" />
114                <category android:name="android.intent.category.DEFAULT" />
115            </intent-filter>
116        </activity>
117
118        <!-- upgrade test; scheme subset -->
119        <activity android:name=".UpgradeSchemeSubset"
120            android:exported="true">
121            <intent-filter android:priority="100">
122                <action android:name="com.android.cts.action.SCHEME_SUB" />
123                <data android:scheme="content" />
124                <data android:scheme="flubber" />
125                <data android:scheme="zoodle" />
126            </intent-filter>
127        </activity>
128
129        <!-- upgrade test; authority subset -->
130        <activity android:name=".UpgradeAuthoritySubset"
131            android:exported="true">
132            <intent-filter android:priority="100">
133                <action android:name="com.android.cts.action.AUTHORITY_SUB" />
134                <data android:host="www.google.com" android:port="80" />
135                <data android:host="www.google.com" android:port="8080" />
136                <data android:host="mail.google.com" android:port="80" />
137                <data android:host="goo.gl" android:port="443" />
138            </intent-filter>
139        </activity>
140
141
142        <!-- upgrade test; new action -->
143        <activity android:name=".UpgradeNewAction"
144            android:exported="true">
145            <intent-filter android:priority="100">
146                <action android:name="com.android.cts.action.NEW_ACTION" />
147                <category android:name="android.intent.category.DEFAULT" />
148            </intent-filter>
149        </activity>
150
151        <!-- upgrade test; new category -->
152        <activity android:name=".UpgradeNewCategory"
153            android:exported="true">
154            <intent-filter android:priority="100">
155                <action android:name="com.android.cts.action.NEW_CATEGORY" />
156                <category android:name="android.intent.category.DEFAULT" />
157            </intent-filter>
158        </activity>
159
160        <!-- upgrade test; new scheme -->
161        <activity android:name=".UpgradeNewScheme"
162            android:exported="true">
163            <intent-filter android:priority="100">
164                <action android:name="com.android.cts.action.NEW_SCHEME" />
165                <data android:scheme="content" />
166            </intent-filter>
167        </activity>
168
169        <!-- upgrade test; new authority -->
170        <activity android:name=".UpgradeNewAuthority"
171            android:exported="true">
172            <intent-filter android:priority="100">
173                <action android:name="com.android.cts.action.NEW_AUTHORITY" />
174                <data android:host="www.google.com" android:port="80" />
175            </intent-filter>
176        </activity>
177
178    </application>
179</manifest>
180
181