1<?xml version="1.0" encoding="utf-8"?>
2
3<manifest xmlns:android="http://schemas.android.com/apk/res/android"
4     package="com.android.car.frameworkpackagestubs"
5     android:versionCode="1"
6     android:versionName="1.0.1">
7
8    <uses-sdk android:minSdkVersion="28"/>
9
10    <application android:label="@string/app_name"
11         android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen">
12
13        <!-- Dialer stubs -->
14        <activity android:name=".Stubs$DialerStub"
15             android:label="@string/stub_name"
16             android:excludeFromRecents="true"
17             android:exported="true">
18            <intent-filter android:priority="-1">
19                <action android:name="android.intent.action.DIAL"/>
20                <category android:name="android.intent.category.DEFAULT"/>
21                <data android:scheme="voicemail"/>
22            </intent-filter>
23        </activity>
24
25        <!-- Music / media stubs. -->
26        <activity android:name=".Stubs$MediaStub"
27             android:label="@string/stub_name"
28             android:excludeFromRecents="true"
29             android:exported="true">
30            <intent-filter android:priority="-1">
31                <action android:name="android.intent.action.VIEW"/>
32                <category android:name="android.intent.category.DEFAULT"/>
33                <data android:scheme="file"/>
34                <data android:mimeType="audio/*"/>
35                <data android:mimeType="application/ogg"/>
36                <data android:mimeType="application/x-ogg"/>
37            </intent-filter>
38            <intent-filter android:priority="-1">
39                <action android:name="android.intent.action.VIEW"/>
40                <category android:name="android.intent.category.DEFAULT"/>
41                <category android:name="android.intent.category.BROWSABLE"/>
42                <data android:scheme="http"/>
43                <data android:mimeType="audio/*"/>
44                <data android:mimeType="application/ogg"/>
45                <data android:mimeType="application/x-ogg"/>
46            </intent-filter>
47            <intent-filter android:priority="-1">
48                <action android:name="android.intent.action.VIEW"/>
49                <category android:name="android.intent.category.DEFAULT"/>
50                <category android:name="android.intent.category.BROWSABLE"/>
51                <data android:scheme="content"/>
52                <data android:mimeType="audio/*"/>
53                <data android:mimeType="application/ogg"/>
54                <data android:mimeType="application/x-ogg"/>
55            </intent-filter>
56            <intent-filter android:priority="-1">
57                <action android:name="android.intent.action.PICK"/>
58                <category android:name="android.intent.category.DEFAULT"/>
59                <data android:mimeType="vnd.android.cursor.dir/audio"/>
60            </intent-filter>
61            <intent-filter android:priority="-1">
62                <action android:name="android.intent.action.VIEW"/>
63                <category android:name="android.intent.category.DEFAULT"/>
64                <category android:name="android.intent.category.BROWSABLE"/>
65                <data android:scheme=""/>
66                <data android:scheme="http"/>
67                <data android:scheme="https"/>
68                <data android:scheme="content"/>
69                <data android:scheme="file"/>
70                <data android:mimeType="video/*"/>
71                <data android:mimeType="image/*"/>
72            </intent-filter>
73            <intent-filter android:priority="-1">
74                <action android:name="android.intent.action.PICK"/>
75                <action android:name="android.intent.action.VIEW"/>
76                <category android:name="android.intent.category.DEFAULT"/>
77                <data android:mimeType="vnd.android.cursor.dir/image"/>
78            </intent-filter>
79            <intent-filter android:priority="-1">
80                <action android:name="android.intent.action.PICK"/>
81                <action android:name="android.intent.action.VIEW"/>
82                <category android:name="android.intent.category.DEFAULT"/>
83                <data android:mimeType="vnd.android.cursor.dir/video"/>
84            </intent-filter>
85        </activity>
86
87        <!-- Settings package stubs -->
88        <activity android:name=".Stubs$SettingsStub"
89             android:label="@string/stub_name"
90             android:excludeFromRecents="true"
91             android:exported="true">
92            <intent-filter android:priority="-1">
93                <action android:name="android.settings.ACCESSIBILITY_SETTINGS"/>
94                <category android:name="android.intent.category.DEFAULT"/>
95            </intent-filter>
96            <intent-filter android:priority="-1">
97                <action android:name="android.settings.LOCATION_SCANNING_SETTINGS"/>
98                <category android:name="android.intent.category.DEFAULT"/>
99            </intent-filter>
100            <intent-filter android:priority="-1">
101                <action android:name="android.settings.PROCESS_WIFI_EASY_CONNECT_URI"/>
102                <category android:name="android.intent.category.DEFAULT"/>
103                <data android:scheme="DPP"/>
104            </intent-filter>
105            <intent-filter android:priority="-1">
106                <action android:name="android.settings.USER_DICTIONARY_SETTINGS"/>
107                <category android:name="android.intent.category.DEFAULT"/>
108            </intent-filter>
109        </activity>
110
111        <!-- These disable the Settings UI to enable a trusted external source
112             to install unknown apks. Set android:priority="101" to avoid other
113             apps to take the priority, nor conflicting with Settings' 1 -->
114        <activity android:name=".Stubs$ManageExternalSourcesActivityStub"
115            android:label="@string/stub_name"
116            android:excludeFromRecents="true"
117            android:exported="true">
118            <!-- ManageExternalSourcesActivity stub -->
119            <intent-filter android:priority="101">
120                <action android:name="android.settings.MANAGE_UNKNOWN_APP_SOURCES"/>
121                <category android:name="android.intent.category.DEFAULT"/>
122            </intent-filter>
123            <!-- ManageAppExternalSourcesActivity stub when a package is specified -->
124            <intent-filter android:priority="101">
125                <action android:name="android.settings.MANAGE_UNKNOWN_APP_SOURCES"/>
126                <category android:name="android.intent.category.DEFAULT"/>
127                <data android:scheme="package" />
128            </intent-filter>
129        </activity>
130
131        <!-- CDD Core Application Intents Stubs -->
132        <!-- Desk Clock -->
133        <activity android:name=".Stubs$DeskClockStub"
134             android:label="@string/stub_name"
135             android:excludeFromRecents="true"
136             android:exported="true">
137            <intent-filter android:priority="-1">
138                <action android:name="android.intent.action.SET_ALARM"/>
139                <category android:name="android.intent.category.DEFAULT"/>
140            </intent-filter>
141            <intent-filter android:priority="-1">
142                <action android:name="android.intent.action.SET_TIMER"/>
143                <category android:name="android.intent.category.DEFAULT"/>
144            </intent-filter>
145            <intent-filter android:priority="-1">
146                <action android:name="android.intent.action.SHOW_ALARMS"/>
147                <category android:name="android.intent.category.DEFAULT"/>
148            </intent-filter>
149            <intent-filter android:priority="-1">
150                <action android:name="android.intent.action.DISMISS_ALARM"/>
151                <category android:name="android.intent.category.DEFAULT"/>
152            </intent-filter>
153            <intent-filter android:priority="-1">
154                <action android:name="android.intent.action.SHOW_TIMERS"/>
155                <category android:name="android.intent.category.DEFAULT"/>
156            </intent-filter>
157            <intent-filter android:priority="-1">
158                <action android:name="android.intent.action.SNOOZE_ALARM"/>
159                <category android:name="android.intent.category.DEFAULT"/>
160            </intent-filter>
161        </activity>
162
163        <!-- Calendar -->
164        <activity android:name=".Stubs$CalendarStub"
165             android:label="@string/stub_name"
166             android:excludeFromRecents="true"
167             android:exported="true">
168            <intent-filter android:priority="-1">
169                <action android:name="android.intent.action.EDIT"/>
170                <category android:name="android.intent.category.DEFAULT"/>
171                <data android:mimeType="vnd.android.cursor.item/event"/>
172            </intent-filter>
173        </activity>
174
175        <!-- Browser -->
176        <activity android:name=".Stubs$BrowserStub"
177             android:label="@string/stub_name"
178             android:excludeFromRecents="true"
179             android:exported="true">
180            <intent-filter android:priority="-1">
181                <action android:name="android.intent.action.WEB_SEARCH"/>
182                <category android:name="android.intent.category.DEFAULT"/>
183            </intent-filter>
184        </activity>
185
186        <!-- Ignore Background Data Restriction Setting -->
187        <activity android:name=".Stubs$IgnoreBackgroundDataRestrictionsSettingsStub"
188             android:label="@string/stub_name"
189             android:excludeFromRecents="true"
190             android:exported="true">
191            <intent-filter android:priority="-1">
192                <action android:name="android.settings.IGNORE_BACKGROUND_DATA_RESTRICTIONS_SETTINGS"/>
193                <category android:name="android.intent.category.DEFAULT"/>
194                <data android:scheme="package"/>
195            </intent-filter>
196        </activity>
197
198        <!-- Ignore Battery Optimization Setting -->
199        <activity android:name=".Stubs$IgnoreBatteryOptimizationSettingsStub"
200             android:label="@string/stub_name"
201             android:excludeFromRecents="true"
202             android:exported="true">
203            <intent-filter android:priority="-1">
204                <action android:name="android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS"/>
205                <category android:name="android.intent.category.DEFAULT"/>
206            </intent-filter>
207        </activity>
208
209        <!-- Request Ignore Battery Optimization Setting -->
210        <activity android:name=".Stubs$RequestIgnoreBatteryOptimizationsStub"
211             android:label="@string/stub_name"
212             android:excludeFromRecents="true"
213             android:exported="true">
214            <intent-filter android:priority="-1">
215                <action android:name="android.settings.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>
216                <category android:name="android.intent.category.DEFAULT"/>
217                <data android:scheme="package"/>
218            </intent-filter>
219        </activity>
220
221        <!-- WebView Setting -->
222        <activity android:name=".Stubs$WebViewSettingsStub"
223             android:label="@string/stub_name"
224             android:excludeFromRecents="true"
225             android:exported="true">
226            <intent-filter android:priority="-1">
227                <action android:name="android.settings.WEBVIEW_SETTINGS"/>
228                <category android:name="android.intent.category.DEFAULT"/>
229            </intent-filter>
230        </activity>
231
232        <!-- Picture in picture settings stub -->
233        <activity android:name=".Stubs$PictureInPictureSettingsStub"
234                  android:label="@string/stub_name"
235                  android:excludeFromRecents="true"
236                  android:exported="true">
237            <intent-filter android:priority="-1">
238                <action android:name="android.settings.PICTURE_IN_PICTURE_SETTINGS" />
239                <category android:name="android.intent.category.DEFAULT" />
240            </intent-filter>
241        </activity>
242
243        <!-- Dream settings stub -->
244        <activity android:name=".Stubs$DreamSettingsStub"
245            android:label="@string/stub_name"
246            android:excludeFromRecents="true"
247            android:exported="true">
248            <intent-filter android:priority="-1">
249                <action android:name="android.settings.DREAM_SETTINGS" />
250                <category android:name="android.intent.category.DEFAULT" />
251            </intent-filter>
252        </activity>
253
254        <!-- Contacts package stubs -->
255        <activity
256            android:name=".Stubs$ContactsStub"
257            android:label="@string/stub_name"
258            android:excludeFromRecents="true"
259            android:exported="true"
260            android:visibleToInstantApps="true">
261            <intent-filter android:priority="-1">
262                <action android:name="android.intent.action.VIEW" />
263                <category android:name="android.intent.category.DEFAULT" />
264                <data android:mimeType="vnd.android.cursor.dir/contact"/>
265            </intent-filter>
266
267            <intent-filter android:priority="-1">
268                <action android:name="android.intent.action.GET_CONTENT" />
269                <category android:name="android.intent.category.DEFAULT" />
270                <data android:mimeType="vnd.android.cursor.dir/contact"/>
271            </intent-filter>
272
273            <intent-filter android:priority="-1">
274                <action android:name="android.intent.action.PICK" />
275                <category android:name="android.intent.category.DEFAULT" />
276                <data android:mimeType="vnd.android.cursor.dir/contact"/>
277            </intent-filter>
278        </activity>
279
280    </application>
281</manifest>
282