1<?xml version="1.0" encoding="utf-8"?>
2<!--
3 Copyright (C) 2021 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  This manifest is a copy of AndroidManifest with uses-sdk tag under the same folder,
19  please update this manifest after changing the other AndroidManifest.
20-->
21<manifest
22    xmlns:android="http://schemas.android.com/apk/res/android"
23    xmlns:tools="http://schemas.android.com/tools"
24    package="androidx.car.app.sample.showcase"
25    android:versionCode="1"
26    android:versionName="1.0">
27
28  <uses-sdk
29      android:minSdkVersion="29"
30      android:targetSdkVersion="34" />
31
32  <uses-permission android:name="android.permission.INTERNET"/>
33  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
34  <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
35
36  <!-- For PlaceListMapTemplate -->
37  <uses-permission android:name="androidx.car.app.MAP_TEMPLATES"/>
38
39  <!-- For the navigation demos. -->
40  <uses-permission android:name="androidx.car.app.NAVIGATION_TEMPLATES"/>
41  <uses-permission android:name="androidx.car.app.ACCESS_SURFACE"/>
42
43  <!-- For the Microphone Recording demos. -->
44  <uses-permission android:name="android.permission.RECORD_AUDIO"/>
45
46  <!-- SDK 33 onwards, apps require this permission to send any notifications to the system -->
47  <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
48
49  <!-- For Access to Car Hardware. -->
50  <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
51  <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
52  <uses-permission android:name="android.car.permission.CAR_MILEAGE"/>
53  <uses-permission android:name="android.car.permission.CAR_SPEED"/>
54  <uses-permission android:name="android.car.permission.CAR_INFO"/>
55  <uses-permission android:name="android.car.permission.CAR_ENERGY"/>
56  <uses-permission android:name="android.car.permission.READ_CAR_DISPLAY_UNITS"/>
57  <uses-permission android:name="android.car.permission.CAR_ENERGY_PORTS"/>
58
59  <!-- Various required feature settings for an automotive app. -->
60  <uses-feature
61      android:name="android.hardware.type.automotive"
62      android:required="true" />
63  <uses-feature
64      android:name="android.software.car.templates_host"
65      android:required="true" />
66  <uses-feature
67      android:name="android.hardware.wifi"
68      android:required="false" />
69  <uses-feature
70      android:name="android.hardware.screen.portrait"
71      android:required="false" />
72  <uses-feature
73      android:name="android.hardware.screen.landscape"
74      android:required="false" />
75
76  <application
77      android:label="@string/app_name"
78      android:icon="@drawable/ic_launcher">
79
80    <meta-data
81        android:name="com.android.automotive"
82        android:resource="@xml/automotive_app_desc"
83        tools:ignore="MetadataTagInsideApplicationTag" />
84
85    <meta-data
86        android:name="androidx.car.app.theme"
87        android:resource="@style/CarAppTheme"
88        tools:ignore="MetadataTagInsideApplicationTag" />
89
90    <meta-data android:name="androidx.car.app.minCarApiLevel"
91        android:value="1"
92        tools:ignore="MetadataTagInsideApplicationTag" />
93
94    <service
95        android:name="androidx.car.app.sample.showcase.common.ShowcaseService"
96        android:exported="true">
97      <intent-filter>
98        <action android:name="androidx.car.app.CarAppService"/>
99        <category android:name="androidx.car.app.category.NAVIGATION"/>
100      </intent-filter>
101    </service>
102
103    <service
104        android:name=".common.screens.navigationdemos.NavigationNotificationService"
105        android:exported="true">
106    </service>
107
108    <provider
109        android:name=".common.screens.templatelayouts.listtemplates.DelayedFileProvider"
110        android:authorities="com.showcase.fileprovider"
111        android:exported="false"
112        android:grantUriPermissions="true">
113      <meta-data
114          android:name="android.support.FILE_PROVIDER_PATHS"
115          android:resource="@xml/file_provider_paths"/>
116    </provider>
117
118    <activity
119        android:name="androidx.car.app.activity.CarAppActivity"
120        android:configChanges="uiMode"
121        android:theme="@android:style/Theme.DeviceDefault.NoActionBar"
122        android:exported="true"
123        android:launchMode="singleTask"
124        android:label="Showcase">
125      <intent-filter>
126        <action android:name="android.intent.action.MAIN" />
127        <category android:name="android.intent.category.LAUNCHER" />
128      </intent-filter>
129      <intent-filter>
130        <action android:name="androidx.car.app.action.NAVIGATE" />
131        <category android:name="android.intent.category.DEFAULT"/>
132        <data android:scheme="geo" />
133      </intent-filter>
134      <meta-data android:name="distractionOptimized" android:value="true"/>
135    </activity>
136
137    <activity
138        android:name="androidx.car.app.sample.showcase.automotive.DebugActivity"
139        android:theme="@android:style/Theme.DeviceDefault.NoActionBar"
140        android:exported="true"
141        android:launchMode="singleTask"
142        android:label="Showcase - Debug">
143      <intent-filter>
144        <action android:name="android.intent.action.MAIN" />
145        <category android:name="android.intent.category.LAUNCHER" />
146      </intent-filter>
147    </activity>
148
149  </application>
150</manifest>
151