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