1// Signature format: 2.0 2package android.car { 3 4 public abstract class AoapService extends android.app.Service { 5 ctor public AoapService(); 6 method @MainThread public int canSwitchToAoap(@NonNull android.hardware.usb.UsbDevice); 7 method @MainThread public abstract int isDeviceSupported(@NonNull android.hardware.usb.UsbDevice); 8 method public android.os.IBinder onBind(android.content.Intent); 9 field public static final int RESULT_DEVICE_NOT_SUPPORTED = 1; // 0x1 10 field public static final int RESULT_DO_NOT_SWITCH_TO_AOAP = 2; // 0x2 11 field public static final int RESULT_OK = 0; // 0x0 12 } 13 14 public final class Car { 15 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_FEATURES) public int disableFeature(@NonNull String); 16 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_FEATURES) public int enableFeature(@NonNull String); 17 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_FEATURES) public java.util.List<java.lang.String> getAllEnabledFeatures(); 18 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_FEATURES) public java.util.List<java.lang.String> getAllPendingDisabledFeatures(); 19 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_FEATURES) public java.util.List<java.lang.String> getAllPendingEnabledFeatures(); 20 field public static final String ACCESS_PRIVATE_DISPLAY_ID = "android.car.permission.ACCESS_PRIVATE_DISPLAY_ID"; 21 field @Deprecated public static final String CABIN_SERVICE = "cabin"; 22 field public static final String CAR_ACTIVITY_SERVICE = "car_activity_service"; 23 field public static final String CAR_BUGREPORT_SERVICE = "car_bugreport"; 24 field public static final String CAR_DEVICE_POLICY_SERVICE = "car_device_policy_service"; 25 field @FlaggedApi("android.car.feature.display_compatibility") public static final String CAR_DISPLAY_COMPAT_SERVICE = "car_display_compat_service"; 26 field public static final String CAR_DRIVING_STATE_SERVICE = "drivingstate"; 27 field public static final String CAR_EVS_SERVICE = "car_evs_service"; 28 field public static final String CAR_EXTRA_CLUSTER_ACTIVITY_STATE = "android.car.cluster.ClusterActivityState"; 29 field public static final String CAR_INPUT_SERVICE = "android.car.input"; 30 field public static final String CAR_MEDIA_SERVICE = "car_media"; 31 field public static final String CAR_OCCUPANT_CONNECTION_SERVICE = "car_occupant_connection_service"; 32 field public static final String CAR_PERFORMANCE_SERVICE = "car_performance"; 33 field @FlaggedApi("android.car.feature.car_property_simulation") public static final String CAR_PROPERTY_SIMULATION_SERVICE = "car_property_simulation_service"; 34 field public static final String CAR_REMOTEACCESS_REMOTE_TASK_CLIENT_SERVICE = "android.car.remoteaccess.RemoteTaskClientService"; 35 field public static final String CAR_REMOTE_ACCESS_SERVICE = "car_remote_access_service"; 36 field public static final String CAR_REMOTE_DEVICE_SERVICE = "car_remote_device_service"; 37 field public static final String CAR_TELEMETRY_SERVICE = "car_telemetry_service"; 38 field public static final String CAR_USER_SERVICE = "car_user_service"; 39 field @FlaggedApi("android.car.feature.persist_ap_settings") public static final String CAR_WIFI_SERVICE = "car_wifi_service"; 40 field public static final String DIAGNOSTIC_SERVICE = "diagnostic"; 41 field public static final int FEATURE_REQUEST_ALREADY_IN_THE_STATE = 1; // 0x1 42 field public static final int FEATURE_REQUEST_MANDATORY = 2; // 0x2 43 field public static final int FEATURE_REQUEST_NOT_EXISTING = 3; // 0x3 44 field public static final int FEATURE_REQUEST_SUCCESS = 0; // 0x0 45 field @Deprecated public static final String HVAC_SERVICE = "hvac"; 46 field public static final String OCCUPANT_AWARENESS_SERVICE = "occupant_awareness"; 47 field public static final String PERMISSION_ACCESS_MIRRORRED_SURFACE = "android.car.permission.ACCESS_MIRRORED_SURFACE"; 48 field @FlaggedApi("android.car.feature.car_app_card") public static final String PERMISSION_BIND_APP_CARD_PROVIDER = "android.car.permission.BIND_APP_CARD_PROVIDER"; 49 field public static final String PERMISSION_CAR_DIAGNOSTIC_CLEAR = "android.car.permission.CLEAR_CAR_DIAGNOSTICS"; 50 field public static final String PERMISSION_CAR_DIAGNOSTIC_READ_ALL = "android.car.permission.CAR_DIAGNOSTICS"; 51 field public static final String PERMISSION_CAR_INSTRUMENT_CLUSTER_CONTROL = "android.car.permission.CAR_INSTRUMENT_CLUSTER_CONTROL"; 52 field @FlaggedApi("android.car.feature.cluster_health_monitoring") public static final String PERMISSION_CAR_MONITOR_CLUSTER_NAVIGATION_STATE = "android.car.permission.CAR_MONITOR_CLUSTER_NAVIGATION_STATE"; 53 field public static final String PERMISSION_CAR_MONITOR_INPUT = "android.car.permission.CAR_MONITOR_INPUT"; 54 field public static final String PERMISSION_CAR_POWER = "android.car.permission.CAR_POWER"; 55 field public static final String PERMISSION_CAR_PROJECTION = "android.car.permission.CAR_PROJECTION"; 56 field public static final String PERMISSION_CAR_PROJECTION_STATUS = "android.car.permission.ACCESS_CAR_PROJECTION_STATUS"; 57 field public static final String PERMISSION_CAR_TEST_SERVICE = "android.car.permission.CAR_TEST_SERVICE"; 58 field public static final String PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION = "android.car.permission.CAR_UX_RESTRICTIONS_CONFIGURATION"; 59 field public static final String PERMISSION_COLLECT_CAR_WATCHDOG_METRICS = "android.car.permission.COLLECT_CAR_WATCHDOG_METRICS"; 60 field public static final String PERMISSION_CONTROL_APP_BLOCKING = "android.car.permission.CONTROL_APP_BLOCKING"; 61 field public static final String PERMISSION_CONTROL_CAR_APP_LAUNCH = "android.car.permission.CONTROL_CAR_APP_LAUNCH"; 62 field public static final String PERMISSION_CONTROL_CAR_EVS_ACTIVITY = "android.car.permission.CONTROL_CAR_EVS_ACTIVITY"; 63 field public static final String PERMISSION_CONTROL_CAR_FEATURES = "android.car.permission.CONTROL_CAR_FEATURES"; 64 field @Deprecated public static final String PERMISSION_CONTROL_CAR_OCCUPANT_AWARENESS_SYSTEM = "android.car.permission.CONTROL_CAR_OCCUPANT_AWARENESS_SYSTEM"; 65 field public static final String PERMISSION_CONTROL_CAR_POWER_POLICY = "android.car.permission.CONTROL_CAR_POWER_POLICY"; 66 field public static final String PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG = "android.car.permission.CONTROL_CAR_WATCHDOG_CONFIG"; 67 field public static final String PERMISSION_CONTROL_REMOTE_ACCESS = "android.car.permission.CONTROL_REMOTE_ACCESS"; 68 field public static final String PERMISSION_CONTROL_SHUTDOWN_PROCESS = "android.car.permission.CONTROL_SHUTDOWN_PROCESS"; 69 field @FlaggedApi("android.car.feature.car_property_simulation") public static final String PERMISSION_INJECT_VEHICLE_PROPERTIES = "android.car.permission.INJECT_VEHICLE_PROPERTIES"; 70 field public static final String PERMISSION_MANAGE_CAR_SYSTEM_UI = "android.car.permission.MANAGE_CAR_SYSTEM_UI"; 71 field @FlaggedApi("android.car.feature.display_compatibility") public static final String PERMISSION_MANAGE_DISPLAY_COMPATIBILITY = "android.car.permission.MANAGE_DISPLAY_COMPATIBILITY"; 72 field public static final String PERMISSION_MANAGE_OCCUPANT_CONNECTION = "android.car.permission.MANAGE_OCCUPANT_CONNECTION"; 73 field public static final String PERMISSION_MANAGE_OCCUPANT_ZONE = "android.car.permission.MANAGE_OCCUPANT_ZONE"; 74 field public static final String PERMISSION_MANAGE_REMOTE_DEVICE = "android.car.permission.MANAGE_REMOTE_DEVICE"; 75 field public static final String PERMISSION_MANAGE_THREAD_PRIORITY = "android.car.permission.MANAGE_THREAD_PRIORITY"; 76 field public static final String PERMISSION_MIRROR_DISPLAY = "android.car.permission.MIRROR_DISPLAY"; 77 field @Deprecated public static final String PERMISSION_MOCK_VEHICLE_HAL = "android.car.permission.CAR_MOCK_VEHICLE_HAL"; 78 field public static final String PERMISSION_MONITOR_CAR_EVS_STATUS = "android.car.permission.MONITOR_CAR_EVS_STATUS"; 79 field public static final String PERMISSION_READ_CAR_OCCUPANT_AWARENESS_STATE = "android.car.permission.READ_CAR_OCCUPANT_AWARENESS_STATE"; 80 field public static final String PERMISSION_READ_CAR_VENDOR_PERMISSION_INFO = "android.car.permission.READ_CAR_VENDOR_PERMISSION_INFO"; 81 field @FlaggedApi("android.car.feature.persist_ap_settings") public static final String PERMISSION_READ_PERSIST_TETHERING_SETTINGS = "android.car.permission.READ_PERSIST_TETHERING_SETTINGS"; 82 field public static final String PERMISSION_RECEIVE_CAR_AUDIO_DUCKING_EVENTS = "android.car.permission.RECEIVE_CAR_AUDIO_DUCKING_EVENTS"; 83 field @FlaggedApi("android.car.feature.car_property_simulation") public static final String PERMISSION_RECORD_VEHICLE_PROPERTIES = "android.car.permission.RECORD_VEHICLE_PROPERTIES"; 84 field public static final String PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY = "android.car.permission.REGISTER_CAR_SYSTEM_UI_PROXY"; 85 field public static final String PERMISSION_REQUEST_CAR_EVS_ACTIVITY = "android.car.permission.REQUEST_CAR_EVS_ACTIVITY"; 86 field public static final String PERMISSION_STORAGE_MONITORING = "android.car.permission.STORAGE_MONITORING"; 87 field public static final String PERMISSION_TEMPLATE_RENDERER = "android.car.permission.TEMPLATE_RENDERER"; 88 field public static final String PERMISSION_USE_CAR_EVS_CAMERA = "android.car.permission.USE_CAR_EVS_CAMERA"; 89 field public static final String PERMISSION_USE_CAR_TELEMETRY_SERVICE = "android.car.permission.USE_CAR_TELEMETRY_SERVICE"; 90 field public static final String PERMISSION_USE_CAR_WATCHDOG = "android.car.permission.USE_CAR_WATCHDOG"; 91 field public static final String PERMISSION_VENDOR_EXTENSION = "android.car.permission.CAR_VENDOR_EXTENSION"; 92 field public static final String PERMISSION_VMS_PUBLISHER = "android.car.permission.VMS_PUBLISHER"; 93 field public static final String PERMISSION_VMS_SUBSCRIBER = "android.car.permission.VMS_SUBSCRIBER"; 94 field public static final String PROJECTION_SERVICE = "projection"; 95 field public static final String STORAGE_MONITORING_SERVICE = "storage_monitoring"; 96 field public static final String TEST_SERVICE = "car-service-test"; 97 field public static final String VEHICLE_MAP_SERVICE = "vehicle_map_service"; 98 field @Deprecated public static final String VENDOR_EXTENSION_SERVICE = "vendor_extension"; 99 field @Deprecated public static final String VMS_SUBSCRIBER_SERVICE = "vehicle_map_subscriber_service"; 100 } 101 102 public final class CarAppFocusManager { 103 method @FlaggedApi("android.car.feature.cluster_health_monitoring") @NonNull @RequiresPermission(allOf={android.Manifest.permission.QUERY_ALL_PACKAGES, android.Manifest.permission.INTERACT_ACROSS_USERS}, conditional=true) public java.util.List<java.lang.String> getAppTypeOwner(int); 104 } 105 106 public final class CarBugreportManager { 107 method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport(); 108 method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.car.CarBugreportManager.CarBugreportManagerCallback); 109 } 110 111 public abstract static class CarBugreportManager.CarBugreportManagerCallback { 112 ctor public CarBugreportManager.CarBugreportManagerCallback(); 113 method public void onError(int); 114 method public void onFinished(); 115 method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float); 116 field public static final int CAR_BUGREPORT_DUMPSTATE_CONNECTION_FAILED = 3; // 0x3 117 field public static final int CAR_BUGREPORT_DUMPSTATE_FAILED = 1; // 0x1 118 field public static final int CAR_BUGREPORT_IN_PROGRESS = 2; // 0x2 119 field public static final int CAR_BUGREPORT_SERVICE_NOT_AVAILABLE = 4; // 0x4 120 } 121 122 public class CarOccupantZoneManager { 123 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.car.Car.PERMISSION_MANAGE_OCCUPANT_ZONE}) public int assignVisibleUserToOccupantZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.os.UserHandle); 124 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public int getAudioZoneIdForOccupant(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 125 method @RequiresPermission(android.car.Car.ACCESS_PRIVATE_DISPLAY_ID) public int getDisplayIdForDriver(int); 126 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.CarOccupantZoneManager.OccupantZoneInfo getOccupantForAudioZoneId(int); 127 method @Nullable public android.car.CarOccupantZoneManager.OccupantZoneInfo getOccupantZoneForDisplayId(int); 128 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.car.Car.PERMISSION_MANAGE_OCCUPANT_ZONE}) public int unassignOccupantZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 129 field public static final int USER_ASSIGNMENT_RESULT_FAIL_ALREADY_ASSIGNED = 1; // 0x1 130 field public static final int USER_ASSIGNMENT_RESULT_FAIL_DRIVER_ZONE = 3; // 0x3 131 field public static final int USER_ASSIGNMENT_RESULT_FAIL_NON_VISIBLE_USER = 2; // 0x2 132 field public static final int USER_ASSIGNMENT_RESULT_OK = 0; // 0x0 133 } 134 135 public final class CarProjectionManager { 136 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void addKeyEventHandler(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.car.CarProjectionManager.ProjectionKeyEventHandler); 137 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void addKeyEventHandler(@NonNull java.util.Set<java.lang.Integer>, @Nullable java.util.concurrent.Executor, @NonNull android.car.CarProjectionManager.ProjectionKeyEventHandler); 138 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public java.util.List<java.lang.Integer> getAvailableWifiChannels(int); 139 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public android.os.Bundle getProjectionOptions(); 140 method @FlaggedApi("android.car.feature.projection_query_bt_profile_inhibit") @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public boolean isBluetoothProfileInhibited(@NonNull android.bluetooth.BluetoothDevice, int); 141 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void registerProjectionListener(@NonNull android.car.CarProjectionManager.CarProjectionListener, int); 142 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void registerProjectionRunner(@NonNull android.content.Intent); 143 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION_STATUS) public void registerProjectionStatusListener(@NonNull android.car.CarProjectionManager.ProjectionStatusListener); 144 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public boolean releaseBluetoothProfileInhibit(@NonNull android.bluetooth.BluetoothDevice, int); 145 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void removeKeyEventHandler(@NonNull android.car.CarProjectionManager.ProjectionKeyEventHandler); 146 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public boolean requestBluetoothProfileInhibit(@NonNull android.bluetooth.BluetoothDevice, int); 147 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void resetProjectionAccessPointCredentials(); 148 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void startProjectionAccessPoint(@NonNull android.car.CarProjectionManager.ProjectionAccessPointCallback); 149 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void stopProjectionAccessPoint(); 150 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void unregisterProjectionListener(); 151 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void unregisterProjectionRunner(@NonNull android.content.Intent); 152 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION_STATUS) public void unregisterProjectionStatusListener(@NonNull android.car.CarProjectionManager.ProjectionStatusListener); 153 method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void updateProjectionStatus(@NonNull android.car.projection.ProjectionStatus); 154 field public static final int KEY_EVENT_CALL_KEY_DOWN = 4; // 0x4 155 field public static final int KEY_EVENT_CALL_LONG_PRESS_KEY_DOWN = 6; // 0x6 156 field public static final int KEY_EVENT_CALL_LONG_PRESS_KEY_UP = 7; // 0x7 157 field public static final int KEY_EVENT_CALL_SHORT_PRESS_KEY_UP = 5; // 0x5 158 field public static final int KEY_EVENT_VOICE_SEARCH_KEY_DOWN = 0; // 0x0 159 field public static final int KEY_EVENT_VOICE_SEARCH_LONG_PRESS_KEY_DOWN = 2; // 0x2 160 field public static final int KEY_EVENT_VOICE_SEARCH_LONG_PRESS_KEY_UP = 3; // 0x3 161 field public static final int KEY_EVENT_VOICE_SEARCH_SHORT_PRESS_KEY_UP = 1; // 0x1 162 field @Deprecated public static final int PROJECTION_LONG_PRESS_VOICE_SEARCH = 2; // 0x2 163 field @Deprecated public static final int PROJECTION_VOICE_SEARCH = 1; // 0x1 164 } 165 166 public static interface CarProjectionManager.CarProjectionListener { 167 method public void onVoiceAssistantRequest(boolean); 168 } 169 170 public abstract static class CarProjectionManager.ProjectionAccessPointCallback { 171 ctor public CarProjectionManager.ProjectionAccessPointCallback(); 172 method public void onFailed(int); 173 method @Deprecated public void onStarted(@Nullable android.net.wifi.WifiConfiguration); 174 method public void onStarted(@NonNull android.net.wifi.SoftApConfiguration); 175 method public void onStopped(); 176 field public static final int ERROR_GENERIC = 2; // 0x2 177 field public static final int ERROR_INCOMPATIBLE_MODE = 3; // 0x3 178 field public static final int ERROR_NO_CHANNEL = 1; // 0x1 179 field public static final int ERROR_TETHERING_DISALLOWED = 4; // 0x4 180 } 181 182 public static interface CarProjectionManager.ProjectionKeyEventHandler { 183 method public void onKeyEvent(int); 184 } 185 186 public static interface CarProjectionManager.ProjectionStatusListener { 187 method public void onProjectionStatusChanged(int, @Nullable String, @NonNull java.util.List<android.car.projection.ProjectionStatus>); 188 } 189 190 public final class CarRemoteDeviceManager { 191 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_MANAGE_REMOTE_DEVICE) public android.content.pm.PackageInfo getEndpointPackageInfo(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 192 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_REMOTE_DEVICE) public boolean isOccupantZonePowerOn(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 193 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_REMOTE_DEVICE) public void registerStateCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.CarRemoteDeviceManager.StateCallback); 194 method @RequiresPermission(allOf={android.car.Car.PERMISSION_CAR_POWER, android.car.Car.PERMISSION_MANAGE_REMOTE_DEVICE}) public void setOccupantZonePower(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, boolean); 195 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_REMOTE_DEVICE) public void unregisterStateCallback(); 196 field public static final int FLAG_CLIENT_INSTALLED = 1; // 0x1 197 field public static final int FLAG_CLIENT_IN_FOREGROUND = 16; // 0x10 198 field public static final int FLAG_CLIENT_RUNNING = 8; // 0x8 199 field public static final int FLAG_CLIENT_SAME_LONG_VERSION = 2; // 0x2 200 field public static final int FLAG_CLIENT_SAME_SIGNATURE = 4; // 0x4 201 field public static final int FLAG_OCCUPANT_ZONE_CONNECTION_READY = 4; // 0x4 202 field public static final int FLAG_OCCUPANT_ZONE_POWER_ON = 1; // 0x1 203 field public static final int FLAG_OCCUPANT_ZONE_SCREEN_UNLOCKED = 2; // 0x2 204 } 205 206 public static interface CarRemoteDeviceManager.StateCallback { 207 method public void onAppStateChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 208 method public void onOccupantZoneStateChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 209 } 210 211 public interface ResultCallback<V> { 212 method public void onResult(V); 213 } 214 215 public final class SyncResultCallback<V> implements android.car.ResultCallback<V> { 216 ctor public SyncResultCallback(); 217 method @Nullable public V get() throws java.lang.InterruptedException; 218 method @Nullable public V get(long, @Nullable java.util.concurrent.TimeUnit) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException; 219 method public void onResult(V); 220 } 221 222 public final class VehicleAreaDoor { 223 field public static final int DOOR_HOOD = 268435456; // 0x10000000 224 field public static final int DOOR_REAR = 536870912; // 0x20000000 225 field public static final int DOOR_ROW_1_LEFT = 1; // 0x1 226 field public static final int DOOR_ROW_1_RIGHT = 4; // 0x4 227 field public static final int DOOR_ROW_2_LEFT = 16; // 0x10 228 field public static final int DOOR_ROW_2_RIGHT = 64; // 0x40 229 field public static final int DOOR_ROW_3_LEFT = 256; // 0x100 230 field public static final int DOOR_ROW_3_RIGHT = 1024; // 0x400 231 } 232 233 public final class VehicleAreaMirror { 234 field public static final int MIRROR_DRIVER_CENTER = 4; // 0x4 235 field public static final int MIRROR_DRIVER_LEFT = 1; // 0x1 236 field public static final int MIRROR_DRIVER_RIGHT = 2; // 0x2 237 } 238 239 public final class VehicleAreaWindow { 240 field public static final int WINDOW_FRONT_WINDSHIELD = 1; // 0x1 241 field public static final int WINDOW_REAR_WINDSHIELD = 2; // 0x2 242 field public static final int WINDOW_ROOF_TOP_1 = 65536; // 0x10000 243 field public static final int WINDOW_ROOF_TOP_2 = 131072; // 0x20000 244 field public static final int WINDOW_ROW_1_LEFT = 16; // 0x10 245 field public static final int WINDOW_ROW_1_RIGHT = 64; // 0x40 246 field public static final int WINDOW_ROW_2_LEFT = 256; // 0x100 247 field public static final int WINDOW_ROW_2_RIGHT = 1024; // 0x400 248 field public static final int WINDOW_ROW_3_LEFT = 4096; // 0x1000 249 field public static final int WINDOW_ROW_3_RIGHT = 16384; // 0x4000 250 } 251 252 public final class VehiclePropertyAccess { 253 field public static final int NONE = 0; // 0x0 254 field public static final int READ = 1; // 0x1 255 field public static final int READ_WRITE = 3; // 0x3 256 field public static final int WRITE = 2; // 0x2 257 } 258 259 public final class VehicleUnit { 260 field public static final int DEGREES = 128; // 0x80 261 field public static final int HERTZ = 3; // 0x3 262 field public static final int MILLIAMPERE = 97; // 0x61 263 field public static final int MILLIVOLT = 98; // 0x62 264 field public static final int MILLIWATTS = 99; // 0x63 265 field public static final int MILLI_SECS = 81; // 0x51 266 field public static final int NANO_SECS = 80; // 0x50 267 field public static final int PERCENTILE = 16; // 0x10 268 field public static final int RPM = 2; // 0x2 269 field public static final int SECS = 83; // 0x53 270 field public static final int SHOULD_NOT_USE = 0; // 0x0 271 field public static final int YEAR = 89; // 0x59 272 } 273 274} 275 276package android.car.admin { 277 278 public final class CarDevicePolicyManager { 279 method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.CreateUserResult createUser(@Nullable String, int); 280 method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.RemoveUserResult removeUser(@NonNull android.os.UserHandle); 281 field public static final int USER_TYPE_ADMIN = 1; // 0x1 282 field public static final int USER_TYPE_GUEST = 2; // 0x2 283 field public static final int USER_TYPE_REGULAR = 0; // 0x0 284 } 285 286 public final class CreateUserResult { 287 method public int getStatus(); 288 method @Nullable public android.os.UserHandle getUserHandle(); 289 method public boolean isSuccess(); 290 field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64 291 field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 2; // 0x2 292 field public static final int STATUS_SUCCESS = 1; // 0x1 293 } 294 295 public final class RemoveUserResult { 296 method public int getStatus(); 297 method public boolean isSuccess(); 298 field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64 299 field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 5; // 0x5 300 field public static final int STATUS_FAILURE_USER_DOES_NOT_EXIST = 4; // 0x4 301 field public static final int STATUS_SUCCESS = 1; // 0x1 302 field public static final int STATUS_SUCCESS_LAST_ADMIN_REMOVED = 2; // 0x2 303 field public static final int STATUS_SUCCESS_LAST_ADMIN_SET_EPHEMERAL = 6; // 0x6 304 field public static final int STATUS_SUCCESS_SET_EPHEMERAL = 3; // 0x3 305 } 306 307} 308 309package android.car.app { 310 311 public final class CarActivityManager { 312 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_MIRROR_DISPLAY) public android.os.IBinder createDisplayMirroringToken(int); 313 method @Nullable @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_TASKS) public android.os.IBinder createTaskMirroringToken(int); 314 method @MainThread @RequiresPermission(allOf={android.car.Car.PERMISSION_MANAGE_CAR_SYSTEM_UI, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void getCarTaskViewController(@NonNull android.app.Activity, @NonNull java.util.concurrent.Executor, @NonNull android.car.app.CarTaskViewControllerCallback); 315 method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_TASKS) public java.util.List<android.app.ActivityManager.RunningTaskInfo> getVisibleTasks(); 316 method @NonNull @RequiresPermission(android.Manifest.permission.MANAGE_ACTIVITY_TASKS) public java.util.List<android.app.ActivityManager.RunningTaskInfo> getVisibleTasks(int); 317 method public boolean isCarSystemUIProxyRegistered(); 318 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_APP_LAUNCH) public void moveRootTaskToDisplay(int, int); 319 method @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void registerCarSystemUIProxy(@NonNull android.car.app.CarSystemUIProxy); 320 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_APP_LAUNCH) public void setPersistentActivitiesOnRootTask(@NonNull java.util.List<android.content.ComponentName>, @Nullable android.os.IBinder); 321 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_APP_LAUNCH) public int setPersistentActivity(@NonNull android.content.ComponentName, int, int); 322 method @RequiresPermission(android.Manifest.permission.INTERACT_ACROSS_USERS) public void startUserPickerOnDisplay(int); 323 field public static final int RESULT_FAILURE = -1; // 0xffffffff 324 field public static final int RESULT_INVALID_USER = -2; // 0xfffffffe 325 field public static final int RESULT_SUCCESS = 0; // 0x0 326 } 327 328 @FlaggedApi("android.car.feature.display_compatibility") public final class CarDisplayCompatContainer { 329 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY) @UiThread public void notifyBackPressed(); 330 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY) @UiThread public void setVisibility(int); 331 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY) @UiThread public android.graphics.Rect setWindowBounds(@NonNull android.graphics.Rect); 332 method @RequiresPermission(allOf={android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY, android.car.Car.PERMISSION_MANAGE_CAR_SYSTEM_UI, android.Manifest.permission.INTERACT_ACROSS_USERS}) @UiThread public void startActivity(@NonNull android.content.Intent, @Nullable android.os.Bundle); 333 } 334 335 @FlaggedApi("android.car.feature.display_compatibility") public static final class CarDisplayCompatContainer.Builder { 336 ctor public CarDisplayCompatContainer.Builder(@NonNull android.app.Activity); 337 method @NonNull public android.car.app.CarDisplayCompatContainer.Builder setSurfaceViewCallback(@Nullable java.util.function.Consumer<android.view.SurfaceView>); 338 } 339 340 @FlaggedApi("android.car.feature.display_compatibility") public final class CarDisplayCompatManager { 341 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY) public android.car.app.CarDisplayCompatContainer initializeDisplayCompatContainer(@NonNull android.car.app.CarDisplayCompatContainer.Builder); 342 } 343 344 public interface CarSystemUIProxy { 345 method @NonNull public android.car.app.CarTaskViewHost createControlledCarTaskView(@NonNull android.car.app.CarTaskViewClient); 346 } 347 348 public final class CarTaskViewClient { 349 method @NonNull public android.graphics.Rect getCurrentBoundsOnScreen(); 350 method public void onTaskAppeared(@NonNull android.app.ActivityManager.RunningTaskInfo, @NonNull android.view.SurfaceControl); 351 method public void onTaskInfoChanged(@NonNull android.app.ActivityManager.RunningTaskInfo); 352 method public void onTaskVanished(@NonNull android.app.ActivityManager.RunningTaskInfo); 353 method public void setResizeBackgroundColor(@NonNull android.view.SurfaceControl.Transaction, int); 354 } 355 356 public final class CarTaskViewController { 357 method @MainThread @RequiresPermission(allOf={android.Manifest.permission.INJECT_EVENTS, android.Manifest.permission.INTERNAL_SYSTEM_WINDOW}, conditional=true) public void createControlledRemoteCarTaskView(@NonNull android.car.app.ControlledRemoteCarTaskViewConfig, @NonNull java.util.concurrent.Executor, @NonNull android.car.app.ControlledRemoteCarTaskViewCallback); 358 method @MainThread public void release(); 359 method @MainThread public void showEmbeddedTasks(); 360 } 361 362 public interface CarTaskViewControllerCallback { 363 method public void onConnected(@NonNull android.car.app.CarTaskViewController); 364 method public void onDisconnected(@NonNull android.car.app.CarTaskViewController); 365 } 366 367 public interface CarTaskViewHost { 368 method public void addInsets(int, int, @NonNull android.graphics.Rect); 369 method public void notifySurfaceCreated(@NonNull android.view.SurfaceControl); 370 method public void notifySurfaceDestroyed(); 371 method public void release(); 372 method public void removeInsets(int, int); 373 method public void setWindowBounds(@NonNull android.graphics.Rect); 374 method public void showEmbeddedTask(); 375 method public void startActivity(@NonNull android.app.PendingIntent, @Nullable android.content.Intent, @NonNull android.os.Bundle, @Nullable android.graphics.Rect); 376 } 377 378 public final class ControlledRemoteCarTaskView extends android.view.SurfaceView { 379 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void addInsets(int, int, @NonNull android.graphics.Rect); 380 method @MainThread @Nullable public android.app.ActivityManager.RunningTaskInfo getTaskInfo(); 381 method @MainThread public boolean isInitialized(); 382 method public void onAttachedToWindow(); 383 method public void onDetachedFromWindow(); 384 method @MainThread public void release(); 385 method @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void removeInsets(int, int); 386 method @MainThread public void setObscuredTouchRect(@NonNull android.graphics.Rect); 387 method @MainThread public void setObscuredTouchRegion(@NonNull android.graphics.Region); 388 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void showEmbeddedTask(); 389 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void startActivity(); 390 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_REGISTER_CAR_SYSTEM_UI_PROXY) public void updateWindowBounds(); 391 } 392 393 public interface ControlledRemoteCarTaskViewCallback { 394 method public default void onTaskAppeared(@NonNull android.app.ActivityManager.RunningTaskInfo); 395 method public default void onTaskInfoChanged(@NonNull android.app.ActivityManager.RunningTaskInfo); 396 method public default void onTaskVanished(@NonNull android.app.ActivityManager.RunningTaskInfo); 397 method public default void onTaskViewCreated(@NonNull android.car.app.ControlledRemoteCarTaskView); 398 method public default void onTaskViewInitialized(); 399 method public default void onTaskViewReleased(); 400 } 401 402 public final class ControlledRemoteCarTaskViewConfig { 403 method @NonNull public android.content.Intent getActivityIntent(); 404 method public boolean shouldAutoRestartOnCrash(); 405 method public boolean shouldCaptureGestures(); 406 method public boolean shouldCaptureLongPress(); 407 } 408 409 public static final class ControlledRemoteCarTaskViewConfig.Builder { 410 ctor public ControlledRemoteCarTaskViewConfig.Builder(); 411 method @NonNull public android.car.app.ControlledRemoteCarTaskViewConfig build(); 412 method @NonNull public android.car.app.ControlledRemoteCarTaskViewConfig.Builder setActivityIntent(@NonNull android.content.Intent); 413 method @NonNull public android.car.app.ControlledRemoteCarTaskViewConfig.Builder setShouldAutoRestartOnTaskRemoval(boolean); 414 method @NonNull public android.car.app.ControlledRemoteCarTaskViewConfig.Builder setShouldCaptureGestures(boolean); 415 method @NonNull public android.car.app.ControlledRemoteCarTaskViewConfig.Builder setShouldCaptureLongPress(boolean); 416 } 417 418} 419 420package android.car.cluster { 421 422 @Deprecated public class CarInstrumentClusterManager { 423 method @Deprecated public void registerCallback(String, android.car.cluster.CarInstrumentClusterManager.Callback); 424 method @Deprecated public void startActivity(android.content.Intent); 425 method @Deprecated public void unregisterCallback(android.car.cluster.CarInstrumentClusterManager.Callback); 426 field @Deprecated public static final String CATEGORY_NAVIGATION = "android.car.cluster.NAVIGATION"; 427 field @Deprecated public static final String KEY_EXTRA_ACTIVITY_STATE = "android.car.cluster.ClusterActivityState"; 428 } 429 430 @Deprecated public static interface CarInstrumentClusterManager.Callback { 431 method @Deprecated public void onClusterActivityStateChanged(String, android.os.Bundle); 432 } 433 434 public final class ClusterActivityState { 435 method @NonNull public static android.car.cluster.ClusterActivityState create(boolean, @NonNull android.graphics.Rect); 436 method @NonNull public static android.car.cluster.ClusterActivityState fromBundle(@NonNull android.os.Bundle); 437 method @Nullable public android.os.Bundle getExtras(); 438 method @Nullable public android.graphics.Rect getUnobscuredBounds(); 439 method public boolean isVisible(); 440 method @NonNull public android.car.cluster.ClusterActivityState setExtras(@NonNull android.os.Bundle); 441 method @NonNull public android.car.cluster.ClusterActivityState setUnobscuredBounds(@NonNull android.graphics.Rect); 442 method @NonNull public android.car.cluster.ClusterActivityState setVisible(boolean); 443 method @NonNull public android.os.Bundle toBundle(); 444 } 445 446 @FlaggedApi("android.car.feature.cluster_health_monitoring") public final class ClusterHomeManager { 447 method @RequiresPermission(android.car.Car.PERMISSION_CAR_MONITOR_CLUSTER_NAVIGATION_STATE) public void registerClusterNavigationStateListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.cluster.ClusterHomeManager.ClusterNavigationStateListener); 448 method @RequiresPermission(android.car.Car.PERMISSION_CAR_INSTRUMENT_CLUSTER_CONTROL) public void sendHeartbeat(long, @Nullable byte[]); 449 method @RequiresPermission(android.car.Car.PERMISSION_CAR_INSTRUMENT_CLUSTER_CONTROL) public void startVisibilityMonitoring(@NonNull android.app.Activity); 450 method @RequiresPermission(android.car.Car.PERMISSION_CAR_MONITOR_CLUSTER_NAVIGATION_STATE) public void unregisterClusterNavigationStateListener(@NonNull android.car.cluster.ClusterHomeManager.ClusterNavigationStateListener); 451 } 452 453 @FlaggedApi("android.car.feature.cluster_health_monitoring") public static interface ClusterHomeManager.ClusterNavigationStateListener { 454 method public void onNavigationStateChanged(@NonNull byte[]); 455 } 456 457} 458 459package android.car.cluster.renderer { 460 461 @Deprecated public abstract class InstrumentClusterRenderer { 462 ctor @Deprecated public InstrumentClusterRenderer(); 463 method @Deprecated protected abstract android.car.cluster.renderer.NavigationRenderer createNavigationRenderer(); 464 method @Deprecated @Nullable public android.car.cluster.renderer.NavigationRenderer getNavigationRenderer(); 465 method @Deprecated @UiThread public final void initialize(); 466 method @Deprecated public abstract void onCreate(android.content.Context); 467 method @Deprecated public abstract void onStart(); 468 method @Deprecated public abstract void onStop(); 469 } 470 471 public abstract class InstrumentClusterRenderingService extends android.app.Service { 472 ctor public InstrumentClusterRenderingService(); 473 method @Deprecated @Nullable public android.graphics.Bitmap getBitmap(android.net.Uri); 474 method @Nullable public android.graphics.Bitmap getBitmap(@NonNull android.net.Uri, int, int); 475 method @Nullable public android.graphics.Bitmap getBitmap(@NonNull android.net.Uri, int, int, float); 476 method @MainThread @Nullable public abstract android.car.cluster.renderer.NavigationRenderer getNavigationRenderer(); 477 method @CallSuper public android.os.IBinder onBind(android.content.Intent); 478 method @MainThread public void onKeyEvent(@NonNull android.view.KeyEvent); 479 method @MainThread public void onNavigationComponentLaunched(); 480 method @MainThread public void onNavigationComponentReleased(); 481 method public void setClusterActivityLaunchOptions(@NonNull android.app.ActivityOptions); 482 method public void setClusterActivityState(@NonNull android.car.cluster.ClusterActivityState); 483 method public boolean startFixedActivityModeForDisplayAndUser(@NonNull android.content.Intent, @NonNull android.app.ActivityOptions, int); 484 method protected boolean startNavigationActivity(@NonNull android.content.ComponentName); 485 method public void stopFixedActivityMode(int); 486 } 487 488 @UiThread public abstract class NavigationRenderer { 489 ctor public NavigationRenderer(); 490 method public abstract android.car.navigation.CarNavigationInstrumentCluster getNavigationProperties(); 491 method public void onNavigationStateChanged(@Nullable android.os.Bundle); 492 } 493 494} 495 496package android.car.content.pm { 497 498 public final class AppBlockingPackageInfo implements android.os.Parcelable { 499 ctor public AppBlockingPackageInfo(String, int, int, int, @Nullable android.content.pm.Signature[], @Nullable String[]); 500 ctor public AppBlockingPackageInfo(android.os.Parcel); 501 method public int describeContents(); 502 method public void writeToParcel(android.os.Parcel, int); 503 field public static final android.os.Parcelable.Creator<android.car.content.pm.AppBlockingPackageInfo> CREATOR; 504 field public static final int FLAG_SYSTEM_APP = 1; // 0x1 505 field public static final int FLAG_WHOLE_ACTIVITY = 2; // 0x2 506 field public final String[] activities; 507 field public final int flags; 508 field public final int maxRevisionCode; 509 field public final int minRevisionCode; 510 field public final String packageName; 511 field public final android.content.pm.Signature[] signatures; 512 } 513 514 public final class CarAppBlockingPolicy implements android.os.Parcelable { 515 ctor public CarAppBlockingPolicy(android.car.content.pm.AppBlockingPackageInfo[], android.car.content.pm.AppBlockingPackageInfo[]); 516 ctor public CarAppBlockingPolicy(android.os.Parcel); 517 method public int describeContents(); 518 method public void writeToParcel(android.os.Parcel, int); 519 field public static final android.os.Parcelable.Creator<android.car.content.pm.CarAppBlockingPolicy> CREATOR; 520 field public final android.car.content.pm.AppBlockingPackageInfo[] blacklists; 521 field public final android.car.content.pm.AppBlockingPackageInfo[] whitelists; 522 } 523 524 public abstract class CarAppBlockingPolicyService extends android.app.Service { 525 ctor public CarAppBlockingPolicyService(); 526 method protected abstract android.car.content.pm.CarAppBlockingPolicy getAppBlockingPolicy(); 527 method public android.os.IBinder onBind(android.content.Intent); 528 field public static final String SERVICE_INTERFACE = "android.car.content.pm.CarAppBlockingPolicyService"; 529 } 530 531 public final class CarPackageManager { 532 method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.QUERY_ALL_PACKAGES) public android.car.CarVersion getTargetCarVersion(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; 533 method public boolean isActivityBackedBySafeActivity(android.content.ComponentName); 534 method @FlaggedApi("android.car.feature.display_compatibility") @RequiresPermission(allOf={android.car.Car.PERMISSION_MANAGE_DISPLAY_COMPATIBILITY, android.Manifest.permission.QUERY_ALL_PACKAGES}) public boolean requiresDisplayCompat(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException; 535 method @Deprecated public void setAppBlockingPolicy(String, android.car.content.pm.CarAppBlockingPolicy, int); 536 field @Deprecated public static final int FLAG_SET_POLICY_ADD = 2; // 0x2 537 field @Deprecated public static final int FLAG_SET_POLICY_REMOVE = 4; // 0x4 538 field @Deprecated public static final int FLAG_SET_POLICY_WAIT_FOR_CHANGE = 1; // 0x1 539 } 540 541} 542 543package android.car.diagnostic { 544 545 public final class CarDiagnosticEvent implements android.os.Parcelable { 546 ctor public CarDiagnosticEvent(android.os.Parcel); 547 method public int describeContents(); 548 method @android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.Status @Nullable public Integer getFuelSystemStatus(); 549 method @android.car.diagnostic.CarDiagnosticEvent.FuelType.Type @Nullable public Integer getFuelType(); 550 method @Nullable public android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors getIgnitionMonitors(); 551 method @android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.Status @Nullable public Integer getSecondaryAirStatus(); 552 method public float getSystemFloatSensor(int, float); 553 method @Nullable public Float getSystemFloatSensor(int); 554 method public int getSystemIntegerSensor(int, int); 555 method @Nullable public Integer getSystemIntegerSensor(int); 556 method public float getVendorFloatSensor(int, float); 557 method @Nullable public Float getVendorFloatSensor(int); 558 method public int getVendorIntegerSensor(int, int); 559 method @Nullable public Integer getVendorIntegerSensor(int); 560 method public boolean isFreezeFrame(); 561 method public boolean isLiveFrame(); 562 method public void writeToJson(android.util.JsonWriter) throws java.io.IOException; 563 method public void writeToParcel(android.os.Parcel, int); 564 field public static final android.os.Parcelable.Creator<android.car.diagnostic.CarDiagnosticEvent> CREATOR; 565 field public final String dtc; 566 field public final int frameType; 567 field public final long timestamp; 568 } 569 570 public static class CarDiagnosticEvent.Builder { 571 method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder atTimestamp(long); 572 method public android.car.diagnostic.CarDiagnosticEvent build(); 573 method public static android.car.diagnostic.CarDiagnosticEvent.Builder newFreezeFrameBuilder(); 574 method public static android.car.diagnostic.CarDiagnosticEvent.Builder newLiveFrameBuilder(); 575 method public android.car.diagnostic.CarDiagnosticEvent.Builder setDtc(String); 576 method public android.car.diagnostic.CarDiagnosticEvent.Builder setFloatValue(int, float); 577 method public android.car.diagnostic.CarDiagnosticEvent.Builder setIntValue(int, int); 578 method public android.car.diagnostic.CarDiagnosticEvent.Builder setTimeStamp(long); 579 method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withDtc(String); 580 method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withFloatValue(int, float); 581 method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withIntValue(int, int); 582 } 583 584 public static class CarDiagnosticEvent.CommonIgnitionMonitors { 585 method @Nullable public android.car.diagnostic.CarDiagnosticEvent.CompressionIgnitionMonitors asCompressionIgnitionMonitors(); 586 method @Nullable public android.car.diagnostic.CarDiagnosticEvent.SparkIgnitionMonitors asSparkIgnitionMonitors(); 587 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor components; 588 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor fuelSystem; 589 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor misfire; 590 } 591 592 public static final class CarDiagnosticEvent.CompressionIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors { 593 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGROrVVT; 594 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NMHCCatalyst; 595 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NOxSCR; 596 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor PMFilter; 597 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor boostPressure; 598 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor exhaustGasSensor; 599 } 600 601 public static final class CarDiagnosticEvent.FuelSystemStatus { 602 field public static final int CLOSED_LOOP = 2; // 0x2 603 field public static final int CLOSED_LOOP_BUT_FEEDBACK_FAULT = 16; // 0x10 604 field public static final int OPEN_ENGINE_LOAD_OR_DECELERATION = 4; // 0x4 605 field public static final int OPEN_INSUFFICIENT_ENGINE_TEMPERATURE = 1; // 0x1 606 field public static final int OPEN_SYSTEM_FAILURE = 8; // 0x8 607 } 608 609 @IntDef({android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.OPEN_INSUFFICIENT_ENGINE_TEMPERATURE, android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.CLOSED_LOOP, android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.OPEN_ENGINE_LOAD_OR_DECELERATION, android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.OPEN_SYSTEM_FAILURE, android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.CLOSED_LOOP_BUT_FEEDBACK_FAULT}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CarDiagnosticEvent.FuelSystemStatus.Status { 610 } 611 612 public static final class CarDiagnosticEvent.FuelType { 613 field public static final int BIFUEL_RUNNING_CNG = 13; // 0xd 614 field public static final int BIFUEL_RUNNING_DIESEL = 23; // 0x17 615 field public static final int BIFUEL_RUNNING_ELECTRIC = 15; // 0xf 616 field public static final int BIFUEL_RUNNING_ELECTRIC_AND_COMBUSTION = 16; // 0x10 617 field public static final int BIFUEL_RUNNING_ETHANOL = 11; // 0xb 618 field public static final int BIFUEL_RUNNING_GASOLINE = 9; // 0x9 619 field public static final int BIFUEL_RUNNING_LPG = 12; // 0xc 620 field public static final int BIFUEL_RUNNING_METHANOL = 10; // 0xa 621 field public static final int BIFUEL_RUNNING_PROPANE = 14; // 0xe 622 field public static final int CNG = 6; // 0x6 623 field public static final int DIESEL = 4; // 0x4 624 field public static final int ELECTRIC = 8; // 0x8 625 field public static final int ETHANOL = 3; // 0x3 626 field public static final int GASOLINE = 1; // 0x1 627 field public static final int HYBRID_DIESEL = 19; // 0x13 628 field public static final int HYBRID_ELECTRIC = 20; // 0x14 629 field public static final int HYBRID_ETHANOL = 18; // 0x12 630 field public static final int HYBRID_GASOLINE = 17; // 0x11 631 field public static final int HYBRID_REGENERATIVE = 22; // 0x16 632 field public static final int HYBRID_RUNNING_ELECTRIC_AND_COMBUSTION = 21; // 0x15 633 field public static final int LPG = 5; // 0x5 634 field public static final int METHANOL = 2; // 0x2 635 field public static final int NOT_AVAILABLE = 0; // 0x0 636 field public static final int PROPANE = 7; // 0x7 637 } 638 639 @IntDef({android.car.diagnostic.CarDiagnosticEvent.FuelType.NOT_AVAILABLE, android.car.diagnostic.CarDiagnosticEvent.FuelType.GASOLINE, android.car.diagnostic.CarDiagnosticEvent.FuelType.METHANOL, android.car.diagnostic.CarDiagnosticEvent.FuelType.ETHANOL, android.car.diagnostic.CarDiagnosticEvent.FuelType.DIESEL, android.car.diagnostic.CarDiagnosticEvent.FuelType.LPG, android.car.diagnostic.CarDiagnosticEvent.FuelType.CNG, android.car.diagnostic.CarDiagnosticEvent.FuelType.PROPANE, android.car.diagnostic.CarDiagnosticEvent.FuelType.ELECTRIC, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_GASOLINE, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_METHANOL, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_ETHANOL, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_LPG, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_CNG, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_PROPANE, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_ELECTRIC, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_ELECTRIC_AND_COMBUSTION, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_GASOLINE, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_ETHANOL, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_DIESEL, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_ELECTRIC, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_RUNNING_ELECTRIC_AND_COMBUSTION, android.car.diagnostic.CarDiagnosticEvent.FuelType.HYBRID_REGENERATIVE, android.car.diagnostic.CarDiagnosticEvent.FuelType.BIFUEL_RUNNING_DIESEL}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CarDiagnosticEvent.FuelType.Type { 640 } 641 642 public static final class CarDiagnosticEvent.IgnitionMonitor { 643 field public final boolean available; 644 field public final boolean incomplete; 645 } 646 647 public static final class CarDiagnosticEvent.SecondaryAirStatus { 648 field public static final int DOWNSTREAM_OF_CATALYCIC_CONVERTER = 2; // 0x2 649 field public static final int FROM_OUTSIDE_OR_OFF = 4; // 0x4 650 field public static final int PUMP_ON_FOR_DIAGNOSTICS = 8; // 0x8 651 field public static final int UPSTREAM = 1; // 0x1 652 } 653 654 @IntDef({android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.UPSTREAM, android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.DOWNSTREAM_OF_CATALYCIC_CONVERTER, android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.FROM_OUTSIDE_OR_OFF, android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.PUMP_ON_FOR_DIAGNOSTICS}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CarDiagnosticEvent.SecondaryAirStatus.Status { 655 } 656 657 public static final class CarDiagnosticEvent.SparkIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors { 658 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor ACRefrigerant; 659 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGR; 660 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor catalyst; 661 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor evaporativeSystem; 662 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor heatedCatalyst; 663 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensor; 664 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensorHeater; 665 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor secondaryAirSystem; 666 } 667 668 public final class CarDiagnosticManager { 669 method @RequiresPermission(android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR) public boolean clearFreezeFrames(long...); 670 method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public android.car.diagnostic.CarDiagnosticEvent getFreezeFrame(long); 671 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public long[] getFreezeFrameTimestamps(); 672 method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public android.car.diagnostic.CarDiagnosticEvent getLatestLiveFrame(); 673 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public boolean isClearFreezeFramesSupported(); 674 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public boolean isFreezeFrameNotificationSupported(); 675 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public boolean isGetFreezeFrameSupported(); 676 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public boolean isLiveFrameSupported(); 677 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public boolean isSelectiveClearFreezeFramesSupported(); 678 method public void onCarDisconnected(); 679 method @RequiresPermission(android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL) public boolean registerListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener, @android.car.diagnostic.CarDiagnosticManager.FrameType int, int); 680 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_CAR_DIAGNOSTIC_READ_ALL, android.car.Car.PERMISSION_CAR_DIAGNOSTIC_CLEAR}) public void unregisterListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener); 681 field public static final int FRAME_TYPE_FREEZE = 1; // 0x1 682 field public static final int FRAME_TYPE_LIVE = 0; // 0x0 683 } 684 685 @IntDef({android.car.diagnostic.CarDiagnosticManager.FRAME_TYPE_LIVE, android.car.diagnostic.CarDiagnosticManager.FRAME_TYPE_FREEZE}) @java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.SOURCE) public static @interface CarDiagnosticManager.FrameType { 686 } 687 688 public static interface CarDiagnosticManager.OnDiagnosticEventListener { 689 method public void onDiagnosticEvent(android.car.diagnostic.CarDiagnosticEvent); 690 } 691 692 public final class FloatSensorIndex { 693 field public static final int ABSOLUTE_EVAPORATION_SYSTEM_VAPOR_PRESSURE = 58; // 0x3a 694 field public static final int ABSOLUTE_LOAD_VALUE = 48; // 0x30 695 field public static final int ABSOLUTE_THROTTLE_POSITION_B = 51; // 0x33 696 field public static final int ABSOLUTE_THROTTLE_POSITION_C = 52; // 0x34 697 field public static final int ACCELERATOR_PEDAL_POSITION_D = 53; // 0x35 698 field public static final int ACCELERATOR_PEDAL_POSITION_E = 54; // 0x36 699 field public static final int ACCELERATOR_PEDAL_POSITION_F = 55; // 0x37 700 field public static final int CALCULATED_ENGINE_LOAD = 0; // 0x0 701 field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR1 = 44; // 0x2c 702 field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR2 = 46; // 0x2e 703 field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR1 = 45; // 0x2d 704 field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR2 = 47; // 0x2f 705 field public static final int COMMANDED_EVAPORATIVE_PURGE = 41; // 0x29 706 field public static final int COMMANDED_EXHAUST_GAS_RECIRCULATION = 39; // 0x27 707 field public static final int COMMANDED_THROTTLE_ACTUATOR = 56; // 0x38 708 field public static final int ENGINE_COOLANT_TEMPERATURE = 1; // 0x1 709 field public static final int ENGINE_FUEL_RATE = 70; // 0x46 710 field public static final int ENGINE_RPM = 8; // 0x8 711 field public static final int ETHANOL_FUEL_PERCENTAGE = 57; // 0x39 712 field public static final int EVAPORATION_SYSTEM_VAPOR_PRESSURE = 43; // 0x2b 713 field public static final int EXHAUST_GAS_RECIRCULATION_ERROR = 40; // 0x28 714 field public static final int FUEL_AIR_COMMANDED_EQUIVALENCE_RATIO = 49; // 0x31 715 field public static final int FUEL_INJECTION_TIMING = 69; // 0x45 716 field public static final int FUEL_PRESSURE = 6; // 0x6 717 field public static final int FUEL_RAIL_GAUGE_PRESSURE = 38; // 0x26 718 field public static final int FUEL_RAIL_PRESSURE = 37; // 0x25 719 field public static final int FUEL_TANK_LEVEL_INPUT = 42; // 0x2a 720 field public static final int HYBRID_BATTERY_PACK_REMAINING_LIFE = 68; // 0x44 721 field public static final int INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 7; // 0x7 722 field public static final int LAST_SYSTEM = 70; // 0x46 723 field public static final int LONG_TERM_FUEL_TRIM_BANK1 = 3; // 0x3 724 field public static final int LONG_TERM_FUEL_TRIM_BANK2 = 5; // 0x5 725 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 63; // 0x3f 726 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 64; // 0x40 727 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 65; // 0x41 728 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 66; // 0x42 729 field public static final int MAF_AIR_FLOW_RATE = 11; // 0xb 730 field public static final int OXYGEN_SENSOR1_FUEL_AIR_EQUIVALENCE_RATIO = 15; // 0xf 731 field public static final int OXYGEN_SENSOR1_SHORT_TERM_FUEL_TRIM = 14; // 0xe 732 field public static final int OXYGEN_SENSOR1_VOLTAGE = 13; // 0xd 733 field public static final int OXYGEN_SENSOR2_FUEL_AIR_EQUIVALENCE_RATIO = 18; // 0x12 734 field public static final int OXYGEN_SENSOR2_SHORT_TERM_FUEL_TRIM = 17; // 0x11 735 field public static final int OXYGEN_SENSOR2_VOLTAGE = 16; // 0x10 736 field public static final int OXYGEN_SENSOR3_FUEL_AIR_EQUIVALENCE_RATIO = 21; // 0x15 737 field public static final int OXYGEN_SENSOR3_SHORT_TERM_FUEL_TRIM = 20; // 0x14 738 field public static final int OXYGEN_SENSOR3_VOLTAGE = 19; // 0x13 739 field public static final int OXYGEN_SENSOR4_FUEL_AIR_EQUIVALENCE_RATIO = 24; // 0x18 740 field public static final int OXYGEN_SENSOR4_SHORT_TERM_FUEL_TRIM = 23; // 0x17 741 field public static final int OXYGEN_SENSOR4_VOLTAGE = 22; // 0x16 742 field public static final int OXYGEN_SENSOR5_FUEL_AIR_EQUIVALENCE_RATIO = 27; // 0x1b 743 field public static final int OXYGEN_SENSOR5_SHORT_TERM_FUEL_TRIM = 26; // 0x1a 744 field public static final int OXYGEN_SENSOR5_VOLTAGE = 25; // 0x19 745 field public static final int OXYGEN_SENSOR6_FUEL_AIR_EQUIVALENCE_RATIO = 30; // 0x1e 746 field public static final int OXYGEN_SENSOR6_SHORT_TERM_FUEL_TRIM = 29; // 0x1d 747 field public static final int OXYGEN_SENSOR6_VOLTAGE = 28; // 0x1c 748 field public static final int OXYGEN_SENSOR7_FUEL_AIR_EQUIVALENCE_RATIO = 33; // 0x21 749 field public static final int OXYGEN_SENSOR7_SHORT_TERM_FUEL_TRIM = 32; // 0x20 750 field public static final int OXYGEN_SENSOR7_VOLTAGE = 31; // 0x1f 751 field public static final int OXYGEN_SENSOR8_FUEL_AIR_EQUIVALENCE_RATIO = 36; // 0x24 752 field public static final int OXYGEN_SENSOR8_SHORT_TERM_FUEL_TRIM = 35; // 0x23 753 field public static final int OXYGEN_SENSOR8_VOLTAGE = 34; // 0x22 754 field public static final int RELATIVE_ACCELERATOR_PEDAL_POSITION = 67; // 0x43 755 field public static final int RELATIVE_THROTTLE_POSITION = 50; // 0x32 756 field public static final int SHORT_TERM_FUEL_TRIM_BANK1 = 2; // 0x2 757 field public static final int SHORT_TERM_FUEL_TRIM_BANK2 = 4; // 0x4 758 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 59; // 0x3b 759 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 60; // 0x3c 760 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 61; // 0x3d 761 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 62; // 0x3e 762 field public static final int THROTTLE_POSITION = 12; // 0xc 763 field public static final int TIMING_ADVANCE = 10; // 0xa 764 field public static final int VEHICLE_SPEED = 9; // 0x9 765 field public static final int VENDOR_START = 71; // 0x47 766 } 767 768 public final class IntegerSensorIndex { 769 field public static final int ABSOLUTE_BAROMETRIC_PRESSURE = 11; // 0xb 770 field public static final int AMBIENT_AIR_TEMPERATURE = 13; // 0xd 771 field public static final int COMMANDED_SECONDARY_AIR_STATUS = 5; // 0x5 772 field public static final int CONTROL_MODULE_VOLTAGE = 12; // 0xc 773 field public static final int DISTANCE_TRAVELED_SINCE_CODES_CLEARED = 10; // 0xa 774 field public static final int DISTANCE_TRAVELED_WITH_MALFUNCTION_INDICATOR_LIGHT_ON = 8; // 0x8 775 field public static final int DRIVER_DEMAND_PERCENT_TORQUE = 24; // 0x18 776 field public static final int ENGINE_ACTUAL_PERCENT_TORQUE = 25; // 0x19 777 field public static final int ENGINE_OIL_TEMPERATURE = 23; // 0x17 778 field public static final int ENGINE_PERCENT_TORQUE_DATA_IDLE = 27; // 0x1b 779 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT1 = 28; // 0x1c 780 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT2 = 29; // 0x1d 781 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT3 = 30; // 0x1e 782 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT4 = 31; // 0x1f 783 field public static final int ENGINE_REFERENCE_PERCENT_TORQUE = 26; // 0x1a 784 field public static final int FUEL_RAIL_ABSOLUTE_PRESSURE = 22; // 0x16 785 field public static final int FUEL_SYSTEM_STATUS = 0; // 0x0 786 field public static final int FUEL_TYPE = 21; // 0x15 787 field public static final int IGNITION_MONITORS_SUPPORTED = 2; // 0x2 788 field public static final int IGNITION_SPECIFIC_MONITORS = 3; // 0x3 789 field public static final int INTAKE_AIR_TEMPERATURE = 4; // 0x4 790 field public static final int LAST_SYSTEM = 31; // 0x1f 791 field public static final int MALFUNCTION_INDICATOR_LIGHT_ON = 1; // 0x1 792 field public static final int MAX_AIR_FLOW_RATE_FROM_MASS_AIR_FLOW_SENSOR = 20; // 0x14 793 field public static final int MAX_FUEL_AIR_EQUIVALENCE_RATIO = 16; // 0x10 794 field public static final int MAX_INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 19; // 0x13 795 field public static final int MAX_OXYGEN_SENSOR_CURRENT = 18; // 0x12 796 field public static final int MAX_OXYGEN_SENSOR_VOLTAGE = 17; // 0x11 797 field public static final int NUM_OXYGEN_SENSORS_PRESENT = 6; // 0x6 798 field public static final int RUNTIME_SINCE_ENGINE_START = 7; // 0x7 799 field public static final int TIME_SINCE_TROUBLE_CODES_CLEARED = 15; // 0xf 800 field public static final int TIME_WITH_MALFUNCTION_LIGHT_ON = 14; // 0xe 801 field public static final int VENDOR_START = 32; // 0x20 802 field public static final int WARMUPS_SINCE_CODES_CLEARED = 9; // 0x9 803 } 804 805} 806 807package android.car.drivingstate { 808 809 public final class CarDrivingStateEvent implements android.os.Parcelable { 810 ctor public CarDrivingStateEvent(int, long); 811 method public int describeContents(); 812 method public void writeToParcel(android.os.Parcel, int); 813 field public static final android.os.Parcelable.Creator<android.car.drivingstate.CarDrivingStateEvent> CREATOR; 814 field public static final int DRIVING_STATE_IDLING = 1; // 0x1 815 field public static final int DRIVING_STATE_MOVING = 2; // 0x2 816 field public static final int DRIVING_STATE_PARKED = 0; // 0x0 817 field public static final int DRIVING_STATE_UNKNOWN = -1; // 0xffffffff 818 field public final int eventValue; 819 field public final long timeStamp; 820 } 821 822 public final class CarDrivingStateManager { 823 method @Nullable public android.car.drivingstate.CarDrivingStateEvent getCurrentCarDrivingState(); 824 method public void registerListener(@NonNull android.car.drivingstate.CarDrivingStateManager.CarDrivingStateEventListener); 825 method public void unregisterListener(); 826 } 827 828 public static interface CarDrivingStateManager.CarDrivingStateEventListener { 829 method public void onDrivingStateChanged(android.car.drivingstate.CarDrivingStateEvent); 830 } 831 832 public final class CarUxRestrictionsConfiguration implements android.os.Parcelable { 833 method public int describeContents(); 834 method public int getDisplayType(); 835 method public int getOccupantZoneId(); 836 method @Nullable public Integer getPhysicalPort(); 837 method @NonNull public android.car.drivingstate.CarUxRestrictions getUxRestrictions(int, float); 838 method @NonNull public android.car.drivingstate.CarUxRestrictions getUxRestrictions(int, @FloatRange(from=0.0f) float, @NonNull String); 839 method public void writeToParcel(@NonNull android.os.Parcel, int); 840 field @NonNull public static final android.os.Parcelable.Creator<android.car.drivingstate.CarUxRestrictionsConfiguration> CREATOR; 841 } 842 843 public final class CarUxRestrictionsManager { 844 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration> getConfigs(); 845 method @Nullable public android.car.drivingstate.CarUxRestrictions getCurrentCarUxRestrictions(int); 846 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public String getRestrictionMode(); 847 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration> getStagedConfigs(); 848 method public void onCarDisconnected(); 849 method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean saveUxRestrictionsConfigurationForNextBoot(@NonNull java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration>); 850 method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean saveUxRestrictionsConfigurationForNextBoot(@NonNull android.car.drivingstate.CarUxRestrictionsConfiguration); 851 method @Deprecated public void setListener(int, @NonNull android.car.drivingstate.CarUxRestrictionsManager.OnUxRestrictionsChangedListener); 852 method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean setRestrictionMode(@NonNull String); 853 field public static final String UX_RESTRICTION_MODE_BASELINE = "baseline"; 854 } 855 856} 857 858package android.car.evs { 859 860 public final class CarEvsBufferDescriptor implements java.lang.AutoCloseable android.os.Parcelable { 861 ctor public CarEvsBufferDescriptor(int, @NonNull android.hardware.HardwareBuffer); 862 ctor @FlaggedApi("android.car.feature.car_evs_stream_management") public CarEvsBufferDescriptor(int, int, @NonNull android.hardware.HardwareBuffer); 863 method public void close(); 864 method public int describeContents(); 865 method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer(); 866 method public int getId(); 867 method @FlaggedApi("android.car.feature.car_evs_stream_management") public int getType(); 868 method public void writeToParcel(@NonNull android.os.Parcel, int); 869 field @NonNull public static final android.os.Parcelable.Creator<android.car.evs.CarEvsBufferDescriptor> CREATOR; 870 } 871 872 public final class CarEvsManager { 873 method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public void clearStatusListener(); 874 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_EVS_ACTIVITY) public android.os.IBinder generateSessionToken(); 875 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public android.car.evs.CarEvsStatus getCurrentStatus(); 876 method @FlaggedApi("android.car.feature.car_evs_query_service_status") @Nullable @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public android.car.evs.CarEvsStatus getCurrentStatus(int); 877 method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public boolean isSupported(int); 878 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public void returnFrameBuffer(@NonNull android.car.evs.CarEvsBufferDescriptor); 879 method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public void setStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.evs.CarEvsManager.CarEvsStatusListener); 880 method @RequiresPermission(android.car.Car.PERMISSION_REQUEST_CAR_EVS_ACTIVITY) public int startActivity(int); 881 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public int startVideoStream(int, @Nullable android.os.IBinder, @NonNull java.util.concurrent.Executor, @NonNull android.car.evs.CarEvsManager.CarEvsStreamCallback); 882 method @RequiresPermission(android.car.Car.PERMISSION_REQUEST_CAR_EVS_ACTIVITY) public void stopActivity(); 883 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public void stopVideoStream(); 884 method @FlaggedApi("android.car.feature.car_evs_stream_management") @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public void stopVideoStream(int); 885 field public static final int ERROR_BUSY = -2; // 0xfffffffe 886 field public static final int ERROR_NONE = 0; // 0x0 887 field public static final int ERROR_UNAVAILABLE = -1; // 0xffffffff 888 field public static final String EXTRA_SESSION_TOKEN = "android.car.evs.extra.SESSION_TOKEN"; 889 field public static final int SERVICE_STATE_ACTIVE = 3; // 0x3 890 field public static final int SERVICE_STATE_INACTIVE = 1; // 0x1 891 field public static final int SERVICE_STATE_REQUESTED = 2; // 0x2 892 field public static final int SERVICE_STATE_UNAVAILABLE = 0; // 0x0 893 field public static final int SERVICE_TYPE_DRIVERVIEW = 5; // 0x5 894 field public static final int SERVICE_TYPE_FRONTVIEW = 2; // 0x2 895 field public static final int SERVICE_TYPE_FRONT_PASSENGERSVIEW = 6; // 0x6 896 field public static final int SERVICE_TYPE_LEFTVIEW = 3; // 0x3 897 field public static final int SERVICE_TYPE_REARVIEW = 0; // 0x0 898 field public static final int SERVICE_TYPE_REAR_PASSENGERSVIEW = 7; // 0x7 899 field public static final int SERVICE_TYPE_RIGHTVIEW = 4; // 0x4 900 field public static final int SERVICE_TYPE_SURROUNDVIEW = 1; // 0x1 901 field @FlaggedApi("android.car.feature.car_evs_stream_management") public static final int SERVICE_TYPE_UNKNOWN = -1; // 0xffffffff 902 field public static final int SERVICE_TYPE_USER_DEFINED = 1000; // 0x3e8 903 field public static final int STREAM_EVENT_FRAME_DROPPED = 3; // 0x3 904 field public static final int STREAM_EVENT_NONE = 0; // 0x0 905 field public static final int STREAM_EVENT_OTHER_ERRORS = 7; // 0x7 906 field public static final int STREAM_EVENT_PARAMETER_CHANGED = 5; // 0x5 907 field public static final int STREAM_EVENT_PRIMARY_OWNER_CHANGED = 6; // 0x6 908 field public static final int STREAM_EVENT_STREAM_STARTED = 1; // 0x1 909 field public static final int STREAM_EVENT_STREAM_STOPPED = 2; // 0x2 910 field public static final int STREAM_EVENT_TIMEOUT = 4; // 0x4 911 } 912 913 public static interface CarEvsManager.CarEvsStatusListener { 914 method public void onStatusChanged(@NonNull android.car.evs.CarEvsStatus); 915 } 916 917 public static interface CarEvsManager.CarEvsStreamCallback { 918 method public default void onNewFrame(@NonNull android.car.evs.CarEvsBufferDescriptor); 919 method @Deprecated public default void onStreamEvent(int); 920 method @FlaggedApi("android.car.feature.car_evs_stream_management") public default void onStreamEvent(int, int); 921 } 922 923 public final class CarEvsStatus implements android.os.Parcelable { 924 ctor public CarEvsStatus(int, int); 925 method public int describeContents(); 926 method public int getServiceType(); 927 method public int getState(); 928 method public void writeToParcel(@NonNull android.os.Parcel, int); 929 field @NonNull public static final android.os.Parcelable.Creator<android.car.evs.CarEvsStatus> CREATOR; 930 } 931 932} 933 934package android.car.hardware { 935 936 public final class CarHvacFanDirection { 937 field public static final int DEFROST = 4; // 0x4 938 field public static final int DEFROST_AND_FLOOR = 6; // 0x6 939 field public static final int FACE = 1; // 0x1 940 field public static final int FACE_AND_DEFROST = 5; // 0x5 941 field public static final int FACE_AND_FLOOR = 3; // 0x3 942 field public static final int FACE_DEFROST_AND_FLOOR = 7; // 0x7 943 field public static final int FLOOR = 2; // 0x2 944 field public static final int UNKNOWN = 0; // 0x0 945 } 946 947 public final class CarPropertyConfig<T> implements android.os.Parcelable { 948 method @Deprecated public static <T> android.car.hardware.CarPropertyConfig.Builder<T> newBuilder(Class<T>, int, int, int); 949 } 950 951 @Deprecated public static class CarPropertyConfig.Builder<T> { 952 method @Deprecated @NonNull public android.car.hardware.CarPropertyConfig.Builder<T> addAreaIdConfig(@NonNull android.car.hardware.property.AreaIdConfig<T>); 953 method @Deprecated public android.car.hardware.CarPropertyConfig<T> build(); 954 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setAccess(int); 955 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setChangeMode(int); 956 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setConfigArray(java.util.ArrayList<java.lang.Integer>); 957 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setConfigString(String); 958 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setMaxSampleRate(float); 959 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setMinSampleRate(float); 960 } 961 962 @Deprecated public final class CarVendorExtensionManager { 963 method @Deprecated public <E> E getGlobalProperty(Class<E>, int); 964 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getProperties(); 965 method @Deprecated public <E> E getProperty(Class<E>, int, int); 966 method @Deprecated public boolean isPropertyAvailable(int, int); 967 method @Deprecated public void registerCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback); 968 method @Deprecated public <E> void setGlobalProperty(Class<E>, int, E); 969 method @Deprecated public <E> void setProperty(Class<E>, int, int, E); 970 method @Deprecated public void unregisterCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback); 971 } 972 973 @Deprecated public static interface CarVendorExtensionManager.CarVendorExtensionCallback { 974 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 975 method @Deprecated public void onErrorEvent(int, int); 976 } 977 978} 979 980package android.car.hardware.cabin { 981 982 @Deprecated public final class CarCabinManager { 983 method @Deprecated public boolean getBooleanProperty(int, int); 984 method @Deprecated public float getFloatProperty(int, int); 985 method @Deprecated public int getIntProperty(int, int); 986 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList(); 987 method @Deprecated public static boolean isZonedProperty(int); 988 method @Deprecated public void registerCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback); 989 method @Deprecated public void setBooleanProperty(int, int, boolean); 990 method @Deprecated public void setFloatProperty(int, int, float); 991 method @Deprecated public void setIntProperty(int, int, int); 992 method @Deprecated public void unregisterCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback); 993 field @Deprecated public static final int ID_DOOR_LOCK = 371198722; // 0x16200b02 994 field @Deprecated public static final int ID_DOOR_MOVE = 373295873; // 0x16400b01 995 field @Deprecated public static final int ID_DOOR_POS = 373295872; // 0x16400b00 996 field @Deprecated public static final int ID_MIRROR_FOLD = 287312709; // 0x11200b45 997 field @Deprecated public static final int ID_MIRROR_LOCK = 287312708; // 0x11200b44 998 field @Deprecated public static final int ID_MIRROR_Y_MOVE = 339741507; // 0x14400b43 999 field @Deprecated public static final int ID_MIRROR_Y_POS = 339741506; // 0x14400b42 1000 field @Deprecated public static final int ID_MIRROR_Z_MOVE = 339741505; // 0x14400b41 1001 field @Deprecated public static final int ID_MIRROR_Z_POS = 339741504; // 0x14400b40 1002 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_MOVE = 356518792; // 0x15400b88 1003 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_POS = 356518791; // 0x15400b87 1004 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_MOVE = 356518794; // 0x15400b8a 1005 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_POS = 356518793; // 0x15400b89 1006 field @Deprecated public static final int ID_SEAT_BELT_BUCKLED = 354421634; // 0x15200b82 1007 field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_MOVE = 356518788; // 0x15400b84 1008 field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_POS = 356518787; // 0x15400b83 1009 field @Deprecated public static final int ID_SEAT_DEPTH_MOVE = 356518798; // 0x15400b8e 1010 field @Deprecated public static final int ID_SEAT_DEPTH_POS = 356518797; // 0x15400b8d 1011 field @Deprecated public static final int ID_SEAT_FORE_AFT_MOVE = 356518790; // 0x15400b86 1012 field @Deprecated public static final int ID_SEAT_FORE_AFT_POS = 356518789; // 0x15400b85 1013 field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_MOVE = 356518808; // 0x15400b98 1014 field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_POS = 356518807; // 0x15400b97 1015 field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_MOVE = 356518810; // 0x15400b9a 1016 field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_POS = 356518809; // 0x15400b99 1017 field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_MOVE = 356518806; // 0x15400b96 1018 field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_POS = 356518805; // 0x15400b95 1019 field @Deprecated public static final int ID_SEAT_HEIGHT_MOVE = 356518796; // 0x15400b8c 1020 field @Deprecated public static final int ID_SEAT_HEIGHT_POS = 356518795; // 0x15400b8b 1021 field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_MOVE = 356518802; // 0x15400b92 1022 field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_POS = 356518801; // 0x15400b91 1023 field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 356518804; // 0x15400b94 1024 field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_POS = 356518803; // 0x15400b93 1025 field @Deprecated public static final int ID_SEAT_MEMORY_SELECT = 356518784; // 0x15400b80 1026 field @Deprecated public static final int ID_SEAT_MEMORY_SET = 356518785; // 0x15400b81 1027 field @Deprecated public static final int ID_SEAT_TILT_MOVE = 356518800; // 0x15400b90 1028 field @Deprecated public static final int ID_SEAT_TILT_POS = 356518799; // 0x15400b8f 1029 field @Deprecated public static final int ID_WINDOW_LOCK = 322964420; // 0x13400bc4 1030 field @Deprecated public static final int ID_WINDOW_MOVE = 322964417; // 0x13400bc1 1031 field @Deprecated public static final int ID_WINDOW_POS = 322964416; // 0x13400bc0 1032 } 1033 1034 @Deprecated public static interface CarCabinManager.CarCabinEventCallback { 1035 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 1036 method @Deprecated public void onErrorEvent(int, int); 1037 } 1038 1039} 1040 1041package android.car.hardware.hvac { 1042 1043 @Deprecated public final class CarHvacManager { 1044 method @Deprecated public boolean getBooleanProperty(int, int); 1045 method @Deprecated public float getFloatProperty(int, int); 1046 method @Deprecated public int getIntProperty(int, int); 1047 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList(); 1048 method @Deprecated public boolean isPropertyAvailable(int, int); 1049 method @Deprecated public void registerCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback); 1050 method @Deprecated public void setBooleanProperty(int, int, boolean); 1051 method @Deprecated public void setFloatProperty(int, int, float); 1052 method @Deprecated public void setIntProperty(int, int, int); 1053 method @Deprecated public void unregisterCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback); 1054 field @Deprecated public static final int FAN_DIRECTION_DEFROST = 4; // 0x4 1055 field @Deprecated public static final int FAN_DIRECTION_FACE = 1; // 0x1 1056 field @Deprecated public static final int FAN_DIRECTION_FLOOR = 2; // 0x2 1057 field @Deprecated public static final int ID_MIRROR_DEFROSTER_ON = 339739916; // 0x1440050c 1058 field @Deprecated public static final int ID_OUTSIDE_AIR_TEMP = 291505923; // 0x11600703 1059 field @Deprecated public static final int ID_STEERING_WHEEL_HEAT = 289408269; // 0x1140050d 1060 field @Deprecated public static final int ID_TEMPERATURE_DISPLAY_UNITS = 289408270; // 0x1140050e 1061 field @Deprecated public static final int ID_WINDOW_DEFROSTER_ON = 320865540; // 0x13200504 1062 field @Deprecated public static final int ID_ZONED_AC_ON = 354419973; // 0x15200505 1063 field @Deprecated public static final int ID_ZONED_AIR_RECIRCULATION_ON = 354419976; // 0x15200508 1064 field @Deprecated public static final int ID_ZONED_AUTOMATIC_MODE_ON = 354419978; // 0x1520050a 1065 field @Deprecated public static final int ID_ZONED_DUAL_ZONE_ON = 354419977; // 0x15200509 1066 field @Deprecated public static final int ID_ZONED_FAN_DIRECTION = 356517121; // 0x15400501 1067 field @Deprecated public static final int ID_ZONED_FAN_DIRECTION_AVAILABLE = 356582673; // 0x15410511 1068 field @Deprecated public static final int ID_ZONED_FAN_SPEED_RPM = 356517135; // 0x1540050f 1069 field @Deprecated public static final int ID_ZONED_FAN_SPEED_SETPOINT = 356517120; // 0x15400500 1070 field @Deprecated public static final int ID_ZONED_HVAC_AUTO_RECIRC_ON = 354419986; // 0x15200512 1071 field @Deprecated public static final int ID_ZONED_HVAC_POWER_ON = 354419984; // 0x15200510 1072 field @Deprecated public static final int ID_ZONED_MAX_AC_ON = 354419974; // 0x15200506 1073 field @Deprecated public static final int ID_ZONED_MAX_DEFROST_ON = 354419975; // 0x15200507 1074 field @Deprecated public static final int ID_ZONED_SEAT_TEMP = 356517131; // 0x1540050b 1075 field @Deprecated public static final int ID_ZONED_TEMP_ACTUAL = 358614274; // 0x15600502 1076 field @Deprecated public static final int ID_ZONED_TEMP_SETPOINT = 358614275; // 0x15600503 1077 } 1078 1079 @Deprecated public static interface CarHvacManager.CarHvacEventCallback { 1080 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 1081 method @Deprecated public void onErrorEvent(int, int); 1082 } 1083 1084} 1085 1086package android.car.hardware.power { 1087 1088 public class CarPowerManager { 1089 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void applyPowerPolicy(@NonNull String); 1090 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void clearListener(); 1091 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public int getPowerState(); 1092 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void setDisplayPowerState(int, boolean); 1093 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void setListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListener); 1094 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_SHUTDOWN_PROCESS) public void setListenerWithCompletion(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListenerWithCompletion); 1095 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void setPowerPolicyGroup(@NonNull String); 1096 field public static final int STATE_HIBERNATION_ENTER = 9; // 0x9 1097 field public static final int STATE_HIBERNATION_EXIT = 10; // 0xa 1098 field public static final int STATE_INVALID = 0; // 0x0 1099 field public static final int STATE_ON = 6; // 0x6 1100 field public static final int STATE_POST_HIBERNATION_ENTER = 14; // 0xe 1101 field public static final int STATE_POST_SHUTDOWN_ENTER = 13; // 0xd 1102 field public static final int STATE_POST_SUSPEND_ENTER = 12; // 0xc 1103 field public static final int STATE_PRE_SHUTDOWN_PREPARE = 11; // 0xb 1104 field public static final int STATE_SHUTDOWN_CANCELLED = 8; // 0x8 1105 field public static final int STATE_SHUTDOWN_ENTER = 5; // 0x5 1106 field public static final int STATE_SHUTDOWN_PREPARE = 7; // 0x7 1107 field public static final int STATE_SUSPEND_ENTER = 2; // 0x2 1108 field public static final int STATE_SUSPEND_EXIT = 3; // 0x3 1109 field public static final int STATE_WAIT_FOR_VHAL = 1; // 0x1 1110 } 1111 1112 public static interface CarPowerManager.CarPowerStateListener { 1113 method public void onStateChanged(int); 1114 } 1115 1116 public static interface CarPowerManager.CarPowerStateListenerWithCompletion { 1117 method public void onStateChanged(int, @Nullable android.car.hardware.power.CarPowerManager.CompletablePowerStateChangeFuture); 1118 } 1119 1120 public static interface CarPowerManager.CompletablePowerStateChangeFuture { 1121 method public void complete(); 1122 method public long getExpirationTime(); 1123 } 1124 1125} 1126 1127package android.car.hardware.property { 1128 1129 @Deprecated public static final class AreaIdConfig.Builder<T> { 1130 ctor @Deprecated public AreaIdConfig.Builder(int); 1131 ctor @Deprecated @FlaggedApi("android.car.feature.area_id_config_access") public AreaIdConfig.Builder(int, int); 1132 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig<T> build(); 1133 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setMaxValue(T); 1134 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setMinValue(T); 1135 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setSupportedEnumValues(@NonNull java.util.List<T>); 1136 } 1137 1138 public final class AutomaticEmergencyBrakingState { 1139 method @NonNull public static String toString(int); 1140 field public static final int ACTIVATED = 2; // 0x2 1141 field public static final int ENABLED = 1; // 0x1 1142 field public static final int OTHER = 0; // 0x0 1143 field public static final int USER_OVERRIDE = 3; // 0x3 1144 } 1145 1146 public final class BlindSpotWarningState { 1147 method @NonNull public static String toString(int); 1148 field public static final int NO_WARNING = 1; // 0x1 1149 field public static final int OTHER = 0; // 0x0 1150 field public static final int WARNING = 2; // 0x2 1151 } 1152 1153 public class CarInternalErrorException extends java.lang.RuntimeException { 1154 method public int getVendorErrorCode(); 1155 } 1156 1157 public static final class CarPropertyManager.PropertyAsyncError { 1158 method public int getVendorErrorCode(); 1159 } 1160 1161 @FlaggedApi("android.car.feature.car_property_simulation") public final class CarPropertySimulationManager { 1162 method @FlaggedApi("android.car.feature.car_property_simulation") @NonNull @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public <T> android.car.hardware.CarPropertyValue<T> createCarPropertyValue(int, int, int, long, @NonNull T); 1163 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public void disableInjectionMode(); 1164 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public void enableInjectionMode(@NonNull java.util.List<java.lang.Integer>); 1165 method @FlaggedApi("android.car.feature.car_property_simulation") @Nullable @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public android.car.hardware.CarPropertyValue getLastInjectedVehicleProperty(int); 1166 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public void injectVehicleProperties(@NonNull java.util.List<android.car.hardware.CarPropertyValue>); 1167 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_RECORD_VEHICLE_PROPERTIES) public boolean isRecordingVehicleProperties(); 1168 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public boolean isVehiclePropertyInjectionModeEnabled(); 1169 method @FlaggedApi("android.car.feature.car_property_simulation") @NonNull @RequiresPermission(android.car.Car.PERMISSION_RECORD_VEHICLE_PROPERTIES) public java.util.List<android.car.hardware.CarPropertyConfig> startRecordingVehicleProperties(@Nullable java.util.concurrent.Executor, @NonNull android.car.hardware.property.CarPropertySimulationManager.CarRecorderListener); 1170 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_RECORD_VEHICLE_PROPERTIES) public void stopRecordingVehicleProperties(); 1171 } 1172 1173 @FlaggedApi("android.car.feature.car_property_simulation") public static interface CarPropertySimulationManager.CarRecorderListener { 1174 method @FlaggedApi("android.car.feature.car_property_simulation") public void onCarPropertyEvents(@NonNull java.util.List<android.car.hardware.CarPropertyValue<?>>); 1175 method @FlaggedApi("android.car.feature.car_property_simulation") public void onRecordingFinished(); 1176 } 1177 1178 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class CrossTrafficMonitoringWarningState { 1179 method @NonNull public static String toString(int); 1180 field public static final int NO_WARNING = 1; // 0x1 1181 field public static final int OTHER = 0; // 0x0 1182 field public static final int WARNING_FRONT_BOTH = 4; // 0x4 1183 field public static final int WARNING_FRONT_LEFT = 2; // 0x2 1184 field public static final int WARNING_FRONT_RIGHT = 3; // 0x3 1185 field public static final int WARNING_REAR_BOTH = 7; // 0x7 1186 field public static final int WARNING_REAR_LEFT = 5; // 0x5 1187 field public static final int WARNING_REAR_RIGHT = 6; // 0x6 1188 } 1189 1190 public class CruiseControlCommand { 1191 method @NonNull public static String toString(int); 1192 field public static final int ACTIVATE = 1; // 0x1 1193 field public static final int DECREASE_TARGET_SPEED = 4; // 0x4 1194 field public static final int DECREASE_TARGET_TIME_GAP = 6; // 0x6 1195 field public static final int INCREASE_TARGET_SPEED = 3; // 0x3 1196 field public static final int INCREASE_TARGET_TIME_GAP = 5; // 0x5 1197 field public static final int SUSPEND = 2; // 0x2 1198 } 1199 1200 public class CruiseControlState { 1201 method @NonNull public static String toString(int); 1202 field public static final int ACTIVATED = 2; // 0x2 1203 field public static final int ENABLED = 1; // 0x1 1204 field public static final int FORCED_DEACTIVATION_WARNING = 5; // 0x5 1205 field public static final int OTHER = 0; // 0x0 1206 field public static final int SUSPENDED = 4; // 0x4 1207 field public static final int USER_OVERRIDE = 3; // 0x3 1208 } 1209 1210 public class CruiseControlType { 1211 method @NonNull public static String toString(int); 1212 field public static final int ADAPTIVE = 2; // 0x2 1213 field public static final int OTHER = 0; // 0x0 1214 field public static final int PREDICTIVE = 3; // 0x3 1215 field public static final int STANDARD = 1; // 0x1 1216 } 1217 1218 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDistractionState { 1219 method @NonNull public static String toString(int); 1220 field public static final int DISTRACTED = 2; // 0x2 1221 field public static final int NOT_DISTRACTED = 1; // 0x1 1222 field public static final int OTHER = 0; // 0x0 1223 } 1224 1225 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDistractionWarning { 1226 method @NonNull public static String toString(int); 1227 field public static final int NO_WARNING = 1; // 0x1 1228 field public static final int OTHER = 0; // 0x0 1229 field public static final int WARNING = 2; // 0x2 1230 } 1231 1232 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDrowsinessAttentionState { 1233 method @NonNull public static String toString(int); 1234 field public static final int KSS_RATING_1_EXTREMELY_ALERT = 1; // 0x1 1235 field public static final int KSS_RATING_2_VERY_ALERT = 2; // 0x2 1236 field public static final int KSS_RATING_3_ALERT = 3; // 0x3 1237 field public static final int KSS_RATING_4_RATHER_ALERT = 4; // 0x4 1238 field public static final int KSS_RATING_5_NEITHER_ALERT_NOR_SLEEPY = 5; // 0x5 1239 field public static final int KSS_RATING_6_SOME_SLEEPINESS = 6; // 0x6 1240 field public static final int KSS_RATING_7_SLEEPY_NO_EFFORT = 7; // 0x7 1241 field public static final int KSS_RATING_8_SLEEPY_SOME_EFFORT = 8; // 0x8 1242 field public static final int KSS_RATING_9_VERY_SLEEPY = 9; // 0x9 1243 field public static final int OTHER = 0; // 0x0 1244 } 1245 1246 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDrowsinessAttentionWarning { 1247 method @NonNull public static String toString(int); 1248 field public static final int NO_WARNING = 1; // 0x1 1249 field public static final int OTHER = 0; // 0x0 1250 field public static final int WARNING = 2; // 0x2 1251 } 1252 1253 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class ElectronicStabilityControlState { 1254 method @NonNull public static String toString(int); 1255 field public static final int ACTIVATED = 2; // 0x2 1256 field public static final int ENABLED = 1; // 0x1 1257 field public static final int OTHER = 0; // 0x0 1258 } 1259 1260 public class EmergencyLaneKeepAssistState { 1261 method @NonNull public static String toString(int); 1262 field public static final int ACTIVATED_STEER_LEFT = 4; // 0x4 1263 field public static final int ACTIVATED_STEER_RIGHT = 5; // 0x5 1264 field public static final int ENABLED = 1; // 0x1 1265 field public static final int OTHER = 0; // 0x0 1266 field public static final int USER_OVERRIDE = 6; // 0x6 1267 field public static final int WARNING_LEFT = 2; // 0x2 1268 field public static final int WARNING_RIGHT = 3; // 0x3 1269 } 1270 1271 public final class ErrorState { 1272 method @NonNull public static String toString(int); 1273 field public static final int NOT_AVAILABLE_DISABLED = -2; // 0xfffffffe 1274 field public static final int NOT_AVAILABLE_POOR_VISIBILITY = -5; // 0xfffffffb 1275 field public static final int NOT_AVAILABLE_SAFETY = -6; // 0xfffffffa 1276 field public static final int NOT_AVAILABLE_SPEED_HIGH = -4; // 0xfffffffc 1277 field public static final int NOT_AVAILABLE_SPEED_LOW = -3; // 0xfffffffd 1278 field public static final int OTHER_ERROR_STATE = -1; // 0xffffffff 1279 } 1280 1281 public final class EvStoppingMode { 1282 method @NonNull public static String toString(int); 1283 field public static final int STATE_CREEP = 1; // 0x1 1284 field public static final int STATE_HOLD = 3; // 0x3 1285 field public static final int STATE_OTHER = 0; // 0x0 1286 field public static final int STATE_ROLL = 2; // 0x2 1287 } 1288 1289 public final class ForwardCollisionWarningState { 1290 method @NonNull public static String toString(int); 1291 field public static final int NO_WARNING = 1; // 0x1 1292 field public static final int OTHER = 0; // 0x0 1293 field public static final int WARNING = 2; // 0x2 1294 } 1295 1296 public class HandsOnDetectionDriverState { 1297 method @NonNull public static String toString(int); 1298 field public static final int HANDS_OFF = 2; // 0x2 1299 field public static final int HANDS_ON = 1; // 0x1 1300 field public static final int OTHER = 0; // 0x0 1301 } 1302 1303 public class HandsOnDetectionWarning { 1304 method @NonNull public static String toString(int); 1305 field public static final int NO_WARNING = 1; // 0x1 1306 field public static final int OTHER = 0; // 0x0 1307 field public static final int WARNING = 2; // 0x2 1308 } 1309 1310 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class ImpactSensorLocation { 1311 method @NonNull public static String toString(int); 1312 field public static final int FRONT = 2; // 0x2 1313 field public static final int FRONT_LEFT_DOOR_SIDE = 4; // 0x4 1314 field public static final int FRONT_RIGHT_DOOR_SIDE = 8; // 0x8 1315 field public static final int OTHER = 1; // 0x1 1316 field public static final int REAR = 64; // 0x40 1317 field public static final int REAR_LEFT_DOOR_SIDE = 16; // 0x10 1318 field public static final int REAR_RIGHT_DOOR_SIDE = 32; // 0x20 1319 } 1320 1321 public final class LaneCenteringAssistCommand { 1322 method @NonNull public static String toString(int); 1323 field public static final int ACTIVATE = 1; // 0x1 1324 field public static final int DEACTIVATE = 2; // 0x2 1325 } 1326 1327 public final class LaneCenteringAssistState { 1328 method @NonNull public static String toString(int); 1329 field public static final int ACTIVATED = 3; // 0x3 1330 field public static final int ACTIVATION_REQUESTED = 2; // 0x2 1331 field public static final int ENABLED = 1; // 0x1 1332 field public static final int FORCED_DEACTIVATION_WARNING = 5; // 0x5 1333 field public static final int OTHER = 0; // 0x0 1334 field public static final int USER_OVERRIDE = 4; // 0x4 1335 } 1336 1337 public final class LaneDepartureWarningState { 1338 method @NonNull public static String toString(int); 1339 field public static final int NO_WARNING = 1; // 0x1 1340 field public static final int OTHER = 0; // 0x0 1341 field public static final int WARNING_LEFT = 2; // 0x2 1342 field public static final int WARNING_RIGHT = 3; // 0x3 1343 } 1344 1345 public final class LaneKeepAssistState { 1346 method @NonNull public static String toString(int); 1347 field public static final int ACTIVATED_STEER_LEFT = 2; // 0x2 1348 field public static final int ACTIVATED_STEER_RIGHT = 3; // 0x3 1349 field public static final int ENABLED = 1; // 0x1 1350 field public static final int OTHER = 0; // 0x0 1351 field public static final int USER_OVERRIDE = 4; // 0x4 1352 } 1353 1354 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class LowSpeedAutomaticEmergencyBrakingState { 1355 method @NonNull public static String toString(int); 1356 field public static final int ACTIVATED = 2; // 0x2 1357 field public static final int ENABLED = 1; // 0x1 1358 field public static final int OTHER = 0; // 0x0 1359 field public static final int USER_OVERRIDE = 3; // 0x3 1360 } 1361 1362 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class LowSpeedCollisionWarningState { 1363 method @NonNull public static String toString(int); 1364 field public static final int NO_WARNING = 1; // 0x1 1365 field public static final int OTHER = 0; // 0x0 1366 field public static final int WARNING = 2; // 0x2 1367 } 1368 1369 public class PropertyNotAvailableException extends java.lang.IllegalStateException { 1370 method public int getVendorErrorCode(); 1371 } 1372 1373 public final class TrailerState { 1374 method @NonNull public static String toString(int); 1375 field public static final int STATE_ERROR = 3; // 0x3 1376 field public static final int STATE_NOT_PRESENT = 1; // 0x1 1377 field public static final int STATE_PRESENT = 2; // 0x2 1378 field public static final int STATE_UNKNOWN = 0; // 0x0 1379 } 1380 1381 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class VehicleAirbagLocation { 1382 method @NonNull public static String toString(int); 1383 field public static final int CURTAIN = 32; // 0x20 1384 field public static final int FRONT = 2; // 0x2 1385 field public static final int KNEE = 4; // 0x4 1386 field public static final int LEFT_SIDE = 8; // 0x8 1387 field public static final int OTHER = 1; // 0x1 1388 field public static final int RIGHT_SIDE = 16; // 0x10 1389 } 1390 1391 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class VehicleAutonomousState { 1392 method @NonNull public static String toString(int); 1393 field public static final int LEVEL_0 = 0; // 0x0 1394 field public static final int LEVEL_1 = 1; // 0x1 1395 field public static final int LEVEL_2 = 2; // 0x2 1396 field public static final int LEVEL_3 = 3; // 0x3 1397 field public static final int LEVEL_4 = 4; // 0x4 1398 field public static final int LEVEL_5 = 5; // 0x5 1399 } 1400 1401 public final class VehicleLightState { 1402 method @NonNull public static String toString(int); 1403 field public static final int STATE_DAYTIME_RUNNING = 2; // 0x2 1404 field public static final int STATE_OFF = 0; // 0x0 1405 field public static final int STATE_ON = 1; // 0x1 1406 } 1407 1408 public final class VehicleLightSwitch { 1409 method @NonNull public static String toString(int); 1410 field public static final int STATE_AUTOMATIC = 256; // 0x100 1411 field public static final int STATE_DAYTIME_RUNNING = 2; // 0x2 1412 field public static final int STATE_OFF = 0; // 0x0 1413 field public static final int STATE_ON = 1; // 0x1 1414 } 1415 1416 public final class VehicleOilLevel { 1417 method @NonNull public static String toString(int); 1418 field public static final int LEVEL_CRITICALLY_LOW = 0; // 0x0 1419 field public static final int LEVEL_ERROR = 4; // 0x4 1420 field public static final int LEVEL_HIGH = 3; // 0x3 1421 field public static final int LEVEL_LOW = 1; // 0x1 1422 field public static final int LEVEL_NORMAL = 2; // 0x2 1423 } 1424 1425 public final class VehicleTurnSignal { 1426 method @NonNull public static String toString(int); 1427 field public static final int STATE_LEFT = 2; // 0x2 1428 field public static final int STATE_NONE = 0; // 0x0 1429 field public static final int STATE_RIGHT = 1; // 0x1 1430 } 1431 1432 public final class VehicleVendorPermission { 1433 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_1"; 1434 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_10"; 1435 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_2"; 1436 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_3"; 1437 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_4"; 1438 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_5"; 1439 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_6"; 1440 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_7"; 1441 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_8"; 1442 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_9"; 1443 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_DOOR"; 1444 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.GET_CAR_VENDOR_CATEGORY_ENGINE"; 1445 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.GET_CAR_VENDOR_CATEGORY_HVAC"; 1446 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.GET_CAR_VENDOR_CATEGORY_INFO"; 1447 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_LIGHT"; 1448 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_MIRROR"; 1449 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_SEAT"; 1450 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.GET_CAR_VENDOR_CATEGORY_WINDOW"; 1451 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_1"; 1452 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_10"; 1453 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_2"; 1454 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_3"; 1455 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_4"; 1456 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_5"; 1457 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_6"; 1458 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_7"; 1459 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_8"; 1460 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_9"; 1461 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_DOOR"; 1462 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.SET_CAR_VENDOR_CATEGORY_ENGINE"; 1463 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.SET_CAR_VENDOR_CATEGORY_HVAC"; 1464 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.SET_CAR_VENDOR_CATEGORY_INFO"; 1465 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_LIGHT"; 1466 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_MIRROR"; 1467 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_SEAT"; 1468 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.SET_CAR_VENDOR_CATEGORY_WINDOW"; 1469 } 1470 1471 public final class WindshieldWipersState { 1472 method @NonNull public static String toString(int); 1473 field public static final int OFF = 1; // 0x1 1474 field public static final int ON = 2; // 0x2 1475 field public static final int OTHER = 0; // 0x0 1476 field public static final int SERVICE = 3; // 0x3 1477 } 1478 1479 public final class WindshieldWipersSwitch { 1480 method @NonNull public static String toString(int); 1481 field public static final int AUTO = 13; // 0xd 1482 field public static final int CONTINUOUS_LEVEL_1 = 8; // 0x8 1483 field public static final int CONTINUOUS_LEVEL_2 = 9; // 0x9 1484 field public static final int CONTINUOUS_LEVEL_3 = 10; // 0xa 1485 field public static final int CONTINUOUS_LEVEL_4 = 11; // 0xb 1486 field public static final int CONTINUOUS_LEVEL_5 = 12; // 0xc 1487 field public static final int INTERMITTENT_LEVEL_1 = 3; // 0x3 1488 field public static final int INTERMITTENT_LEVEL_2 = 4; // 0x4 1489 field public static final int INTERMITTENT_LEVEL_3 = 5; // 0x5 1490 field public static final int INTERMITTENT_LEVEL_4 = 6; // 0x6 1491 field public static final int INTERMITTENT_LEVEL_5 = 7; // 0x7 1492 field public static final int MIST = 2; // 0x2 1493 field public static final int OFF = 1; // 0x1 1494 field public static final int OTHER = 0; // 0x0 1495 field public static final int SERVICE = 14; // 0xe 1496 } 1497 1498} 1499 1500package android.car.input { 1501 1502 public final class CarInputManager { 1503 method @RequiresPermission(android.Manifest.permission.INJECT_EVENTS) public void injectKeyEvent(@NonNull android.view.KeyEvent, int); 1504 method public void releaseInputEventCapture(int); 1505 method @RequiresPermission(anyOf={"android.permission.MONITOR_INPUT", android.car.Car.PERMISSION_CAR_MONITOR_INPUT}) public int requestInputEventCapture(int, @NonNull int[], int, @NonNull android.car.input.CarInputManager.CarInputCaptureCallback); 1506 method @RequiresPermission(anyOf={"android.permission.MONITOR_INPUT", android.car.Car.PERMISSION_CAR_MONITOR_INPUT}) public int requestInputEventCapture(int, @NonNull int[], int, @NonNull java.util.concurrent.Executor, @NonNull android.car.input.CarInputManager.CarInputCaptureCallback); 1507 field public static final int CAPTURE_REQ_FLAGS_ALLOW_DELAYED_GRANT = 1; // 0x1 1508 field public static final int CAPTURE_REQ_FLAGS_TAKE_ALL_EVENTS_FOR_DISPLAY = 2; // 0x2 1509 field public static final int INPUT_CAPTURE_RESPONSE_DELAYED = 2; // 0x2 1510 field public static final int INPUT_CAPTURE_RESPONSE_FAILED = 1; // 0x1 1511 field public static final int INPUT_CAPTURE_RESPONSE_SUCCEEDED = 0; // 0x0 1512 field public static final int INPUT_TYPE_ALL_INPUTS = 1; // 0x1 1513 } 1514 1515 public static interface CarInputManager.CarInputCaptureCallback { 1516 method public default void onCaptureStateChanged(int, @NonNull int[]); 1517 method public default void onCustomInputEvents(int, @NonNull java.util.List<android.car.input.CustomInputEvent>); 1518 method public default void onKeyEvents(int, @NonNull java.util.List<android.view.KeyEvent>); 1519 method public default void onRotaryEvents(int, @NonNull java.util.List<android.car.input.RotaryEvent>); 1520 } 1521 1522 public final class CustomInputEvent implements android.os.Parcelable { 1523 ctor public CustomInputEvent(int, int, int); 1524 method public int describeContents(); 1525 method public int getInputCode(); 1526 method public int getRepeatCounter(); 1527 method public int getTargetDisplayType(); 1528 method @NonNull public static String inputCodeToString(int); 1529 method public void writeToParcel(@NonNull android.os.Parcel, int); 1530 field @NonNull public static final android.os.Parcelable.Creator<android.car.input.CustomInputEvent> CREATOR; 1531 field public static final int INPUT_CODE_F1 = 1001; // 0x3e9 1532 field public static final int INPUT_CODE_F10 = 1010; // 0x3f2 1533 field public static final int INPUT_CODE_F2 = 1002; // 0x3ea 1534 field public static final int INPUT_CODE_F3 = 1003; // 0x3eb 1535 field public static final int INPUT_CODE_F4 = 1004; // 0x3ec 1536 field public static final int INPUT_CODE_F5 = 1005; // 0x3ed 1537 field public static final int INPUT_CODE_F6 = 1006; // 0x3ee 1538 field public static final int INPUT_CODE_F7 = 1007; // 0x3ef 1539 field public static final int INPUT_CODE_F8 = 1008; // 0x3f0 1540 field public static final int INPUT_CODE_F9 = 1009; // 0x3f1 1541 } 1542 1543 public final class RotaryEvent implements android.os.Parcelable { 1544 ctor public RotaryEvent(int, boolean, @NonNull long[]); 1545 method public int describeContents(); 1546 method public int getInputType(); 1547 method public int getNumberOfClicks(); 1548 method public long getUptimeMillisForClick(int); 1549 method @NonNull public long[] getUptimeMillisForClicks(); 1550 method public boolean isClockwise(); 1551 method public void writeToParcel(@NonNull android.os.Parcel, int); 1552 field @NonNull public static final android.os.Parcelable.Creator<android.car.input.RotaryEvent> CREATOR; 1553 } 1554 1555} 1556 1557package android.car.media { 1558 1559 @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public interface AudioZoneConfigurationsChangeCallback { 1560 method public default void onAudioZoneConfigurationsChanged(@NonNull java.util.List<android.car.media.CarAudioZoneConfigInfo>, int); 1561 } 1562 1563 public interface AudioZonesMirrorStatusCallback { 1564 method public void onAudioZonesMirrorStatusChanged(@NonNull java.util.List<java.lang.Integer>, int); 1565 } 1566 1567 public final class CarAudioManager { 1568 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean allowMediaAudioOnPrimaryZone(long, boolean); 1569 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public int canEnableAudioMirror(); 1570 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean cancelMediaAudioOnPrimaryZone(long); 1571 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearAudioZoneConfigsCallback(); 1572 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearAudioZonesMirrorStatusCallback(); 1573 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearPrimaryZoneMediaAudioRequestCallback(); 1574 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.media.CarAudioPatchHandle createAudioPatch(String, int, int); 1575 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void disableAudioMirror(long); 1576 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void disableAudioMirrorForZone(int); 1577 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public long enableMirrorForAudioZones(@NonNull java.util.List<java.lang.Integer>); 1578 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void extendAudioMirrorRequest(long, @NonNull java.util.List<java.lang.Integer>); 1579 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.media.AudioAttributes> getAudioAttributesForVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo); 1580 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<android.car.media.CarAudioZoneConfigInfo> getAudioZoneConfigInfos(int); 1581 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getAudioZoneIds(); 1582 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.media.CarAudioZoneConfigInfo getCurrentAudioZoneConfigInfo(int); 1583 method @Deprecated @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public String[] getExternalSources(); 1584 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int); 1585 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int, int); 1586 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int); 1587 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int, int); 1588 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int); 1589 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int, int); 1590 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<android.media.AudioDeviceInfo> getInputDevicesForZoneId(int); 1591 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getMirrorAudioZonesForAudioZone(int); 1592 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getMirrorAudioZonesForMirrorRequest(long); 1593 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.media.AudioDeviceInfo getOutputDeviceForUsage(int, int); 1594 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int); 1595 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int, int); 1596 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount(); 1597 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount(int); 1598 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int); 1599 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int, int); 1600 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public android.car.media.CarVolumeGroupInfo getVolumeGroupInfo(int, int); 1601 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.car.media.CarVolumeGroupInfo> getVolumeGroupInfosForZone(int); 1602 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean isMediaAudioAllowedInPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1603 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isPlaybackOnVolumeGroupActive(int, int); 1604 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isVolumeGroupMuted(int, int); 1605 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean registerCarVolumeGroupEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.CarVolumeGroupEventCallback); 1606 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void releaseAudioPatch(android.car.media.CarAudioPatchHandle); 1607 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public long requestMediaAudioOnPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull java.util.concurrent.Executor, @NonNull android.car.media.MediaAudioRequestStatusCallback); 1608 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean resetMediaAudioOnPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1609 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean setAudioZoneConfigsChangeCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.AudioZoneConfigurationsChangeCallback); 1610 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean setAudioZoneMirrorStatusCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.AudioZonesMirrorStatusCallback); 1611 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setBalanceTowardRight(float); 1612 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setFadeTowardFront(float); 1613 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int); 1614 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int, int); 1615 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean setPrimaryZoneMediaAudioRequestCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.PrimaryZoneMediaAudioRequestCallback); 1616 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setVolumeGroupMute(int, int, boolean, int); 1617 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void switchAudioZoneToConfig(@NonNull android.car.media.CarAudioZoneConfigInfo, @NonNull java.util.concurrent.Executor, @NonNull android.car.media.SwitchAudioZoneConfigCallback); 1618 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void unregisterCarVolumeGroupEventCallback(@NonNull android.car.media.CarVolumeGroupEventCallback); 1619 field public static final String AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS = "android.car.media.AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS"; 1620 field public static final int AUDIO_MIRROR_CAN_ENABLE = 1; // 0x1 1621 field public static final int AUDIO_MIRROR_INTERNAL_ERROR = -1; // 0xffffffff 1622 field public static final int AUDIO_MIRROR_OUT_OF_OUTPUT_DEVICES = 2; // 0x2 1623 field public static final int AUDIO_REQUEST_STATUS_APPROVED = 1; // 0x1 1624 field public static final int AUDIO_REQUEST_STATUS_CANCELLED = 3; // 0x3 1625 field public static final int AUDIO_REQUEST_STATUS_REJECTED = 2; // 0x2 1626 field public static final int AUDIO_REQUEST_STATUS_STOPPED = 4; // 0x4 1627 field @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public static final int CONFIG_STATUS_AUTO_SWITCHED = 2; // 0x2 1628 field @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public static final int CONFIG_STATUS_CHANGED = 1; // 0x1 1629 field public static final int INVALID_AUDIO_ZONE = -1; // 0xffffffff 1630 field public static final long INVALID_REQUEST_ID = -1L; // 0xffffffffffffffffL 1631 field public static final int PRIMARY_AUDIO_ZONE = 0; // 0x0 1632 } 1633 1634 public final class CarAudioPatchHandle implements android.os.Parcelable { 1635 method public int describeContents(); 1636 method public void writeToParcel(android.os.Parcel, int); 1637 field public static final android.os.Parcelable.Creator<android.car.media.CarAudioPatchHandle> CREATOR; 1638 } 1639 1640 public final class CarAudioZoneConfigInfo implements android.os.Parcelable { 1641 method public int describeContents(); 1642 method public int getConfigId(); 1643 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getConfigVolumeGroups(); 1644 method @NonNull public String getName(); 1645 method public int getZoneId(); 1646 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean hasSameConfigInfo(@NonNull android.car.media.CarAudioZoneConfigInfo); 1647 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isActive(); 1648 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isDefault(); 1649 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isSelected(); 1650 method public void writeToParcel(@NonNull android.os.Parcel, int); 1651 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarAudioZoneConfigInfo> CREATOR; 1652 } 1653 1654 public final class CarMediaManager { 1655 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int); 1656 method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public java.util.List<android.content.ComponentName> getLastMediaSources(int); 1657 method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public android.content.ComponentName getMediaSource(int); 1658 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int); 1659 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void setMediaSource(@NonNull android.content.ComponentName, int); 1660 field public static final int MEDIA_SOURCE_MODE_BROWSE = 1; // 0x1 1661 field public static final int MEDIA_SOURCE_MODE_PLAYBACK = 0; // 0x0 1662 } 1663 1664 public static interface CarMediaManager.MediaSourceChangedListener { 1665 method public void onMediaSourceChanged(@NonNull android.content.ComponentName); 1666 } 1667 1668 public final class CarVolumeGroupEvent implements android.os.Parcelable { 1669 method public static int convertExtraInfoToFlags(@NonNull java.util.List<java.lang.Integer>); 1670 method @NonNull public static java.util.List<java.lang.Integer> convertFlagsToExtraInfo(int, int); 1671 method public int describeContents(); 1672 method @NonNull public static String eventTypeToString(int); 1673 method @NonNull public static String extraInfosToString(@NonNull java.util.List<java.lang.Integer>); 1674 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getCarVolumeGroupInfos(); 1675 method public int getEventTypes(); 1676 method @NonNull public java.util.List<java.lang.Integer> getExtraInfos(); 1677 method public void writeToParcel(@NonNull android.os.Parcel, int); 1678 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarVolumeGroupEvent> CREATOR; 1679 field public static final int EVENT_TYPE_ATTENUATION_CHANGED = 32; // 0x20 1680 field public static final int EVENT_TYPE_MUTE_CHANGED = 8; // 0x8 1681 field public static final int EVENT_TYPE_VOLUME_BLOCKED_CHANGED = 16; // 0x10 1682 field public static final int EVENT_TYPE_VOLUME_GAIN_INDEX_CHANGED = 1; // 0x1 1683 field public static final int EVENT_TYPE_VOLUME_MAX_INDEX_CHANGED = 4; // 0x4 1684 field public static final int EVENT_TYPE_VOLUME_MIN_INDEX_CHANGED = 2; // 0x2 1685 field public static final int EVENT_TYPE_ZONE_CONFIGURATION_CHANGED = 64; // 0x40 1686 field public static final int EXTRA_INFO_ATTENUATION_ACTIVATION = 110; // 0x6e 1687 field public static final int EXTRA_INFO_MUTE_LOCKED = 210; // 0xd2 1688 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_AUDIO_SYSTEM = 203; // 0xcb 1689 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_EMERGENCY = 202; // 0xca 1690 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_KEYEVENT = 201; // 0xc9 1691 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_UI = 200; // 0xc8 1692 field public static final int EXTRA_INFO_NONE = 100; // 0x64 1693 field public static final int EXTRA_INFO_PLAY_SOUND = 301; // 0x12d 1694 field public static final int EXTRA_INFO_SHOW_UI = 300; // 0x12c 1695 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_DUCKED = 121; // 0x79 1696 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_EXTERNAL = 124; // 0x7c 1697 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_NAVIGATION = 123; // 0x7b 1698 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_PROJECTION = 122; // 0x7a 1699 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_THERMAL = 120; // 0x78 1700 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_AUDIO_SYSTEM = 103; // 0x67 1701 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_KEYEVENT = 102; // 0x66 1702 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_UI = 101; // 0x65 1703 } 1704 1705 public static final class CarVolumeGroupEvent.Builder { 1706 ctor public CarVolumeGroupEvent.Builder(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>, int); 1707 ctor public CarVolumeGroupEvent.Builder(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>, int, @NonNull java.util.List<java.lang.Integer>); 1708 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addCarVolumeGroupInfo(@NonNull android.car.media.CarVolumeGroupInfo); 1709 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addEventType(int); 1710 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addExtraInfo(int); 1711 method @NonNull public android.car.media.CarVolumeGroupEvent build(); 1712 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder setExtraInfos(@NonNull java.util.List<java.lang.Integer>); 1713 } 1714 1715 public interface CarVolumeGroupEventCallback { 1716 method public void onVolumeGroupEvent(@NonNull java.util.List<android.car.media.CarVolumeGroupEvent>); 1717 } 1718 1719 public final class CarVolumeGroupInfo implements android.os.Parcelable { 1720 method public int describeContents(); 1721 method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes(); 1722 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public java.util.List<android.media.AudioDeviceAttributes> getAudioDeviceAttributes(); 1723 method public int getId(); 1724 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") public int getMaxActivationVolumeGainIndex(); 1725 method public int getMaxVolumeGainIndex(); 1726 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") public int getMinActivationVolumeGainIndex(); 1727 method public int getMinVolumeGainIndex(); 1728 method @NonNull public String getName(); 1729 method public int getVolumeGainIndex(); 1730 method public int getZoneId(); 1731 method public boolean isAttenuated(); 1732 method public boolean isBlocked(); 1733 method public boolean isMuted(); 1734 method @FlaggedApi("android.car.feature.car_audio_mute_ambiguity") public boolean isMutedBySystem(); 1735 method public boolean isSameVolumeGroup(@Nullable android.car.media.CarVolumeGroupInfo); 1736 method public void writeToParcel(@NonNull android.os.Parcel, int); 1737 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarVolumeGroupInfo> CREATOR; 1738 } 1739 1740 public static final class CarVolumeGroupInfo.Builder { 1741 ctor public CarVolumeGroupInfo.Builder(@NonNull String, int, int); 1742 ctor public CarVolumeGroupInfo.Builder(@NonNull android.car.media.CarVolumeGroupInfo); 1743 method @NonNull public android.car.media.CarVolumeGroupInfo build(); 1744 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAttenuated(boolean); 1745 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1746 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAudioDeviceAttributes(@NonNull java.util.List<android.media.AudioDeviceAttributes>); 1747 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setBlocked(boolean); 1748 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMaxActivationVolumeGainIndex(int); 1749 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMaxVolumeGainIndex(int); 1750 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMinActivationVolumeGainIndex(int); 1751 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMinVolumeGainIndex(int); 1752 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMuted(boolean); 1753 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setVolumeGainIndex(int); 1754 } 1755 1756 public interface MediaAudioRequestStatusCallback { 1757 method public void onMediaAudioRequestStatusChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long, int); 1758 } 1759 1760 public interface PrimaryZoneMediaAudioRequestCallback { 1761 method public void onMediaAudioRequestStatusChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long, int); 1762 method public void onRequestMediaOnPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long); 1763 } 1764 1765 public interface SwitchAudioZoneConfigCallback { 1766 method public void onAudioZoneConfigSwitched(@NonNull android.car.media.CarAudioZoneConfigInfo, boolean); 1767 } 1768 1769} 1770 1771package android.car.navigation { 1772 1773 public final class CarNavigationInstrumentCluster implements android.os.Parcelable { 1774 ctor public CarNavigationInstrumentCluster(android.car.navigation.CarNavigationInstrumentCluster); 1775 method public static android.car.navigation.CarNavigationInstrumentCluster createCluster(int); 1776 method public static android.car.navigation.CarNavigationInstrumentCluster createCustomImageCluster(int, int, int, int); 1777 method public int describeContents(); 1778 method public int getImageColorDepthBits(); 1779 method public int getImageHeight(); 1780 method public int getImageWidth(); 1781 method public int getMinIntervalMillis(); 1782 method public int getType(); 1783 method public boolean supportsCustomImages(); 1784 method public void writeToParcel(android.os.Parcel, int); 1785 field public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1; // 0x1 1786 field public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2; // 0x2 1787 field public static final android.os.Parcelable.Creator<android.car.navigation.CarNavigationInstrumentCluster> CREATOR; 1788 } 1789 1790 public final class CarNavigationStatusManager { 1791 method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public android.car.navigation.CarNavigationInstrumentCluster getInstrumentClusterInfo(); 1792 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendEvent(int, android.os.Bundle); 1793 method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendNavigationStateChange(android.os.Bundle); 1794 } 1795 1796} 1797 1798package android.car.occupantconnection { 1799 1800 public abstract class AbstractReceiverService extends android.app.Service { 1801 ctor public AbstractReceiverService(); 1802 method public final void acceptConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1803 method public void dump(@Nullable java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); 1804 method public final boolean forwardPayload(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull String, @NonNull android.car.occupantconnection.Payload); 1805 method @NonNull public final java.util.Set<java.lang.String> getAllReceiverEndpoints(); 1806 method public boolean isSenderAuthorized(@NonNull android.content.pm.SigningInfo); 1807 method public boolean isSenderCompatible(long); 1808 method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); 1809 method public void onConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1810 method public void onConnectionCanceled(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1811 method public abstract void onConnectionInitiated(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1812 method public void onDisconnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1813 method @Nullable public android.os.IBinder onLocalServiceBind(@NonNull android.content.Intent); 1814 method public abstract void onPayloadReceived(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.car.occupantconnection.Payload); 1815 method public void onReceiverRegistered(@NonNull String); 1816 method public final void rejectConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 1817 } 1818 1819 public final class CarOccupantConnectionManager { 1820 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void cancelConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1821 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void disconnect(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1822 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public boolean isConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1823 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void registerReceiver(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.car.occupantconnection.CarOccupantConnectionManager.PayloadCallback); 1824 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void requestConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull java.util.concurrent.Executor, @NonNull android.car.occupantconnection.CarOccupantConnectionManager.ConnectionRequestCallback); 1825 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void sendPayload(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.car.occupantconnection.Payload) throws android.car.occupantconnection.CarOccupantConnectionManager.PayloadTransferException; 1826 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void unregisterReceiver(@NonNull String); 1827 field public static final int CONNECTION_ERROR_LONG_VERSION_NOT_MATCH = 4; // 0x4 1828 field public static final int CONNECTION_ERROR_NONE = 0; // 0x0 1829 field public static final int CONNECTION_ERROR_NOT_READY = 2; // 0x2 1830 field public static final int CONNECTION_ERROR_PEER_APP_NOT_INSTALLED = 3; // 0x3 1831 field public static final int CONNECTION_ERROR_PREDEFINED_MAXIMUM_VALUE = 10000; // 0x2710 1832 field public static final int CONNECTION_ERROR_SIGNATURE_NOT_MATCH = 5; // 0x5 1833 field public static final int CONNECTION_ERROR_UNKNOWN = 1; // 0x1 1834 field public static final int CONNECTION_ERROR_USER_REJECTED = 6; // 0x6 1835 } 1836 1837 public static interface CarOccupantConnectionManager.ConnectionRequestCallback { 1838 method public void onConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1839 method public void onDisconnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1840 method public void onFailed(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 1841 } 1842 1843 public static interface CarOccupantConnectionManager.PayloadCallback { 1844 method public void onPayloadReceived(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.car.occupantconnection.Payload); 1845 } 1846 1847 public static final class CarOccupantConnectionManager.PayloadTransferException extends java.lang.Exception { 1848 ctor public CarOccupantConnectionManager.PayloadTransferException(); 1849 } 1850 1851 public final class Payload implements java.io.Closeable android.os.Parcelable { 1852 ctor public Payload(@NonNull byte[]); 1853 ctor public Payload(@NonNull android.os.IBinder); 1854 method public void close(); 1855 method public int describeContents(); 1856 method public void deserialize(@NonNull android.os.Parcel); 1857 method @Nullable public android.os.IBinder getBinder(); 1858 method @Nullable public byte[] getBytes(); 1859 method public void serialize(@NonNull android.os.Parcel, int); 1860 method public void serializeNullPayload(@NonNull android.os.Parcel); 1861 method public void writeToParcel(@NonNull android.os.Parcel, int); 1862 field @NonNull public static final android.os.Parcelable.Creator<android.car.occupantconnection.Payload> CREATOR; 1863 } 1864 1865} 1866 1867package android.car.oem { 1868 1869 public final class AudioFocusEntry implements android.os.Parcelable { 1870 method public int describeContents(); 1871 method public int getAudioContextId(); 1872 method @NonNull public android.media.AudioFocusInfo getAudioFocusInfo(); 1873 method public int getAudioFocusResult(); 1874 method public int getAudioVolumeGroupId(); 1875 method public void writeToParcel(@NonNull android.os.Parcel, int); 1876 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.AudioFocusEntry> CREATOR; 1877 } 1878 1879 public static final class AudioFocusEntry.Builder { 1880 ctor public AudioFocusEntry.Builder(@NonNull android.car.oem.AudioFocusEntry); 1881 ctor public AudioFocusEntry.Builder(@NonNull android.media.AudioFocusInfo, int, int, int); 1882 method @NonNull public android.car.oem.AudioFocusEntry build(); 1883 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioContextId(int); 1884 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusInfo(@NonNull android.media.AudioFocusInfo); 1885 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusResult(int); 1886 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioVolumeGroupId(int); 1887 } 1888 1889 @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") public final class CarAudioFadeConfiguration implements android.os.Parcelable { 1890 method public int describeContents(); 1891 method @NonNull public android.media.FadeManagerConfiguration getFadeManagerConfiguration(); 1892 method @NonNull public String getName(); 1893 method public void writeToParcel(@NonNull android.os.Parcel, int); 1894 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.CarAudioFadeConfiguration> CREATOR; 1895 } 1896 1897 @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") public static final class CarAudioFadeConfiguration.Builder { 1898 ctor public CarAudioFadeConfiguration.Builder(@NonNull android.media.FadeManagerConfiguration); 1899 method @NonNull public android.car.oem.CarAudioFadeConfiguration build(); 1900 method @NonNull public android.car.oem.CarAudioFadeConfiguration.Builder setName(@NonNull String); 1901 } 1902 1903 @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public final class CarAudioFeaturesInfo implements android.os.Parcelable { 1904 method public int describeContents(); 1905 method public boolean isAudioFeatureEnabled(int); 1906 method public void writeToParcel(@NonNull android.os.Parcel, int); 1907 field public static final int AUDIO_FEATURE_FADE_MANAGER_CONFIGS = 2; // 0x2 1908 field public static final int AUDIO_FEATURE_ISOLATED_DEVICE_FOCUS = 1; // 0x1 1909 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.CarAudioFeaturesInfo> CREATOR; 1910 } 1911 1912 public interface OemCarAudioDuckingService extends android.car.oem.OemCarServiceComponent { 1913 method @NonNull public java.util.List<android.media.AudioAttributes> evaluateAttributesToDuck(@NonNull android.car.oem.OemCarAudioVolumeRequest); 1914 } 1915 1916 public final class OemCarAudioFocusEvaluationRequest implements android.os.Parcelable { 1917 method public int describeContents(); 1918 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @Nullable public android.car.oem.CarAudioFeaturesInfo getAudioFeaturesInfo(); 1919 method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusRequest(); 1920 method public int getAudioZoneId(); 1921 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusHolders(); 1922 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusLosers(); 1923 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getMutedVolumeGroups(); 1924 method public void writeToParcel(@NonNull android.os.Parcel, int); 1925 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusEvaluationRequest> CREATOR; 1926 } 1927 1928 public static final class OemCarAudioFocusEvaluationRequest.Builder { 1929 ctor public OemCarAudioFocusEvaluationRequest.Builder(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>, @NonNull java.util.List<android.car.oem.AudioFocusEntry>, @NonNull java.util.List<android.car.oem.AudioFocusEntry>, int); 1930 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusHolders(@NonNull android.car.oem.AudioFocusEntry); 1931 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusLosers(@NonNull android.car.oem.AudioFocusEntry); 1932 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addMutedVolumeGroups(@NonNull android.car.media.CarVolumeGroupInfo); 1933 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest build(); 1934 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioFeaturesInfo(@NonNull android.car.oem.CarAudioFeaturesInfo); 1935 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioFocusRequest(@NonNull android.car.oem.AudioFocusEntry); 1936 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioZoneId(int); 1937 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusHolders(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1938 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusLosers(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1939 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setMutedVolumeGroups(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>); 1940 } 1941 1942 public final class OemCarAudioFocusResult implements android.os.Parcelable { 1943 method public int describeContents(); 1944 method @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") @NonNull public java.util.Map<android.media.AudioAttributes,android.car.oem.CarAudioFadeConfiguration> getAudioAttributesToCarAudioFadeConfigurationMap(); 1945 method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusEntry(); 1946 method public int getAudioFocusResult(); 1947 method @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") @Nullable public android.car.oem.CarAudioFadeConfiguration getCarAudioFadeConfigurationForAudioAttributes(@NonNull android.media.AudioAttributes); 1948 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyBlockedAudioFocusEntries(); 1949 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyLostAudioFocusEntries(); 1950 method public void writeToParcel(@NonNull android.os.Parcel, int); 1951 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusResult> CREATOR; 1952 field @NonNull public static final android.car.oem.OemCarAudioFocusResult EMPTY_OEM_CAR_AUDIO_FOCUS_RESULTS; 1953 } 1954 1955 public static final class OemCarAudioFocusResult.Builder { 1956 ctor public OemCarAudioFocusResult.Builder(@NonNull java.util.List<android.car.oem.AudioFocusEntry>, @NonNull java.util.List<android.car.oem.AudioFocusEntry>, int); 1957 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyBlockedAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1958 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyLostAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1959 method @NonNull public android.car.oem.OemCarAudioFocusResult build(); 1960 method @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioAttributesToCarAudioFadeConfigurationMap(@NonNull java.util.Map<android.media.AudioAttributes,android.car.oem.CarAudioFadeConfiguration>); 1961 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1962 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusResult(int); 1963 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyBlockedAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1964 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyLostAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1965 } 1966 1967 public interface OemCarAudioFocusService extends android.car.oem.OemCarServiceComponent { 1968 method @NonNull public android.car.oem.OemCarAudioFocusResult evaluateAudioFocusRequest(@NonNull android.car.oem.OemCarAudioFocusEvaluationRequest); 1969 method public void notifyAudioFocusChange(@NonNull java.util.List<android.media.AudioFocusInfo>, @NonNull java.util.List<android.media.AudioFocusInfo>, int); 1970 } 1971 1972 public final class OemCarAudioVolumeRequest implements android.os.Parcelable { 1973 method public int describeContents(); 1974 method @NonNull public java.util.List<android.media.AudioAttributes> getActivePlaybackAttributes(); 1975 method public int getAudioZoneId(); 1976 method public int getCallState(); 1977 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getCarVolumeGroupInfos(); 1978 method @NonNull public java.util.List<android.media.AudioAttributes> getDuckedAudioAttributes(); 1979 method public void writeToParcel(@NonNull android.os.Parcel, int); 1980 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioVolumeRequest> CREATOR; 1981 } 1982 1983 public static final class OemCarAudioVolumeRequest.Builder { 1984 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addActivePlaybackAttributes(@NonNull android.media.AudioAttributes); 1985 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addCarVolumeGroupInfos(@NonNull android.car.media.CarVolumeGroupInfo); 1986 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addDuckedAudioAttributes(@NonNull android.media.AudioAttributes); 1987 method @NonNull public android.car.oem.OemCarAudioVolumeRequest build(); 1988 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setActivePlaybackAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1989 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCallState(int); 1990 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCarVolumeGroupInfos(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>); 1991 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setDuckedAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1992 } 1993 1994 public interface OemCarAudioVolumeService extends android.car.oem.OemCarServiceComponent { 1995 method @NonNull public android.car.oem.OemCarVolumeChangeInfo getSuggestedGroupForVolumeChange(@NonNull android.car.oem.OemCarAudioVolumeRequest, int); 1996 } 1997 1998 public abstract class OemCarService extends android.app.Service { 1999 ctor public OemCarService(); 2000 method @CallSuper public void dump(@Nullable java.io.FileDescriptor, @Nullable java.io.PrintWriter, @Nullable String[]); 2001 method @Nullable public android.car.oem.OemCarAudioDuckingService getOemAudioDuckingService(); 2002 method @Nullable public android.car.oem.OemCarAudioFocusService getOemAudioFocusService(); 2003 method @Nullable public android.car.oem.OemCarAudioVolumeService getOemAudioVolumeService(); 2004 method @NonNull public abstract android.car.CarVersion getSupportedCarVersion(); 2005 method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); 2006 method public abstract void onCarServiceReady(); 2007 method public final int onStartCommand(@Nullable android.content.Intent, int, int); 2008 } 2009 2010 public interface OemCarServiceComponent { 2011 method public void dump(@Nullable java.io.PrintWriter, @Nullable String[]); 2012 method public void init(); 2013 method public void onCarServiceReady(); 2014 method public void release(); 2015 } 2016 2017 public final class OemCarVolumeChangeInfo implements android.os.Parcelable { 2018 method public int describeContents(); 2019 method @Nullable public android.car.media.CarVolumeGroupInfo getChangedVolumeGroup(); 2020 method public boolean isVolumeChanged(); 2021 method public void writeToParcel(@NonNull android.os.Parcel, int); 2022 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarVolumeChangeInfo> CREATOR; 2023 field @NonNull public static final android.car.oem.OemCarVolumeChangeInfo EMPTY_OEM_VOLUME_CHANGE; 2024 } 2025 2026 public static final class OemCarVolumeChangeInfo.Builder { 2027 ctor public OemCarVolumeChangeInfo.Builder(boolean); 2028 method @NonNull public android.car.oem.OemCarVolumeChangeInfo build(); 2029 method @NonNull public android.car.oem.OemCarVolumeChangeInfo.Builder setChangedVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo); 2030 } 2031 2032} 2033 2034package android.car.os { 2035 2036 public final class CarPerformanceManager { 2037 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public android.car.os.ThreadPolicyWithPriority getThreadPriority(); 2038 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public void setThreadPriority(@NonNull android.car.os.ThreadPolicyWithPriority) throws android.car.os.CarPerformanceManager.SetSchedulerFailedException; 2039 } 2040 2041 public static final class CarPerformanceManager.SetSchedulerFailedException extends java.lang.Exception { 2042 } 2043 2044 public final class ThreadPolicyWithPriority implements android.os.Parcelable { 2045 ctor public ThreadPolicyWithPriority(int, @IntRange(from=0, to=99) int); 2046 method public int describeContents(); 2047 method public int getPolicy(); 2048 method @IntRange(from=0, to=99) public int getPriority(); 2049 method public void writeToParcel(@NonNull android.os.Parcel, int); 2050 field @NonNull public static final android.os.Parcelable.Creator<android.car.os.ThreadPolicyWithPriority> CREATOR; 2051 field public static final int PRIORITY_MAX = 99; // 0x63 2052 field public static final int PRIORITY_MIN = 1; // 0x1 2053 field public static final int SCHED_DEFAULT = 0; // 0x0 2054 field public static final int SCHED_FIFO = 1; // 0x1 2055 field public static final int SCHED_RR = 2; // 0x2 2056 } 2057 2058} 2059 2060package android.car.projection { 2061 2062 public class ProjectionOptions { 2063 ctor public ProjectionOptions(android.os.Bundle); 2064 method @Nullable public android.app.ActivityOptions getActivityOptions(); 2065 method @Nullable public android.content.ComponentName getConsentActivity(); 2066 method public int getProjectionAccessPointMode(); 2067 method public int getUiMode(); 2068 method @NonNull public android.os.Bundle toBundle(); 2069 field public static final int AP_MODE_LOHS_DYNAMIC_CREDENTIALS = 2; // 0x2 2070 field public static final int AP_MODE_LOHS_STATIC_CREDENTIALS = 3; // 0x3 2071 field public static final int AP_MODE_NOT_SPECIFIED = 0; // 0x0 2072 field public static final int AP_MODE_TETHERED = 1; // 0x1 2073 field public static final int UI_MODE_BLENDED = 1; // 0x1 2074 field public static final int UI_MODE_FULL_SCREEN = 0; // 0x0 2075 } 2076 2077 public final class ProjectionStatus implements android.os.Parcelable { 2078 method @NonNull public static android.car.projection.ProjectionStatus.Builder builder(String, int); 2079 method public int describeContents(); 2080 method @NonNull public java.util.List<android.car.projection.ProjectionStatus.MobileDevice> getConnectedMobileDevices(); 2081 method @NonNull public android.os.Bundle getExtras(); 2082 method @NonNull public String getPackageName(); 2083 method public int getState(); 2084 method public int getTransport(); 2085 method public boolean isActive(); 2086 method public void writeToParcel(android.os.Parcel, int); 2087 field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus> CREATOR; 2088 field public static final int PROJECTION_STATE_ACTIVE_BACKGROUND = 3; // 0x3 2089 field public static final int PROJECTION_STATE_ACTIVE_FOREGROUND = 2; // 0x2 2090 field public static final int PROJECTION_STATE_ATTEMPTING = 4; // 0x4 2091 field public static final int PROJECTION_STATE_FINISHING = 5; // 0x5 2092 field public static final int PROJECTION_STATE_INACTIVE = 0; // 0x0 2093 field public static final int PROJECTION_STATE_READY_TO_PROJECT = 1; // 0x1 2094 field public static final int PROJECTION_TRANSPORT_NONE = 0; // 0x0 2095 field public static final int PROJECTION_TRANSPORT_USB = 1; // 0x1 2096 field public static final int PROJECTION_TRANSPORT_WIFI = 2; // 0x2 2097 } 2098 2099 public static final class ProjectionStatus.Builder { 2100 method @NonNull public android.car.projection.ProjectionStatus.Builder addMobileDevice(android.car.projection.ProjectionStatus.MobileDevice); 2101 method public android.car.projection.ProjectionStatus build(); 2102 method @NonNull public android.car.projection.ProjectionStatus.Builder setExtras(android.os.Bundle); 2103 method @NonNull public android.car.projection.ProjectionStatus.Builder setProjectionTransport(int); 2104 } 2105 2106 public static final class ProjectionStatus.MobileDevice implements android.os.Parcelable { 2107 method @NonNull public static android.car.projection.ProjectionStatus.MobileDevice.Builder builder(int, String); 2108 method public int describeContents(); 2109 method @NonNull public java.util.List<java.lang.Integer> getAvailableTransports(); 2110 method @NonNull public android.os.Bundle getExtras(); 2111 method public int getId(); 2112 method @NonNull public String getName(); 2113 method public boolean isProjecting(); 2114 method public void writeToParcel(android.os.Parcel, int); 2115 field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus.MobileDevice> CREATOR; 2116 } 2117 2118 public static final class ProjectionStatus.MobileDevice.Builder { 2119 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder addTransport(int); 2120 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice build(); 2121 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setExtras(android.os.Bundle); 2122 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setProjecting(boolean); 2123 } 2124 2125} 2126 2127package android.car.remoteaccess { 2128 2129 public final class CarRemoteAccessManager { 2130 method @FlaggedApi("android.car.feature.serverless_remote_access") @Nullable @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskScheduler getInVehicleTaskScheduler(); 2131 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public boolean isTaskScheduleSupported(); 2132 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public void setPowerStatePostTaskExecution(int, boolean); 2133 field public static final int NEXT_POWER_STATE_OFF = 2; // 0x2 2134 field public static final int NEXT_POWER_STATE_ON = 1; // 0x1 2135 field public static final int NEXT_POWER_STATE_SUSPEND_TO_DISK = 4; // 0x4 2136 field public static final int NEXT_POWER_STATE_SUSPEND_TO_RAM = 3; // 0x3 2137 field @FlaggedApi("android.car.feature.serverless_remote_access") public static final int TASK_TYPE_CUSTOM = 0; // 0x0 2138 field @FlaggedApi("android.car.feature.serverless_remote_access") public static final int TASK_TYPE_ENTER_GARAGE_MODE = 1; // 0x1 2139 } 2140 2141 @FlaggedApi("android.car.feature.serverless_remote_access") public final class CarRemoteAccessManager.InVehicleTaskScheduler { 2142 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public java.util.List<android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo> getAllPendingScheduledTasks() throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2143 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public int[] getSupportedTaskTypes() throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2144 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public boolean isTaskScheduled(@NonNull String) throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2145 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public void scheduleTask(@NonNull android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo) throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2146 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public void unscheduleAllTasks() throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2147 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public void unscheduleTask(@NonNull String) throws android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskSchedulerException; 2148 } 2149 2150 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.InVehicleTaskSchedulerException extends java.lang.Exception { 2151 } 2152 2153 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.ScheduleInfo { 2154 method @FlaggedApi("android.car.feature.serverless_remote_access") public int getCount(); 2155 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public java.time.Duration getPeriodic(); 2156 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public String getScheduleId(); 2157 method @FlaggedApi("android.car.feature.serverless_remote_access") public long getStartTimeInEpochSeconds(); 2158 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public byte[] getTaskData(); 2159 method @FlaggedApi("android.car.feature.serverless_remote_access") public int getTaskType(); 2160 field @NonNull public static final java.time.Duration PERIODIC_DAILY; 2161 field @NonNull public static final java.time.Duration PERIODIC_WEEKLY; 2162 } 2163 2164 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.ScheduleInfo.Builder { 2165 ctor @FlaggedApi("android.car.feature.serverless_remote_access") public CarRemoteAccessManager.ScheduleInfo.Builder(@NonNull String, int, long); 2166 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo build(); 2167 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setCount(int); 2168 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setPeriodic(@NonNull java.time.Duration); 2169 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setTaskData(@NonNull byte[]); 2170 } 2171 2172} 2173 2174package android.car.settings { 2175 2176 public class CarSettings { 2177 } 2178 2179 public static final class CarSettings.Global { 2180 field public static final String DISPLAY_INPUT_LOCK = "android.car.DISPLAY_INPUT_LOCK"; 2181 field public static final String DISPLAY_POWER_MODE = "android.car.DISPLAY_POWER_MODE"; 2182 field @FlaggedApi("android.car.feature.persist_ap_settings") public static final String ENABLE_PERSISTENT_TETHERING = "android.car.ENABLE_PERSISTENT_TETHERING"; 2183 field @FlaggedApi("android.car.feature.car_night_global_setting") public static final String FORCED_DAY_NIGHT_MODE = "android.car.FORCED_DAY_NIGHT_MODE"; 2184 field public static final String GLOBAL_VISIBLE_USER_ALLOCATION_PER_ZONE = "android.car.GLOBAL_VISIBLE_USER_ALLOCATION_PER_ZONE"; 2185 } 2186 2187 public static final class CarSettings.Secure { 2188 field public static final String KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL = "android.car.KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL"; 2189 field public static final String KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES = "android.car.KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES"; 2190 field public static final String KEY_DRIVER_ALLOWED_TO_CONTROL_MEDIA = "android.car.DRIVER_ALLOWED_TO_CONTROL_MEDIA"; 2191 field public static final String KEY_ENABLE_INITIAL_NOTICE_SCREEN_TO_USER = "android.car.ENABLE_INITIAL_NOTICE_SCREEN_TO_USER"; 2192 field public static final String KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE = "android.car.KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE"; 2193 field public static final String KEY_ROTARY_KEY_EVENT_FILTER = "android.car.ROTARY_KEY_EVENT_FILTER"; 2194 field public static final String KEY_SETUP_WIZARD_IN_PROGRESS = "android.car.SETUP_WIZARD_IN_PROGRESS"; 2195 field public static final String KEY_UNACCEPTED_TOS_DISABLED_APPS = "android.car.KEY_UNACCEPTED_TOS_DISABLED_APPS"; 2196 field public static final String KEY_USER_TOS_ACCEPTED = "android.car.KEY_USER_TOS_ACCEPTED"; 2197 field public static final String VISIBLE_USER_ALLOCATION_PER_ZONE = "android.car.VISIBLE_USER_ALLOCATION_PER_ZONE"; 2198 } 2199 2200} 2201 2202package android.car.storagemonitoring { 2203 2204 public final class CarStorageMonitoringManager { 2205 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getAggregateIoStats(); 2206 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getBootIoStats(); 2207 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStats> getIoStatsDeltas(); 2208 method @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public int getPreEolIndicatorStatus(); 2209 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public long getShutdownDiskWriteAmount(); 2210 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public android.car.storagemonitoring.WearEstimate getWearEstimate(); 2211 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.WearEstimateChange> getWearEstimateHistory(); 2212 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void registerListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener); 2213 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void unregisterListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener); 2214 field public static final String INTENT_EXCESSIVE_IO = "android.car.storagemonitoring.EXCESSIVE_IO"; 2215 field public static final int PRE_EOL_INFO_NORMAL = 1; // 0x1 2216 field public static final int PRE_EOL_INFO_UNKNOWN = 0; // 0x0 2217 field public static final int PRE_EOL_INFO_URGENT = 3; // 0x3 2218 field public static final int PRE_EOL_INFO_WARNING = 2; // 0x2 2219 field public static final long SHUTDOWN_COST_INFO_MISSING = -1L; // 0xffffffffffffffffL 2220 } 2221 2222 @Deprecated public static interface CarStorageMonitoringManager.IoStatsListener { 2223 method @Deprecated public void onSnapshot(android.car.storagemonitoring.IoStats); 2224 } 2225 2226 @Deprecated public final class IoStats implements android.os.Parcelable { 2227 ctor @Deprecated public IoStats(java.util.List<android.car.storagemonitoring.IoStatsEntry>, long); 2228 ctor @Deprecated public IoStats(android.os.Parcel); 2229 method @Deprecated public int describeContents(); 2230 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getBackgroundTotals(); 2231 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getForegroundTotals(); 2232 method @Deprecated public java.util.List<android.car.storagemonitoring.IoStatsEntry> getStats(); 2233 method @Deprecated public long getTimestamp(); 2234 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getTotals(); 2235 method @Deprecated public android.car.storagemonitoring.IoStatsEntry getUserIdStats(int); 2236 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2237 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStats> CREATOR; 2238 } 2239 2240 @Deprecated public final class IoStatsEntry implements android.os.Parcelable { 2241 ctor @Deprecated public IoStatsEntry(int, long, android.car.storagemonitoring.IoStatsEntry.Metrics, android.car.storagemonitoring.IoStatsEntry.Metrics); 2242 ctor @Deprecated public IoStatsEntry(android.os.Parcel); 2243 ctor @Deprecated public IoStatsEntry(android.car.storagemonitoring.UidIoRecord, long); 2244 method @Deprecated public int describeContents(); 2245 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2246 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry> CREATOR; 2247 field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics background; 2248 field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics foreground; 2249 field @Deprecated public final long runtimeMillis; 2250 field @Deprecated public final int uid; 2251 } 2252 2253 @Deprecated public static final class IoStatsEntry.Metrics implements android.os.Parcelable { 2254 ctor @Deprecated public IoStatsEntry.Metrics(long, long, long, long, long); 2255 ctor @Deprecated public IoStatsEntry.Metrics(android.os.Parcel); 2256 method @Deprecated public int describeContents(); 2257 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2258 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry.Metrics> CREATOR; 2259 field @Deprecated public final long bytesRead; 2260 field @Deprecated public final long bytesReadFromStorage; 2261 field @Deprecated public final long bytesWritten; 2262 field @Deprecated public final long bytesWrittenToStorage; 2263 field @Deprecated public final long fsyncCalls; 2264 } 2265 2266 public final class LifetimeWriteInfo implements android.os.Parcelable { 2267 ctor public LifetimeWriteInfo(String, String, long); 2268 ctor public LifetimeWriteInfo(android.os.Parcel); 2269 method public int describeContents(); 2270 method public void writeToParcel(android.os.Parcel, int); 2271 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.LifetimeWriteInfo> CREATOR; 2272 field public final String fstype; 2273 field public final String partition; 2274 field public final long writtenBytes; 2275 } 2276 2277 public final class UidIoRecord { 2278 ctor public UidIoRecord(int, long, long, long, long, long, long, long, long, long, long); 2279 field public final long background_fsync; 2280 field public final long background_rchar; 2281 field public final long background_read_bytes; 2282 field public final long background_wchar; 2283 field public final long background_write_bytes; 2284 field public final long foreground_fsync; 2285 field public final long foreground_rchar; 2286 field public final long foreground_read_bytes; 2287 field public final long foreground_wchar; 2288 field public final long foreground_write_bytes; 2289 field public final int uid; 2290 } 2291 2292 public final class WearEstimate implements android.os.Parcelable { 2293 ctor public WearEstimate(int, int); 2294 ctor public WearEstimate(android.os.Parcel); 2295 method public int describeContents(); 2296 method public void writeToParcel(android.os.Parcel, int); 2297 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimate> CREATOR; 2298 field public static final int UNKNOWN = -1; // 0xffffffff 2299 field @IntRange(from=0xffffffff, to=100) public final int typeA; 2300 field @IntRange(from=0xffffffff, to=100) public final int typeB; 2301 } 2302 2303 public final class WearEstimateChange implements android.os.Parcelable { 2304 ctor public WearEstimateChange(android.car.storagemonitoring.WearEstimate, android.car.storagemonitoring.WearEstimate, long, java.time.Instant, boolean); 2305 ctor public WearEstimateChange(android.os.Parcel); 2306 method public int describeContents(); 2307 method public void writeToParcel(android.os.Parcel, int); 2308 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimateChange> CREATOR; 2309 field @NonNull public final java.time.Instant dateAtChange; 2310 field public final boolean isAcceptableDegradation; 2311 field @NonNull public final android.car.storagemonitoring.WearEstimate newEstimate; 2312 field @NonNull public final android.car.storagemonitoring.WearEstimate oldEstimate; 2313 field public final long uptimeAtChange; 2314 } 2315 2316} 2317 2318package android.car.telemetry { 2319 2320 public final class CarTelemetryManager { 2321 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void addMetricsConfig(@NonNull String, @NonNull byte[], @NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.AddMetricsConfigCallback); 2322 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void clearReportReadyListener(); 2323 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void getAllFinishedReports(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.MetricsReportCallback); 2324 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void getFinishedReport(@NonNull String, @NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.MetricsReportCallback); 2325 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeAllMetricsConfigs(); 2326 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeMetricsConfig(@NonNull String); 2327 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void setReportReadyListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.ReportReadyListener); 2328 field public static final int STATUS_ADD_METRICS_CONFIG_ALREADY_EXISTS = 1; // 0x1 2329 field public static final int STATUS_ADD_METRICS_CONFIG_PARSE_FAILED = 3; // 0x3 2330 field public static final int STATUS_ADD_METRICS_CONFIG_SIGNATURE_VERIFICATION_FAILED = 4; // 0x4 2331 field public static final int STATUS_ADD_METRICS_CONFIG_SUCCEEDED = 0; // 0x0 2332 field public static final int STATUS_ADD_METRICS_CONFIG_UNKNOWN = 5; // 0x5 2333 field public static final int STATUS_ADD_METRICS_CONFIG_VERSION_TOO_OLD = 2; // 0x2 2334 field public static final int STATUS_GET_METRICS_CONFIG_DOES_NOT_EXIST = 4; // 0x4 2335 field public static final int STATUS_GET_METRICS_CONFIG_FINISHED = 0; // 0x0 2336 field public static final int STATUS_GET_METRICS_CONFIG_INTERIM_RESULTS = 2; // 0x2 2337 field public static final int STATUS_GET_METRICS_CONFIG_PENDING = 1; // 0x1 2338 field public static final int STATUS_GET_METRICS_CONFIG_RUNTIME_ERROR = 3; // 0x3 2339 } 2340 2341 public static interface CarTelemetryManager.AddMetricsConfigCallback { 2342 method public void onAddMetricsConfigStatus(@NonNull String, int); 2343 } 2344 2345 public static interface CarTelemetryManager.MetricsReportCallback { 2346 method public void onResult(@NonNull String, @Nullable android.os.PersistableBundle, @Nullable byte[], int); 2347 } 2348 2349 public static interface CarTelemetryManager.ReportReadyListener { 2350 method public void onReady(@NonNull String); 2351 } 2352 2353} 2354 2355package android.car.user { 2356 2357 public final class CarUserManager { 2358 method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void addListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.user.CarUserManager.UserLifecycleListener); 2359 method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void addListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.user.UserLifecycleEventFilter, @NonNull android.car.user.CarUserManager.UserLifecycleListener); 2360 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void createUser(@NonNull android.car.user.UserCreationRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserCreationResult>); 2361 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean isValidUser(@NonNull android.os.UserHandle); 2362 method @NonNull public static String lifecycleEventTypeToString(int); 2363 method @RequiresPermission(anyOf={android.Manifest.permission.INTERACT_ACROSS_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS_FULL}) public void removeListener(@NonNull android.car.user.CarUserManager.UserLifecycleListener); 2364 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void removeUser(@NonNull android.car.user.UserRemovalRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserRemovalResult>); 2365 method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserSwitchUiCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.user.CarUserManager.UserHandleSwitchUiCallback); 2366 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void startUser(@NonNull android.car.user.UserStartRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserStartResponse>); 2367 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.INTERACT_ACROSS_USERS}) public void stopUser(@NonNull android.car.user.UserStopRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserStopResponse>); 2368 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void switchUser(@NonNull android.car.user.UserSwitchRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserSwitchResult>); 2369 method @FlaggedApi("android.car.feature.switch_user_ignoring_uxr") @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public void switchUserIgnoringUxRestriction(@NonNull android.car.user.UserSwitchRequest, @NonNull java.util.concurrent.Executor, @NonNull android.car.ResultCallback<android.car.user.UserSwitchResult>); 2370 field public static final int USER_LIFECYCLE_EVENT_TYPE_CREATED = 8; // 0x8 2371 field public static final int USER_LIFECYCLE_EVENT_TYPE_INVISIBLE = 11; // 0xb 2372 field public static final int USER_LIFECYCLE_EVENT_TYPE_REMOVED = 9; // 0x9 2373 field public static final int USER_LIFECYCLE_EVENT_TYPE_STARTING = 1; // 0x1 2374 field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPED = 6; // 0x6 2375 field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPING = 5; // 0x5 2376 field public static final int USER_LIFECYCLE_EVENT_TYPE_SWITCHING = 2; // 0x2 2377 field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKED = 4; // 0x4 2378 field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKING = 3; // 0x3 2379 field public static final int USER_LIFECYCLE_EVENT_TYPE_VISIBLE = 10; // 0xa 2380 } 2381 2382 public static interface CarUserManager.UserHandleSwitchUiCallback { 2383 method public void onUserSwitchStart(@NonNull android.os.UserHandle); 2384 } 2385 2386 public static final class CarUserManager.UserLifecycleEvent { 2387 method public int getEventType(); 2388 method @Nullable public android.os.UserHandle getPreviousUserHandle(); 2389 method @NonNull public android.os.UserHandle getUserHandle(); 2390 } 2391 2392 public static interface CarUserManager.UserLifecycleListener { 2393 method public void onEvent(@NonNull android.car.user.CarUserManager.UserLifecycleEvent); 2394 } 2395 2396 public final class UserCreationRequest implements android.os.Parcelable { 2397 method public int describeContents(); 2398 method @Nullable public String getName(); 2399 method public boolean isAdmin(); 2400 method public boolean isEphemeral(); 2401 method public boolean isGuest(); 2402 method public void writeToParcel(@NonNull android.os.Parcel, int); 2403 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserCreationRequest> CREATOR; 2404 } 2405 2406 public static final class UserCreationRequest.Builder { 2407 ctor public UserCreationRequest.Builder(); 2408 method @NonNull public android.car.user.UserCreationRequest build(); 2409 method @NonNull public android.car.user.UserCreationRequest.Builder setAdmin(); 2410 method @NonNull public android.car.user.UserCreationRequest.Builder setEphemeral(); 2411 method @NonNull public android.car.user.UserCreationRequest.Builder setGuest(); 2412 method @NonNull public android.car.user.UserCreationRequest.Builder setName(@NonNull String); 2413 } 2414 2415 public final class UserCreationResult implements android.os.Parcelable { 2416 method public int describeContents(); 2417 method @Nullable public Integer getAndroidFailureStatus(); 2418 method @Nullable public String getErrorMessage(); 2419 method @Nullable public String getInternalErrorMessage(); 2420 method public int getStatus(); 2421 method @Nullable public android.os.UserHandle getUser(); 2422 method public boolean isSuccess(); 2423 method @NonNull public static String statusToString(int); 2424 method public void writeToParcel(@NonNull android.os.Parcel, int); 2425 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserCreationResult> CREATOR; 2426 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2427 field public static final int STATUS_HAL_FAILURE = 3; // 0x3 2428 field public static final int STATUS_HAL_INTERNAL_FAILURE = 4; // 0x4 2429 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2430 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2431 } 2432 2433 public final class UserLifecycleEventFilter implements android.os.Parcelable { 2434 method public boolean apply(@NonNull android.car.user.CarUserManager.UserLifecycleEvent); 2435 method public int describeContents(); 2436 method public void writeToParcel(@NonNull android.os.Parcel, int); 2437 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserLifecycleEventFilter> CREATOR; 2438 } 2439 2440 public static final class UserLifecycleEventFilter.Builder { 2441 ctor public UserLifecycleEventFilter.Builder(); 2442 method @NonNull public android.car.user.UserLifecycleEventFilter.Builder addEventType(int); 2443 method @NonNull public android.car.user.UserLifecycleEventFilter.Builder addUser(@NonNull android.os.UserHandle); 2444 method @NonNull public android.car.user.UserLifecycleEventFilter build(); 2445 } 2446 2447 public final class UserRemovalRequest implements android.os.Parcelable { 2448 method public int describeContents(); 2449 method @NonNull public android.os.UserHandle getUserHandle(); 2450 method public void writeToParcel(@NonNull android.os.Parcel, int); 2451 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserRemovalRequest> CREATOR; 2452 } 2453 2454 public static final class UserRemovalRequest.Builder { 2455 ctor public UserRemovalRequest.Builder(@NonNull android.os.UserHandle); 2456 method @NonNull public android.car.user.UserRemovalRequest build(); 2457 } 2458 2459 public final class UserRemovalResult implements android.os.Parcelable { 2460 method public int describeContents(); 2461 method public int getStatus(); 2462 method public boolean isSuccess(); 2463 method @NonNull public static String statusToString(int); 2464 method public void writeToParcel(@NonNull android.os.Parcel, int); 2465 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserRemovalResult> CREATOR; 2466 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2467 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2468 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2469 field public static final int STATUS_SUCCESSFUL_LAST_ADMIN_REMOVED = 102; // 0x66 2470 field public static final int STATUS_SUCCESSFUL_LAST_ADMIN_SET_EPHEMERAL = 104; // 0x68 2471 field public static final int STATUS_SUCCESSFUL_SET_EPHEMERAL = 103; // 0x67 2472 field public static final int STATUS_USER_DOES_NOT_EXIST = 101; // 0x65 2473 } 2474 2475 public final class UserStartRequest implements android.os.Parcelable { 2476 method public int describeContents(); 2477 method public int getDisplayId(); 2478 method @NonNull public android.os.UserHandle getUserHandle(); 2479 method public void writeToParcel(@NonNull android.os.Parcel, int); 2480 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStartRequest> CREATOR; 2481 } 2482 2483 public static final class UserStartRequest.Builder { 2484 ctor public UserStartRequest.Builder(@NonNull android.os.UserHandle); 2485 method @NonNull public android.car.user.UserStartRequest build(); 2486 method @NonNull public android.car.user.UserStartRequest.Builder setDisplayId(int); 2487 } 2488 2489 public final class UserStartResponse implements android.os.Parcelable { 2490 method public int describeContents(); 2491 method public int getStatus(); 2492 method public boolean isSuccess(); 2493 method @NonNull public static String statusToString(int); 2494 method public void writeToParcel(@NonNull android.os.Parcel, int); 2495 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStartResponse> CREATOR; 2496 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2497 field public static final int STATUS_DISPLAY_INVALID = 104; // 0x68 2498 field public static final int STATUS_DISPLAY_UNAVAILABLE = 105; // 0x69 2499 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2500 field public static final int STATUS_SUCCESSFUL_USER_ALREADY_VISIBLE_ON_DISPLAY = 103; // 0x67 2501 field public static final int STATUS_SUCCESSFUL_USER_IS_CURRENT_USER = 101; // 0x65 2502 field public static final int STATUS_UNSUPPORTED_PLATFORM_FAILURE = 7; // 0x7 2503 field public static final int STATUS_USER_ASSIGNED_TO_ANOTHER_DISPLAY = 107; // 0x6b 2504 field public static final int STATUS_USER_DOES_NOT_EXIST = 102; // 0x66 2505 field public static final int STATUS_USER_INVALID = 106; // 0x6a 2506 } 2507 2508 public final class UserStopRequest implements android.os.Parcelable { 2509 method public int describeContents(); 2510 method @NonNull public android.os.UserHandle getUserHandle(); 2511 method public boolean isForce(); 2512 method public boolean isWithDelayedLocking(); 2513 method public void writeToParcel(@NonNull android.os.Parcel, int); 2514 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStopRequest> CREATOR; 2515 } 2516 2517 public static final class UserStopRequest.Builder { 2518 ctor public UserStopRequest.Builder(@NonNull android.os.UserHandle); 2519 method @NonNull public android.car.user.UserStopRequest build(); 2520 method @NonNull public android.car.user.UserStopRequest.Builder setForce(); 2521 method @NonNull public android.car.user.UserStopRequest.Builder withDelayedLocking(boolean); 2522 } 2523 2524 public final class UserStopResponse implements android.os.Parcelable { 2525 method public int describeContents(); 2526 method public int getStatus(); 2527 method public static boolean isSuccess(int); 2528 method public boolean isSuccess(); 2529 method @NonNull public static String statusToString(int); 2530 method public void writeToParcel(@NonNull android.os.Parcel, int); 2531 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStopResponse> CREATOR; 2532 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2533 field public static final int STATUS_FAILURE_CURRENT_USER = 103; // 0x67 2534 field public static final int STATUS_FAILURE_SYSTEM_USER = 102; // 0x66 2535 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2536 field public static final int STATUS_USER_DOES_NOT_EXIST = 101; // 0x65 2537 } 2538 2539 public final class UserSwitchRequest implements android.os.Parcelable { 2540 method public int describeContents(); 2541 method @NonNull public android.os.UserHandle getUserHandle(); 2542 method public void writeToParcel(@NonNull android.os.Parcel, int); 2543 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserSwitchRequest> CREATOR; 2544 } 2545 2546 public static final class UserSwitchRequest.Builder { 2547 ctor public UserSwitchRequest.Builder(@NonNull android.os.UserHandle); 2548 method @NonNull public android.car.user.UserSwitchRequest build(); 2549 } 2550 2551 public final class UserSwitchResult implements android.os.Parcelable { 2552 method public int describeContents(); 2553 method @Nullable public Integer getAndroidFailureStatus(); 2554 method @Nullable public String getErrorMessage(); 2555 method public int getStatus(); 2556 method public boolean isSuccess(); 2557 method @NonNull public static String statusToString(int); 2558 method public void writeToParcel(@NonNull android.os.Parcel, int); 2559 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserSwitchResult> CREATOR; 2560 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2561 field public static final int STATUS_HAL_FAILURE = 3; // 0x3 2562 field public static final int STATUS_HAL_INTERNAL_FAILURE = 4; // 0x4 2563 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2564 field public static final int STATUS_NOT_LOGGED_IN = 105; // 0x69 2565 field public static final int STATUS_NOT_SWITCHABLE = 104; // 0x68 2566 field public static final int STATUS_OK_USER_ALREADY_IN_FOREGROUND = 101; // 0x65 2567 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2568 field public static final int STATUS_TARGET_USER_ABANDONED_DUE_TO_A_NEW_REQUEST = 103; // 0x67 2569 field public static final int STATUS_TARGET_USER_ALREADY_BEING_SWITCHED_TO = 102; // 0x66 2570 field public static final int STATUS_UX_RESTRICTION_FAILURE = 6; // 0x6 2571 } 2572 2573} 2574 2575package android.car.view { 2576 2577 public final class DisplayHelper { 2578 method public static int getPhysicalPort(@NonNull android.view.Display); 2579 method @Nullable public static String getUniqueId(@NonNull android.view.Display); 2580 field public static final int INVALID_PORT = -1; // 0xffffffff 2581 } 2582 2583 public final class MirroredSurfaceView extends android.view.SurfaceView { 2584 ctor public MirroredSurfaceView(@NonNull android.content.Context); 2585 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); 2586 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); 2587 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); 2588 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_ACCESS_MIRRORRED_SURFACE) public boolean mirrorSurface(@NonNull android.os.IBinder); 2589 method @MainThread public void release(); 2590 method @MainThread public void setObscuredTouchRegion(@Nullable android.graphics.Region); 2591 } 2592 2593 public final class WindowManagerHelper { 2594 method public static void setInputFeatureSpy(@NonNull android.view.WindowManager.LayoutParams); 2595 method @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static void setTrustedOverlay(@NonNull android.view.WindowManager.LayoutParams); 2596 } 2597 2598} 2599 2600package android.car.vms { 2601 2602 public final class VmsAssociatedLayer implements android.os.Parcelable { 2603 ctor public VmsAssociatedLayer(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<java.lang.Integer>); 2604 method public int describeContents(); 2605 method @NonNull public java.util.Set<java.lang.Integer> getProviderIds(); 2606 method @Deprecated @NonNull public java.util.Set<java.lang.Integer> getPublisherIds(); 2607 method @NonNull public android.car.vms.VmsLayer getVmsLayer(); 2608 method public void writeToParcel(@NonNull android.os.Parcel, int); 2609 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAssociatedLayer> CREATOR; 2610 } 2611 2612 public final class VmsAvailableLayers implements android.os.Parcelable { 2613 ctor @Deprecated public VmsAvailableLayers(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>, int); 2614 ctor public VmsAvailableLayers(int, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2615 method public int describeContents(); 2616 method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers(); 2617 method @Deprecated public int getSequence(); 2618 method public int getSequenceNumber(); 2619 method public void writeToParcel(@NonNull android.os.Parcel, int); 2620 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAvailableLayers> CREATOR; 2621 } 2622 2623 public final class VmsClient { 2624 method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsAvailableLayers getAvailableLayers(); 2625 method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public byte[] getProviderDescription(int); 2626 method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsSubscriptionState getSubscriptionState(); 2627 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public boolean isMonitoringEnabled(); 2628 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void publishPacket(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]); 2629 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public int registerProvider(@NonNull byte[]); 2630 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setMonitoringEnabled(boolean); 2631 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void setProviderOfferings(int, @NonNull java.util.Set<android.car.vms.VmsLayerDependency>); 2632 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setSubscriptions(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2633 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void unregisterProvider(int); 2634 } 2635 2636 public final class VmsClientManager { 2637 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public void registerVmsClientCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.vms.VmsClientManager.VmsClientCallback); 2638 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public void unregisterVmsClientCallback(@NonNull android.car.vms.VmsClientManager.VmsClientCallback); 2639 } 2640 2641 public static interface VmsClientManager.VmsClientCallback { 2642 method public void onClientConnected(@NonNull android.car.vms.VmsClient); 2643 method public void onLayerAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers); 2644 method public void onPacketReceived(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]); 2645 method public void onSubscriptionStateChanged(@NonNull android.car.vms.VmsSubscriptionState); 2646 } 2647 2648 public final class VmsLayer implements android.os.Parcelable { 2649 ctor public VmsLayer(int, int, int); 2650 method public int describeContents(); 2651 method public int getChannel(); 2652 method @Deprecated public int getSubtype(); 2653 method public int getType(); 2654 method public int getVersion(); 2655 method public void writeToParcel(@NonNull android.os.Parcel, int); 2656 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayer> CREATOR; 2657 } 2658 2659 public final class VmsLayerDependency implements android.os.Parcelable { 2660 ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer); 2661 ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<android.car.vms.VmsLayer>); 2662 method public int describeContents(); 2663 method @NonNull public java.util.Set<android.car.vms.VmsLayer> getDependencies(); 2664 method @NonNull public android.car.vms.VmsLayer getLayer(); 2665 method public void writeToParcel(@NonNull android.os.Parcel, int); 2666 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayerDependency> CREATOR; 2667 } 2668 2669 @Deprecated public final class VmsLayersOffering implements android.os.Parcelable { 2670 ctor @Deprecated public VmsLayersOffering(@NonNull java.util.Set<android.car.vms.VmsLayerDependency>, int); 2671 method @Deprecated public int describeContents(); 2672 method @Deprecated @NonNull public java.util.Set<android.car.vms.VmsLayerDependency> getDependencies(); 2673 method @Deprecated public int getPublisherId(); 2674 method @Deprecated public void writeToParcel(@NonNull android.os.Parcel, int); 2675 field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayersOffering> CREATOR; 2676 } 2677 2678 @Deprecated public final class VmsOperationRecorder { 2679 method @Deprecated public void addHalSubscription(int, android.car.vms.VmsLayer); 2680 method @Deprecated public void addPromiscuousSubscription(int); 2681 method @Deprecated public void addSubscription(int, android.car.vms.VmsLayer); 2682 method @Deprecated public static android.car.vms.VmsOperationRecorder get(); 2683 method @Deprecated public void getPublisherId(int); 2684 method @Deprecated public void removeHalSubscription(int, android.car.vms.VmsLayer); 2685 method @Deprecated public void removePromiscuousSubscription(int); 2686 method @Deprecated public void removeSubscription(int, android.car.vms.VmsLayer); 2687 method @Deprecated public void setHalPublisherLayersOffering(android.car.vms.VmsLayersOffering); 2688 method @Deprecated public void setLayersOffering(android.car.vms.VmsLayersOffering); 2689 method @Deprecated public void setPublisherLayersOffering(android.car.vms.VmsLayersOffering); 2690 method @Deprecated public void startMonitoring(); 2691 method @Deprecated public void stopMonitoring(); 2692 method @Deprecated public void subscribe(android.car.vms.VmsLayer); 2693 method @Deprecated public void subscribe(android.car.vms.VmsLayer, int); 2694 method @Deprecated public void unsubscribe(android.car.vms.VmsLayer); 2695 method @Deprecated public void unsubscribe(android.car.vms.VmsLayer, int); 2696 } 2697 2698 @Deprecated public abstract class VmsPublisherClientService extends android.app.Service { 2699 ctor @Deprecated public VmsPublisherClientService(); 2700 method @Deprecated public final int getPublisherId(byte[]); 2701 method @Deprecated public final android.car.vms.VmsSubscriptionState getSubscriptions(); 2702 method @Deprecated public android.os.IBinder onBind(android.content.Intent); 2703 method @Deprecated protected abstract void onVmsPublisherServiceReady(); 2704 method @Deprecated public abstract void onVmsSubscriptionChange(@NonNull android.car.vms.VmsSubscriptionState); 2705 method @Deprecated public final void publish(@NonNull android.car.vms.VmsLayer, int, byte[]); 2706 method @Deprecated public final void setLayersOffering(@NonNull android.car.vms.VmsLayersOffering); 2707 } 2708 2709 @Deprecated public final class VmsSubscriberManager { 2710 method @Deprecated public void clearVmsSubscriberClientCallback(); 2711 method @Deprecated @NonNull public android.car.vms.VmsAvailableLayers getAvailableLayers(); 2712 method @Deprecated @NonNull public byte[] getPublisherInfo(int); 2713 method @Deprecated public void setVmsSubscriberClientCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.vms.VmsSubscriberManager.VmsSubscriberClientCallback); 2714 method @Deprecated public void startMonitoring(); 2715 method @Deprecated public void stopMonitoring(); 2716 method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer); 2717 method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer, int); 2718 method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer); 2719 method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer, int); 2720 } 2721 2722 @Deprecated public static interface VmsSubscriberManager.VmsSubscriberClientCallback { 2723 method @Deprecated public void onLayersAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers); 2724 method @Deprecated public void onVmsMessageReceived(@NonNull android.car.vms.VmsLayer, byte[]); 2725 } 2726 2727 public final class VmsSubscriptionState implements android.os.Parcelable { 2728 ctor public VmsSubscriptionState(int, @NonNull java.util.Set<android.car.vms.VmsLayer>, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2729 method public int describeContents(); 2730 method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers(); 2731 method @NonNull public java.util.Set<android.car.vms.VmsLayer> getLayers(); 2732 method public int getSequenceNumber(); 2733 method public void writeToParcel(@NonNull android.os.Parcel, int); 2734 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsSubscriptionState> CREATOR; 2735 } 2736 2737} 2738 2739package android.car.watchdog { 2740 2741 public final class CarWatchdogManager { 2742 method @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public void addResourceOveruseListenerForSystem(@NonNull java.util.concurrent.Executor, int, @NonNull android.car.watchdog.CarWatchdogManager.ResourceOveruseListener); 2743 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public java.util.List<android.car.watchdog.ResourceOveruseStats> getAllResourceOveruseStats(int, int, int); 2744 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public java.util.List<android.car.watchdog.PackageKillableState> getPackageKillableStatesAsUser(@NonNull android.os.UserHandle); 2745 method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG, android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS}) public java.util.List<android.car.watchdog.ResourceOveruseConfiguration> getResourceOveruseConfigurations(int); 2746 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public android.car.watchdog.ResourceOveruseStats getResourceOveruseStatsForUserPackage(@NonNull String, @NonNull android.os.UserHandle, int, int); 2747 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void registerClient(@NonNull java.util.concurrent.Executor, @NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int); 2748 method @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public void removeResourceOveruseListenerForSystem(@NonNull android.car.watchdog.CarWatchdogManager.ResourceOveruseListener); 2749 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public void setKillablePackageAsUser(@NonNull String, @NonNull android.os.UserHandle, boolean); 2750 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public int setResourceOveruseConfigurations(@NonNull java.util.List<android.car.watchdog.ResourceOveruseConfiguration>, int); 2751 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void tellClientAlive(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int); 2752 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void unregisterClient(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback); 2753 field public static final int FLAG_MINIMUM_STATS_IO_100_MB = 2; // 0x2 2754 field public static final int FLAG_MINIMUM_STATS_IO_1_GB = 4; // 0x4 2755 field public static final int FLAG_MINIMUM_STATS_IO_1_MB = 1; // 0x1 2756 field public static final int RETURN_CODE_ERROR = -1; // 0xffffffff 2757 field public static final int RETURN_CODE_SUCCESS = 0; // 0x0 2758 field public static final int TIMEOUT_CRITICAL = 0; // 0x0 2759 field public static final int TIMEOUT_MODERATE = 1; // 0x1 2760 field public static final int TIMEOUT_NORMAL = 2; // 0x2 2761 } 2762 2763 public abstract static class CarWatchdogManager.CarWatchdogClientCallback { 2764 ctor public CarWatchdogManager.CarWatchdogClientCallback(); 2765 method public boolean onCheckHealthStatus(int, int); 2766 method public void onPrepareProcessTermination(); 2767 } 2768 2769 public final class IoOveruseAlertThreshold implements android.os.Parcelable { 2770 method public int describeContents(); 2771 method public long getDurationInSeconds(); 2772 method public long getWrittenBytesPerSecond(); 2773 method public void writeToParcel(@NonNull android.os.Parcel, int); 2774 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseAlertThreshold> CREATOR; 2775 } 2776 2777 public final class IoOveruseConfiguration implements android.os.Parcelable { 2778 method public int describeContents(); 2779 method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getAppCategorySpecificThresholds(); 2780 method @NonNull public android.car.watchdog.PerStateBytes getComponentLevelThresholds(); 2781 method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getPackageSpecificThresholds(); 2782 method @NonNull public java.util.List<android.car.watchdog.IoOveruseAlertThreshold> getSystemWideThresholds(); 2783 method public void writeToParcel(@NonNull android.os.Parcel, int); 2784 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseConfiguration> CREATOR; 2785 } 2786 2787 public static final class IoOveruseConfiguration.Builder { 2788 ctor public IoOveruseConfiguration.Builder(@NonNull android.car.watchdog.PerStateBytes, @NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>, @NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>, @NonNull java.util.List<android.car.watchdog.IoOveruseAlertThreshold>); 2789 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addAppCategorySpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes); 2790 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addPackageSpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes); 2791 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addSystemWideThresholds(@NonNull android.car.watchdog.IoOveruseAlertThreshold); 2792 method @NonNull public android.car.watchdog.IoOveruseConfiguration build(); 2793 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setAppCategorySpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>); 2794 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setComponentLevelThresholds(@NonNull android.car.watchdog.PerStateBytes); 2795 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setPackageSpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>); 2796 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setSystemWideThresholds(@NonNull java.util.List<android.car.watchdog.IoOveruseAlertThreshold>); 2797 } 2798 2799 public final class PackageKillableState implements android.os.Parcelable { 2800 method public int describeContents(); 2801 method public int getKillableState(); 2802 method @NonNull public String getPackageName(); 2803 method public int getUserId(); 2804 method public void writeToParcel(@NonNull android.os.Parcel, int); 2805 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.PackageKillableState> CREATOR; 2806 field public static final int KILLABLE_STATE_NEVER = 3; // 0x3 2807 field public static final int KILLABLE_STATE_NO = 2; // 0x2 2808 field public static final int KILLABLE_STATE_YES = 1; // 0x1 2809 } 2810 2811 public final class ResourceOveruseConfiguration implements android.os.Parcelable { 2812 method public int describeContents(); 2813 method public int getComponentType(); 2814 method @Nullable public android.car.watchdog.IoOveruseConfiguration getIoOveruseConfiguration(); 2815 method @NonNull public java.util.Map<java.lang.String,java.lang.String> getPackagesToAppCategoryTypes(); 2816 method @NonNull public java.util.List<java.lang.String> getSafeToKillPackages(); 2817 method @NonNull public java.util.List<java.lang.String> getVendorPackagePrefixes(); 2818 method public void writeToParcel(@NonNull android.os.Parcel, int); 2819 field public static final String APPLICATION_CATEGORY_TYPE_MAPS = "android.car.watchdog.app.category.MAPS"; 2820 field public static final String APPLICATION_CATEGORY_TYPE_MEDIA = "android.car.watchdog.app.category.MEDIA"; 2821 field public static final int COMPONENT_TYPE_SYSTEM = 1; // 0x1 2822 field public static final int COMPONENT_TYPE_THIRD_PARTY = 3; // 0x3 2823 field public static final int COMPONENT_TYPE_VENDOR = 2; // 0x2 2824 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.ResourceOveruseConfiguration> CREATOR; 2825 } 2826 2827 public static final class ResourceOveruseConfiguration.Builder { 2828 ctor public ResourceOveruseConfiguration.Builder(int, @NonNull java.util.List<java.lang.String>, @NonNull java.util.List<java.lang.String>, @NonNull java.util.Map<java.lang.String,java.lang.String>); 2829 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addPackagesToAppCategoryTypes(@NonNull String, @NonNull String); 2830 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addSafeToKillPackages(@NonNull String); 2831 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addVendorPackagePrefixes(@NonNull String); 2832 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration build(); 2833 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setComponentType(int); 2834 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setIoOveruseConfiguration(@NonNull android.car.watchdog.IoOveruseConfiguration); 2835 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setPackagesToAppCategoryTypes(@NonNull java.util.Map<java.lang.String,java.lang.String>); 2836 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setSafeToKillPackages(@NonNull java.util.List<java.lang.String>); 2837 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setVendorPackagePrefixes(@NonNull java.util.List<java.lang.String>); 2838 } 2839 2840} 2841 2842package android.car.wifi { 2843 2844 @FlaggedApi("android.car.feature.persist_ap_settings") public final class CarWifiManager { 2845 method @FlaggedApi("android.car.feature.persist_ap_settings") @RequiresPermission(android.car.Car.PERMISSION_READ_PERSIST_TETHERING_SETTINGS) public boolean canControlPersistTetheringSettings(); 2846 } 2847 2848} 2849 2850