1<?xml version="1.0" encoding="utf-8"?> 2<!-- Copyright (C) 2015 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 xmlns:android="http://schemas.android.com/apk/res/android" 18 xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" 19 package="android.car.apitest" 20 android:debuggable="true"> 21 22 <uses-sdk android:minSdkVersion="33"/> 23 <uses-permission android:name="android.car.permission.ACCESS_CAR_PROJECTION_STATUS"/> 24 <uses-permission android:name="android.car.permission.CAR_CAMERA"/> 25 <uses-permission android:name="android.car.permission.CAR_CONTROL_AUDIO_SETTINGS"/> 26 <uses-permission android:name="android.car.permission.CAR_CONTROL_AUDIO_VOLUME"/> 27 <uses-permission android:name="android.car.permission.CAR_DIAGNOSTICS"/> 28 <uses-permission android:name="android.car.permission.CAR_DISPLAY_IN_CLUSTER"/> 29 <!-- use for display mirroring in kitchen sink --> 30 <uses-permission android:name="android.permission.READ_FRAME_BUFFER" /> 31 <!-- use for CarServiceTest --> 32 <uses-permission android:name="android.car.permission.CAR_DRIVING_STATE"/> 33 <uses-permission android:name="android.car.permission.CAR_ENERGY"/> 34 <uses-permission android:name="android.car.permission.CAR_MONITOR_CLUSTER_NAVIGATION_STATE"/> 35 <!-- use for AndroidCarApiTest --> 36 <uses-permission android:name="android.car.permission.CAR_INFO"/> 37 <!-- use for AndroidCarApiTest --> 38 <uses-permission android:name="android.car.permission.CAR_PROJECTION"/> 39 <uses-permission android:name="android.car.permission.CAR_INSTRUMENT_CLUSTER_CONTROL"/> 40 <uses-permission android:name="android.car.permission.CAR_MILEAGE"/> 41 <uses-permission android:name="android.car.permission.CAR_MOCK_VEHICLE_HAL"/> 42 <uses-permission android:name="android.car.permission.CAR_NAVIGATION_MANAGER"/> 43 <!-- use for CarServiceTest --> 44 <uses-permission android:name="android.car.permission.CAR_EXTERIOR_ENVIRONMENT"/> 45 <uses-permission android:name="android.car.permission.CAR_POWER"/> 46 <!-- use for CarServiceTest --> 47 <uses-permission android:name="android.car.permission.CAR_POWERTRAIN"/> 48 <uses-permission android:name="android.car.permission.CAR_SPEED"/> 49 <!-- use for CarServiceTest --> 50 <uses-permission android:name="android.car.permission.CAR_TEST_SERVICE"/> 51 <!-- use for CarServiceTest --> 52 <uses-permission android:name="android.car.permission.CAR_VENDOR_EXTENSION"/> 53 <!-- use for CarServiceTest --> 54 <uses-permission android:name="android.car.permission.CAR_UX_RESTRICTIONS_CONFIGURATION"/> 55 <!-- use for AndroidCarApiTest --> 56 <uses-permission android:name="android.car.permission.CONTROL_CAR_APP_LAUNCH"/> 57 <uses-permission android:name="android.car.permission.CONTROL_CAR_CLIMATE"/> 58 <uses-permission android:name="android.car.permission.READ_CAR_STEERING"/> 59 <uses-permission android:name="android.car.permission.STORAGE_MONITORING"/> 60 <uses-permission android:name="android.car.permission.CAR_DYNAMICS_STATE"/> 61 <uses-permission android:name="android.car.permission.CONTROL_APP_BLOCKING"/> 62 <!-- use for CarServiceTest --> 63 <uses-permission android:name="android.car.permission.USE_CAR_TELEMETRY_SERVICE"/> 64 <!-- Allow querying and writing to any property --> 65 <uses-permission android:name="android.car.permission.CAR_ENERGY_PORTS" /> 66 <uses-permission android:name="android.car.permission.PERMISSION_CONTROL_ENERGY_PORTS" /> 67 <uses-permission android:name="android.car.permission.CAR_EXTERIOR_LIGHTS" /> 68 <uses-permission android:name="android.car.permission.CAR_TIRES" /> 69 <uses-permission android:name="android.car.permission.CONTROL_CAR_DOORS" /> 70 <uses-permission android:name="android.car.permission.CONTROL_CAR_EXTERIOR_LIGHTS" /> 71 <uses-permission android:name="android.car.permission.CONTROL_CAR_MIRRORS" /> 72 <uses-permission android:name="android.car.permission.CONTROL_CAR_SEATS" /> 73 <uses-permission android:name="android.car.permission.CONTROL_CAR_WINDOWS" /> 74 <uses-permission android:name="android.car.permission.READ_CAR_DISPLAY_UNITS" /> 75 <uses-permission android:name="android.car.permission.CAR_IDENTIFICATION" /> 76 <uses-permission android:name="android.car.permission.PERMISSION_ADJUST_RANGE_REMAINING" /> 77 <uses-permission android:name="android.car.permission.PERMISSION_CAR_ENGINE_DETAILED" /> 78 <!-- use for CarServiceTest --> 79 <uses-permission android:name="android.car.permission.VMS_PUBLISHER"/> 80 <!-- use for CarServiceTest --> 81 <uses-permission android:name="android.car.permission.VMS_SUBSCRIBER"/> 82 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> 83 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 84 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 85 <uses-permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"/> 86 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> 87 <uses-permission android:name="android.permission.ACTIVITY_EMBEDDING"/> 88 <uses-permission android:name="android.permission.BACKUP"/> 89 <uses-permission android:name="android.permission.BLUETOOTH"/> 90 <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 91 <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE"/> 92 <uses-permission android:name="android.permission.BLUETOOTH_CONNECT"/> 93 <uses-permission android:name="android.permission.BLUETOOTH_SCAN"/> 94 <uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"/> 95 <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/> 96 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/> 97 <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS"/> 98 <uses-permission android:name="android.permission.LOCATION_BYPASS" /> 99 <!-- Use for sensor access in Sensors fragment. --> 100 <uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS"/> 101 <uses-permission android:name="android.permission.INJECT_EVENTS"/> 102 <!-- use for CarServiceUnitTest and CarServiceTest --> 103 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"/> 104 <!-- use for CarServiceUnitTest --> 105 <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/> 106 <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"/> 107 <uses-permission android:name="android.permission.LOCATION_HARDWARE"/> 108 <uses-permission android:name="android.permission.MANAGE_USB"/> 109 <uses-permission android:name="android.permission.MANAGE_USERS"/> 110 <!-- use for CarServiceTest --> 111 <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL"/> 112 <uses-permission android:name="android.permission.MODIFY_AUDIO_ROUTING"/> 113 <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/> 114 <uses-permission android:name="android.permission.RECORD_AUDIO" /> 115 <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"/> 116 <uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"/> 117 <uses-permission android:name="android.permission.MODIFY_PHONE_STATE"/> 118 <uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"/> 119 <uses-permission android:name="android.permission.PROVIDE_TRUST_AGENT"/> 120 <!-- Allow query of any normal app on the device in R+ --> 121 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/> 122 <uses-permission android:name="android.permission.READ_LOGS"/> 123 <uses-permission android:name="android.permission.READ_SMS"/> 124 <uses-permission android:name="android.permission.REAL_GET_TASKS"/> 125 <uses-permission android:name="android.permission.REBOOT"/> 126 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 127 <uses-permission android:name="android.permission.SEND_CATEGORY_CAR_NOTIFICATIONS"/> 128 <uses-permission android:name="android.permission.SEND_SMS"/> 129 <!-- use for CarServiceTest --> 130 <uses-permission android:name="android.permission.MONITOR_INPUT"/> 131 <uses-permission android:name="android.permission.SET_ACTIVITY_WATCHER"/> 132 <!-- use for CarWatchdogReliabilityTest --> 133 <uses-permission android:name="android.car.permission.USE_CAR_WATCHDOG" /> 134 <!-- needed for User fragment to lock user data --> 135 <uses-permission android:name="android.permission.STORAGE_INTERNAL"/> 136 <uses-permission android:name="android.permission.USE_FULL_SCREEN_INTENT"/> 137 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/> 138 <uses-permission android:name="android.permission.WRITE_SETTINGS"/> 139 <!-- use for vendor properties --> 140 <uses-permission android:name="android.car.permission.CAR_VENDOR_EXTENSION"/> 141 <uses-permission android:name="android.car.permission.GET_CAR_VENDOR_CATEGORY_SEAT"/> 142 <uses-permission android:name="android.car.permission.GET_CAR_VENDOR_CATEGORY_INFO"/> 143 <uses-permission android:name="android.car.permission.SET_CAR_VENDOR_CATEGORY_INFO"/> 144 145 <uses-permission android:name="android.car.permission.CONTROL_CAR_FEATURES"/> 146 147 <!-- use for rotary fragment to enable/disable packages related to rotary --> 148 <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"/> 149 150 <!-- Used on DEVICE POLICY screen to lock screen --> 151 <uses-permission android:name="android.permission.LOCK_DEVICE"/> 152 <!-- Used on DEVICE POLICY screen to reset password --> 153 <uses-permission android:name="android.permission.RESET_PASSWORD"/> 154 <!-- Used on DEVICE POLICY screen to wipe data --> 155 <uses-permission android:name="android.permission.MASTER_CLEAR"/> 156 157 <!-- Allows to use the CarEvsService --> 158 <uses-permission android:name="android.car.permission.REQUEST_CAR_EVS_ACTIVITY"/> 159 <uses-permission android:name="android.car.permission.CONTROL_CAR_EVS_ACTIVITY"/> 160 <uses-permission android:name="android.car.permission.USE_CAR_EVS_CAMERA"/> 161 <uses-permission android:name="android.car.permission.MONITOR_CAR_EVS_STATUS"/> 162 163 <uses-permission android:name="android.permission.CALL_PHONE" /> 164 165 <!-- Allows sending of notifications in T+ --> 166 <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/> 167 168 <!-- To make curl downloads work in CarTelemetryTestFragment --> 169 <uses-permission android:name="android.permission.INTERNET"/> 170 <!-- To enable suspend to RAM emulation via shell command in CarTelemetryTestFragment --> 171 <uses-permission android:name="android.permission.DEVICE_POWER"/> 172 173 <instrumentation android:name="androidx.test.runner.AndroidJUnitRunner" 174 android:targetPackage="android.car.apitest" 175 android:label="Tests for Car APIs" 176 android:debuggable="true"/> 177 178 <application android:label="CarApiTest" 179 android:debuggable="true"> 180 181 <!-- Used by CarPackageManagerTest --> 182 <meta-data android:name="android.car.targetCarVersion" android:value="108:42"/> 183 184 <uses-library android:name="android.test.runner"/> 185 <activity android:name=".TestCarProxyActivity" 186 android:exported="true"> 187 <intent-filter> 188 <action android:name="android.intent.action.MAIN"/> 189 </intent-filter> 190 </activity> 191 <activity android:name=".TestDrivingSafetyAllRegionActivity" 192 android:exported="true"> 193 <meta-data android:name="distractionOptimized" android:value="true"/> 194 </activity> 195 <activity android:name=".TestDrivingSafetyExplicitAllRegionsActivity" 196 android:exported="true"> 197 <meta-data android:name="distractionOptimized" android:value="true"/> 198 <!-- not necessary as all region is the default state but this is still valid --> 199 <meta-data android:name="android.car.drivingsafetyregions" 200 android:value="android.car.drivingsafetyregion.all"/> 201 </activity> 202 <activity android:name=".TestDrivingSafetyOneRegionActivity" 203 android:exported="true"> 204 <meta-data android:name="distractionOptimized" android:value="true"/> 205 <meta-data android:name="android.car.drivingsafetyregions" 206 android:value="com.android.car.test.drivingsafetyregion.1"/> 207 </activity> 208 <activity android:name=".TestDrivingSafetyTwoRegionsActivity" 209 android:exported="true"> 210 <meta-data android:name="distractionOptimized" android:value="true"/> 211 <meta-data android:name="android.car.drivingsafetyregions" 212 android:value="com.android.car.test.drivingsafetyregion.1,com.android.car.test.drivingsafetyregion.2"/> 213 </activity> 214 <activity android:name=".TestDrivingSafetyRegion1OnlyActivity" 215 android:exported="true"> 216 <!--No distractionOptimized, so this app will be unsafe. --> 217 <meta-data android:name="android.car.drivingsafetyregions" 218 android:value="com.android.test.drivingsafetyregion.1"/> 219 </activity> 220 <activity android:name=".TestDrivingSafetyRegionAllOnlyActivity" 221 android:exported="true"> 222 <!--No distractionOptimized, so this app will be unsafe. --> 223 <meta-data android:name="android.car.drivingsafetyregions" 224 android:value="android.car.drivingsafetyregion.all"/> 225 </activity> 226 <activity android:name=".TestDrivingSafetyRegionNoMetadataActivity" 227 android:exported="true"> 228 </activity> 229 <service android:name=".CarProjectionManagerTest$TestService" 230 android:exported="true"/> 231 <service android:name="com.android.car.internal.test.LargeParcelableTestService" 232 android:process=":apiTestServiceProcess" 233 android:exported="true"/> 234 <service android:name="com.android.car.internal.test.IStableAIDLBinderTestService" 235 android:process=":apiTestServiceProcess" 236 android:exported="true"/> 237 </application> 238</manifest> 239