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