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 @FlaggedApi("android.car.feature.car_property_simulation") public boolean isPropertyIdSimulationPropId(); 949 method @Deprecated public static <T> android.car.hardware.CarPropertyConfig.Builder<T> newBuilder(Class<T>, int, int, int); 950 } 951 952 @Deprecated public static class CarPropertyConfig.Builder<T> { 953 method @Deprecated @NonNull public android.car.hardware.CarPropertyConfig.Builder<T> addAreaIdConfig(@NonNull android.car.hardware.property.AreaIdConfig<T>); 954 method @Deprecated public android.car.hardware.CarPropertyConfig<T> build(); 955 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setAccess(int); 956 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setChangeMode(int); 957 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setConfigArray(java.util.ArrayList<java.lang.Integer>); 958 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setConfigString(String); 959 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setMaxSampleRate(float); 960 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setMinSampleRate(float); 961 method @Deprecated public android.car.hardware.CarPropertyConfig.Builder<T> setPropertyIdIsSimulationPropId(boolean); 962 } 963 964 public final class CarPropertyValue<T> implements android.os.Parcelable { 965 method @FlaggedApi("android.car.feature.car_property_simulation") public boolean isPropertyIdSimulationPropId(); 966 } 967 968 @Deprecated public final class CarVendorExtensionManager { 969 method @Deprecated public <E> E getGlobalProperty(Class<E>, int); 970 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getProperties(); 971 method @Deprecated public <E> E getProperty(Class<E>, int, int); 972 method @Deprecated public boolean isPropertyAvailable(int, int); 973 method @Deprecated public void registerCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback); 974 method @Deprecated public <E> void setGlobalProperty(Class<E>, int, E); 975 method @Deprecated public <E> void setProperty(Class<E>, int, int, E); 976 method @Deprecated public void unregisterCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback); 977 } 978 979 @Deprecated public static interface CarVendorExtensionManager.CarVendorExtensionCallback { 980 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 981 method @Deprecated public void onErrorEvent(int, int); 982 } 983 984} 985 986package android.car.hardware.cabin { 987 988 @Deprecated public final class CarCabinManager { 989 method @Deprecated public boolean getBooleanProperty(int, int); 990 method @Deprecated public float getFloatProperty(int, int); 991 method @Deprecated public int getIntProperty(int, int); 992 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList(); 993 method @Deprecated public static boolean isZonedProperty(int); 994 method @Deprecated public void registerCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback); 995 method @Deprecated public void setBooleanProperty(int, int, boolean); 996 method @Deprecated public void setFloatProperty(int, int, float); 997 method @Deprecated public void setIntProperty(int, int, int); 998 method @Deprecated public void unregisterCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback); 999 field @Deprecated public static final int ID_DOOR_LOCK = 371198722; // 0x16200b02 1000 field @Deprecated public static final int ID_DOOR_MOVE = 373295873; // 0x16400b01 1001 field @Deprecated public static final int ID_DOOR_POS = 373295872; // 0x16400b00 1002 field @Deprecated public static final int ID_MIRROR_FOLD = 287312709; // 0x11200b45 1003 field @Deprecated public static final int ID_MIRROR_LOCK = 287312708; // 0x11200b44 1004 field @Deprecated public static final int ID_MIRROR_Y_MOVE = 339741507; // 0x14400b43 1005 field @Deprecated public static final int ID_MIRROR_Y_POS = 339741506; // 0x14400b42 1006 field @Deprecated public static final int ID_MIRROR_Z_MOVE = 339741505; // 0x14400b41 1007 field @Deprecated public static final int ID_MIRROR_Z_POS = 339741504; // 0x14400b40 1008 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_MOVE = 356518792; // 0x15400b88 1009 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_POS = 356518791; // 0x15400b87 1010 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_MOVE = 356518794; // 0x15400b8a 1011 field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_POS = 356518793; // 0x15400b89 1012 field @Deprecated public static final int ID_SEAT_BELT_BUCKLED = 354421634; // 0x15200b82 1013 field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_MOVE = 356518788; // 0x15400b84 1014 field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_POS = 356518787; // 0x15400b83 1015 field @Deprecated public static final int ID_SEAT_DEPTH_MOVE = 356518798; // 0x15400b8e 1016 field @Deprecated public static final int ID_SEAT_DEPTH_POS = 356518797; // 0x15400b8d 1017 field @Deprecated public static final int ID_SEAT_FORE_AFT_MOVE = 356518790; // 0x15400b86 1018 field @Deprecated public static final int ID_SEAT_FORE_AFT_POS = 356518789; // 0x15400b85 1019 field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_MOVE = 356518808; // 0x15400b98 1020 field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_POS = 356518807; // 0x15400b97 1021 field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_MOVE = 356518810; // 0x15400b9a 1022 field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_POS = 356518809; // 0x15400b99 1023 field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_MOVE = 356518806; // 0x15400b96 1024 field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_POS = 356518805; // 0x15400b95 1025 field @Deprecated public static final int ID_SEAT_HEIGHT_MOVE = 356518796; // 0x15400b8c 1026 field @Deprecated public static final int ID_SEAT_HEIGHT_POS = 356518795; // 0x15400b8b 1027 field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_MOVE = 356518802; // 0x15400b92 1028 field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_POS = 356518801; // 0x15400b91 1029 field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 356518804; // 0x15400b94 1030 field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_POS = 356518803; // 0x15400b93 1031 field @Deprecated public static final int ID_SEAT_MEMORY_SELECT = 356518784; // 0x15400b80 1032 field @Deprecated public static final int ID_SEAT_MEMORY_SET = 356518785; // 0x15400b81 1033 field @Deprecated public static final int ID_SEAT_TILT_MOVE = 356518800; // 0x15400b90 1034 field @Deprecated public static final int ID_SEAT_TILT_POS = 356518799; // 0x15400b8f 1035 field @Deprecated public static final int ID_WINDOW_LOCK = 322964420; // 0x13400bc4 1036 field @Deprecated public static final int ID_WINDOW_MOVE = 322964417; // 0x13400bc1 1037 field @Deprecated public static final int ID_WINDOW_POS = 322964416; // 0x13400bc0 1038 } 1039 1040 @Deprecated public static interface CarCabinManager.CarCabinEventCallback { 1041 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 1042 method @Deprecated public void onErrorEvent(int, int); 1043 } 1044 1045} 1046 1047package android.car.hardware.hvac { 1048 1049 @Deprecated public final class CarHvacManager { 1050 method @Deprecated public boolean getBooleanProperty(int, int); 1051 method @Deprecated public float getFloatProperty(int, int); 1052 method @Deprecated public int getIntProperty(int, int); 1053 method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList(); 1054 method @Deprecated public boolean isPropertyAvailable(int, int); 1055 method @Deprecated public void registerCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback); 1056 method @Deprecated public void setBooleanProperty(int, int, boolean); 1057 method @Deprecated public void setFloatProperty(int, int, float); 1058 method @Deprecated public void setIntProperty(int, int, int); 1059 method @Deprecated public void unregisterCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback); 1060 field @Deprecated public static final int FAN_DIRECTION_DEFROST = 4; // 0x4 1061 field @Deprecated public static final int FAN_DIRECTION_FACE = 1; // 0x1 1062 field @Deprecated public static final int FAN_DIRECTION_FLOOR = 2; // 0x2 1063 field @Deprecated public static final int ID_MIRROR_DEFROSTER_ON = 339739916; // 0x1440050c 1064 field @Deprecated public static final int ID_OUTSIDE_AIR_TEMP = 291505923; // 0x11600703 1065 field @Deprecated public static final int ID_STEERING_WHEEL_HEAT = 289408269; // 0x1140050d 1066 field @Deprecated public static final int ID_TEMPERATURE_DISPLAY_UNITS = 289408270; // 0x1140050e 1067 field @Deprecated public static final int ID_WINDOW_DEFROSTER_ON = 320865540; // 0x13200504 1068 field @Deprecated public static final int ID_ZONED_AC_ON = 354419973; // 0x15200505 1069 field @Deprecated public static final int ID_ZONED_AIR_RECIRCULATION_ON = 354419976; // 0x15200508 1070 field @Deprecated public static final int ID_ZONED_AUTOMATIC_MODE_ON = 354419978; // 0x1520050a 1071 field @Deprecated public static final int ID_ZONED_DUAL_ZONE_ON = 354419977; // 0x15200509 1072 field @Deprecated public static final int ID_ZONED_FAN_DIRECTION = 356517121; // 0x15400501 1073 field @Deprecated public static final int ID_ZONED_FAN_DIRECTION_AVAILABLE = 356582673; // 0x15410511 1074 field @Deprecated public static final int ID_ZONED_FAN_SPEED_RPM = 356517135; // 0x1540050f 1075 field @Deprecated public static final int ID_ZONED_FAN_SPEED_SETPOINT = 356517120; // 0x15400500 1076 field @Deprecated public static final int ID_ZONED_HVAC_AUTO_RECIRC_ON = 354419986; // 0x15200512 1077 field @Deprecated public static final int ID_ZONED_HVAC_POWER_ON = 354419984; // 0x15200510 1078 field @Deprecated public static final int ID_ZONED_MAX_AC_ON = 354419974; // 0x15200506 1079 field @Deprecated public static final int ID_ZONED_MAX_DEFROST_ON = 354419975; // 0x15200507 1080 field @Deprecated public static final int ID_ZONED_SEAT_TEMP = 356517131; // 0x1540050b 1081 field @Deprecated public static final int ID_ZONED_TEMP_ACTUAL = 358614274; // 0x15600502 1082 field @Deprecated public static final int ID_ZONED_TEMP_SETPOINT = 358614275; // 0x15600503 1083 } 1084 1085 @Deprecated public static interface CarHvacManager.CarHvacEventCallback { 1086 method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue); 1087 method @Deprecated public void onErrorEvent(int, int); 1088 } 1089 1090} 1091 1092package android.car.hardware.power { 1093 1094 public class CarPowerManager { 1095 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void applyPowerPolicy(@NonNull String); 1096 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void clearListener(); 1097 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public int getPowerState(); 1098 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void setDisplayPowerState(int, boolean); 1099 method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void setListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListener); 1100 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_SHUTDOWN_PROCESS) public void setListenerWithCompletion(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListenerWithCompletion); 1101 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void setPowerPolicyGroup(@NonNull String); 1102 field public static final int STATE_HIBERNATION_ENTER = 9; // 0x9 1103 field public static final int STATE_HIBERNATION_EXIT = 10; // 0xa 1104 field public static final int STATE_INVALID = 0; // 0x0 1105 field public static final int STATE_ON = 6; // 0x6 1106 field public static final int STATE_POST_HIBERNATION_ENTER = 14; // 0xe 1107 field public static final int STATE_POST_SHUTDOWN_ENTER = 13; // 0xd 1108 field public static final int STATE_POST_SUSPEND_ENTER = 12; // 0xc 1109 field public static final int STATE_PRE_SHUTDOWN_PREPARE = 11; // 0xb 1110 field public static final int STATE_SHUTDOWN_CANCELLED = 8; // 0x8 1111 field public static final int STATE_SHUTDOWN_ENTER = 5; // 0x5 1112 field public static final int STATE_SHUTDOWN_PREPARE = 7; // 0x7 1113 field public static final int STATE_SUSPEND_ENTER = 2; // 0x2 1114 field public static final int STATE_SUSPEND_EXIT = 3; // 0x3 1115 field public static final int STATE_WAIT_FOR_VHAL = 1; // 0x1 1116 } 1117 1118 public static interface CarPowerManager.CarPowerStateListener { 1119 method public void onStateChanged(int); 1120 } 1121 1122 public static interface CarPowerManager.CarPowerStateListenerWithCompletion { 1123 method public void onStateChanged(int, @Nullable android.car.hardware.power.CarPowerManager.CompletablePowerStateChangeFuture); 1124 } 1125 1126 public static interface CarPowerManager.CompletablePowerStateChangeFuture { 1127 method public void complete(); 1128 method public long getExpirationTime(); 1129 } 1130 1131} 1132 1133package android.car.hardware.property { 1134 1135 @Deprecated public static final class AreaIdConfig.Builder<T> { 1136 ctor @Deprecated public AreaIdConfig.Builder(int); 1137 ctor @Deprecated @FlaggedApi("android.car.feature.area_id_config_access") public AreaIdConfig.Builder(int, int); 1138 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig<T> build(); 1139 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setMaxValue(T); 1140 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setMinValue(T); 1141 method @Deprecated @NonNull public android.car.hardware.property.AreaIdConfig.Builder<T> setSupportedEnumValues(@NonNull java.util.List<T>); 1142 } 1143 1144 public final class AutomaticEmergencyBrakingState { 1145 method @NonNull public static String toString(int); 1146 field public static final int ACTIVATED = 2; // 0x2 1147 field public static final int ENABLED = 1; // 0x1 1148 field public static final int OTHER = 0; // 0x0 1149 field public static final int USER_OVERRIDE = 3; // 0x3 1150 } 1151 1152 public final class BlindSpotWarningState { 1153 method @NonNull public static String toString(int); 1154 field public static final int NO_WARNING = 1; // 0x1 1155 field public static final int OTHER = 0; // 0x0 1156 field public static final int WARNING = 2; // 0x2 1157 } 1158 1159 public class CarInternalErrorException extends java.lang.RuntimeException { 1160 method public int getVendorErrorCode(); 1161 } 1162 1163 public static final class CarPropertyManager.PropertyAsyncError { 1164 method public int getVendorErrorCode(); 1165 } 1166 1167 @FlaggedApi("android.car.feature.car_property_simulation") public final class CarPropertySimulationManager { 1168 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); 1169 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public void disableInjectionMode(); 1170 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public long enableInjectionMode(@NonNull java.util.List<java.lang.Integer>); 1171 method @FlaggedApi("android.car.feature.car_property_simulation") @Nullable @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public android.car.hardware.CarPropertyValue getLastInjectedVehicleProperty(int); 1172 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>); 1173 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_RECORD_VEHICLE_PROPERTIES) public boolean isRecordingVehicleProperties(); 1174 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_INJECT_VEHICLE_PROPERTIES) public boolean isVehiclePropertyInjectionModeEnabled(); 1175 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); 1176 method @FlaggedApi("android.car.feature.car_property_simulation") @RequiresPermission(android.car.Car.PERMISSION_RECORD_VEHICLE_PROPERTIES) public void stopRecordingVehicleProperties(); 1177 } 1178 1179 @FlaggedApi("android.car.feature.car_property_simulation") public static interface CarPropertySimulationManager.CarRecorderListener { 1180 method @FlaggedApi("android.car.feature.car_property_simulation") public void onCarPropertyEvents(@NonNull java.util.List<android.car.hardware.CarPropertyValue<?>>); 1181 method @FlaggedApi("android.car.feature.car_property_simulation") public void onRecordingFinished(); 1182 } 1183 1184 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class CrossTrafficMonitoringWarningState { 1185 method @NonNull public static String toString(int); 1186 field public static final int NO_WARNING = 1; // 0x1 1187 field public static final int OTHER = 0; // 0x0 1188 field public static final int WARNING_FRONT_BOTH = 4; // 0x4 1189 field public static final int WARNING_FRONT_LEFT = 2; // 0x2 1190 field public static final int WARNING_FRONT_RIGHT = 3; // 0x3 1191 field public static final int WARNING_REAR_BOTH = 7; // 0x7 1192 field public static final int WARNING_REAR_LEFT = 5; // 0x5 1193 field public static final int WARNING_REAR_RIGHT = 6; // 0x6 1194 } 1195 1196 public class CruiseControlCommand { 1197 method @NonNull public static String toString(int); 1198 field public static final int ACTIVATE = 1; // 0x1 1199 field public static final int DECREASE_TARGET_SPEED = 4; // 0x4 1200 field public static final int DECREASE_TARGET_TIME_GAP = 6; // 0x6 1201 field public static final int INCREASE_TARGET_SPEED = 3; // 0x3 1202 field public static final int INCREASE_TARGET_TIME_GAP = 5; // 0x5 1203 field public static final int SUSPEND = 2; // 0x2 1204 } 1205 1206 public class CruiseControlState { 1207 method @NonNull public static String toString(int); 1208 field public static final int ACTIVATED = 2; // 0x2 1209 field public static final int ENABLED = 1; // 0x1 1210 field public static final int FORCED_DEACTIVATION_WARNING = 5; // 0x5 1211 field public static final int OTHER = 0; // 0x0 1212 field public static final int SUSPENDED = 4; // 0x4 1213 field public static final int USER_OVERRIDE = 3; // 0x3 1214 } 1215 1216 public class CruiseControlType { 1217 method @NonNull public static String toString(int); 1218 field public static final int ADAPTIVE = 2; // 0x2 1219 field public static final int OTHER = 0; // 0x0 1220 field public static final int PREDICTIVE = 3; // 0x3 1221 field public static final int STANDARD = 1; // 0x1 1222 } 1223 1224 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDistractionState { 1225 method @NonNull public static String toString(int); 1226 field public static final int DISTRACTED = 2; // 0x2 1227 field public static final int NOT_DISTRACTED = 1; // 0x1 1228 field public static final int OTHER = 0; // 0x0 1229 } 1230 1231 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDistractionWarning { 1232 method @NonNull public static String toString(int); 1233 field public static final int NO_WARNING = 1; // 0x1 1234 field public static final int OTHER = 0; // 0x0 1235 field public static final int WARNING = 2; // 0x2 1236 } 1237 1238 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDrowsinessAttentionState { 1239 method @NonNull public static String toString(int); 1240 field public static final int KSS_RATING_1_EXTREMELY_ALERT = 1; // 0x1 1241 field public static final int KSS_RATING_2_VERY_ALERT = 2; // 0x2 1242 field public static final int KSS_RATING_3_ALERT = 3; // 0x3 1243 field public static final int KSS_RATING_4_RATHER_ALERT = 4; // 0x4 1244 field public static final int KSS_RATING_5_NEITHER_ALERT_NOR_SLEEPY = 5; // 0x5 1245 field public static final int KSS_RATING_6_SOME_SLEEPINESS = 6; // 0x6 1246 field public static final int KSS_RATING_7_SLEEPY_NO_EFFORT = 7; // 0x7 1247 field public static final int KSS_RATING_8_SLEEPY_SOME_EFFORT = 8; // 0x8 1248 field public static final int KSS_RATING_9_VERY_SLEEPY = 9; // 0x9 1249 field public static final int OTHER = 0; // 0x0 1250 } 1251 1252 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class DriverDrowsinessAttentionWarning { 1253 method @NonNull public static String toString(int); 1254 field public static final int NO_WARNING = 1; // 0x1 1255 field public static final int OTHER = 0; // 0x0 1256 field public static final int WARNING = 2; // 0x2 1257 } 1258 1259 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class ElectronicStabilityControlState { 1260 method @NonNull public static String toString(int); 1261 field public static final int ACTIVATED = 2; // 0x2 1262 field public static final int ENABLED = 1; // 0x1 1263 field public static final int OTHER = 0; // 0x0 1264 } 1265 1266 public class EmergencyLaneKeepAssistState { 1267 method @NonNull public static String toString(int); 1268 field public static final int ACTIVATED_STEER_LEFT = 4; // 0x4 1269 field public static final int ACTIVATED_STEER_RIGHT = 5; // 0x5 1270 field public static final int ENABLED = 1; // 0x1 1271 field public static final int OTHER = 0; // 0x0 1272 field public static final int USER_OVERRIDE = 6; // 0x6 1273 field public static final int WARNING_LEFT = 2; // 0x2 1274 field public static final int WARNING_RIGHT = 3; // 0x3 1275 } 1276 1277 public final class ErrorState { 1278 method @NonNull public static String toString(int); 1279 field public static final int NOT_AVAILABLE_DISABLED = -2; // 0xfffffffe 1280 field public static final int NOT_AVAILABLE_POOR_VISIBILITY = -5; // 0xfffffffb 1281 field public static final int NOT_AVAILABLE_SAFETY = -6; // 0xfffffffa 1282 field public static final int NOT_AVAILABLE_SPEED_HIGH = -4; // 0xfffffffc 1283 field public static final int NOT_AVAILABLE_SPEED_LOW = -3; // 0xfffffffd 1284 field public static final int OTHER_ERROR_STATE = -1; // 0xffffffff 1285 } 1286 1287 public final class EvStoppingMode { 1288 method @NonNull public static String toString(int); 1289 field public static final int STATE_CREEP = 1; // 0x1 1290 field public static final int STATE_HOLD = 3; // 0x3 1291 field public static final int STATE_OTHER = 0; // 0x0 1292 field public static final int STATE_ROLL = 2; // 0x2 1293 } 1294 1295 public final class ForwardCollisionWarningState { 1296 method @NonNull public static String toString(int); 1297 field public static final int NO_WARNING = 1; // 0x1 1298 field public static final int OTHER = 0; // 0x0 1299 field public static final int WARNING = 2; // 0x2 1300 } 1301 1302 public class HandsOnDetectionDriverState { 1303 method @NonNull public static String toString(int); 1304 field public static final int HANDS_OFF = 2; // 0x2 1305 field public static final int HANDS_ON = 1; // 0x1 1306 field public static final int OTHER = 0; // 0x0 1307 } 1308 1309 public class HandsOnDetectionWarning { 1310 method @NonNull public static String toString(int); 1311 field public static final int NO_WARNING = 1; // 0x1 1312 field public static final int OTHER = 0; // 0x0 1313 field public static final int WARNING = 2; // 0x2 1314 } 1315 1316 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class ImpactSensorLocation { 1317 method @NonNull public static String toString(int); 1318 field public static final int FRONT = 2; // 0x2 1319 field public static final int FRONT_LEFT_DOOR_SIDE = 4; // 0x4 1320 field public static final int FRONT_RIGHT_DOOR_SIDE = 8; // 0x8 1321 field public static final int OTHER = 1; // 0x1 1322 field public static final int REAR = 64; // 0x40 1323 field public static final int REAR_LEFT_DOOR_SIDE = 16; // 0x10 1324 field public static final int REAR_RIGHT_DOOR_SIDE = 32; // 0x20 1325 } 1326 1327 public final class LaneCenteringAssistCommand { 1328 method @NonNull public static String toString(int); 1329 field public static final int ACTIVATE = 1; // 0x1 1330 field public static final int DEACTIVATE = 2; // 0x2 1331 } 1332 1333 public final class LaneCenteringAssistState { 1334 method @NonNull public static String toString(int); 1335 field public static final int ACTIVATED = 3; // 0x3 1336 field public static final int ACTIVATION_REQUESTED = 2; // 0x2 1337 field public static final int ENABLED = 1; // 0x1 1338 field public static final int FORCED_DEACTIVATION_WARNING = 5; // 0x5 1339 field public static final int OTHER = 0; // 0x0 1340 field public static final int USER_OVERRIDE = 4; // 0x4 1341 } 1342 1343 public final class LaneDepartureWarningState { 1344 method @NonNull public static String toString(int); 1345 field public static final int NO_WARNING = 1; // 0x1 1346 field public static final int OTHER = 0; // 0x0 1347 field public static final int WARNING_LEFT = 2; // 0x2 1348 field public static final int WARNING_RIGHT = 3; // 0x3 1349 } 1350 1351 public final class LaneKeepAssistState { 1352 method @NonNull public static String toString(int); 1353 field public static final int ACTIVATED_STEER_LEFT = 2; // 0x2 1354 field public static final int ACTIVATED_STEER_RIGHT = 3; // 0x3 1355 field public static final int ENABLED = 1; // 0x1 1356 field public static final int OTHER = 0; // 0x0 1357 field public static final int USER_OVERRIDE = 4; // 0x4 1358 } 1359 1360 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class LowSpeedAutomaticEmergencyBrakingState { 1361 method @NonNull public static String toString(int); 1362 field public static final int ACTIVATED = 2; // 0x2 1363 field public static final int ENABLED = 1; // 0x1 1364 field public static final int OTHER = 0; // 0x0 1365 field public static final int USER_OVERRIDE = 3; // 0x3 1366 } 1367 1368 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class LowSpeedCollisionWarningState { 1369 method @NonNull public static String toString(int); 1370 field public static final int NO_WARNING = 1; // 0x1 1371 field public static final int OTHER = 0; // 0x0 1372 field public static final int WARNING = 2; // 0x2 1373 } 1374 1375 public class PropertyNotAvailableException extends java.lang.IllegalStateException { 1376 method public int getVendorErrorCode(); 1377 } 1378 1379 public final class TrailerState { 1380 method @NonNull public static String toString(int); 1381 field public static final int STATE_ERROR = 3; // 0x3 1382 field public static final int STATE_NOT_PRESENT = 1; // 0x1 1383 field public static final int STATE_PRESENT = 2; // 0x2 1384 field public static final int STATE_UNKNOWN = 0; // 0x0 1385 } 1386 1387 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class VehicleAirbagLocation { 1388 method @NonNull public static String toString(int); 1389 field public static final int CURTAIN = 32; // 0x20 1390 field public static final int FRONT = 2; // 0x2 1391 field public static final int KNEE = 4; // 0x4 1392 field public static final int LEFT_SIDE = 8; // 0x8 1393 field public static final int OTHER = 1; // 0x1 1394 field public static final int RIGHT_SIDE = 16; // 0x10 1395 } 1396 1397 @FlaggedApi("android.car.feature.android_vic_vehicle_properties") public final class VehicleAutonomousState { 1398 method @NonNull public static String toString(int); 1399 field public static final int LEVEL_0 = 0; // 0x0 1400 field public static final int LEVEL_1 = 1; // 0x1 1401 field public static final int LEVEL_2 = 2; // 0x2 1402 field public static final int LEVEL_3 = 3; // 0x3 1403 field public static final int LEVEL_4 = 4; // 0x4 1404 field public static final int LEVEL_5 = 5; // 0x5 1405 } 1406 1407 public final class VehicleLightState { 1408 method @NonNull public static String toString(int); 1409 field public static final int STATE_DAYTIME_RUNNING = 2; // 0x2 1410 field public static final int STATE_OFF = 0; // 0x0 1411 field public static final int STATE_ON = 1; // 0x1 1412 } 1413 1414 public final class VehicleLightSwitch { 1415 method @NonNull public static String toString(int); 1416 field public static final int STATE_AUTOMATIC = 256; // 0x100 1417 field public static final int STATE_DAYTIME_RUNNING = 2; // 0x2 1418 field public static final int STATE_OFF = 0; // 0x0 1419 field public static final int STATE_ON = 1; // 0x1 1420 } 1421 1422 public final class VehicleOilLevel { 1423 method @NonNull public static String toString(int); 1424 field public static final int LEVEL_CRITICALLY_LOW = 0; // 0x0 1425 field public static final int LEVEL_ERROR = 4; // 0x4 1426 field public static final int LEVEL_HIGH = 3; // 0x3 1427 field public static final int LEVEL_LOW = 1; // 0x1 1428 field public static final int LEVEL_NORMAL = 2; // 0x2 1429 } 1430 1431 public final class VehicleTurnSignal { 1432 method @NonNull public static String toString(int); 1433 field public static final int STATE_LEFT = 2; // 0x2 1434 field public static final int STATE_NONE = 0; // 0x0 1435 field public static final int STATE_RIGHT = 1; // 0x1 1436 } 1437 1438 public final class VehicleVendorPermission { 1439 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_1"; 1440 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_10"; 1441 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_2"; 1442 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_3"; 1443 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_4"; 1444 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_5"; 1445 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_6"; 1446 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_7"; 1447 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_8"; 1448 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_9"; 1449 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_DOOR"; 1450 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.GET_CAR_VENDOR_CATEGORY_ENGINE"; 1451 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.GET_CAR_VENDOR_CATEGORY_HVAC"; 1452 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.GET_CAR_VENDOR_CATEGORY_INFO"; 1453 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_LIGHT"; 1454 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_MIRROR"; 1455 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_SEAT"; 1456 field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.GET_CAR_VENDOR_CATEGORY_WINDOW"; 1457 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_1"; 1458 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_10"; 1459 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_2"; 1460 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_3"; 1461 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_4"; 1462 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_5"; 1463 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_6"; 1464 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_7"; 1465 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_8"; 1466 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_9"; 1467 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_DOOR"; 1468 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.SET_CAR_VENDOR_CATEGORY_ENGINE"; 1469 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.SET_CAR_VENDOR_CATEGORY_HVAC"; 1470 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.SET_CAR_VENDOR_CATEGORY_INFO"; 1471 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_LIGHT"; 1472 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_MIRROR"; 1473 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_SEAT"; 1474 field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.SET_CAR_VENDOR_CATEGORY_WINDOW"; 1475 } 1476 1477 public final class WindshieldWipersState { 1478 method @NonNull public static String toString(int); 1479 field public static final int OFF = 1; // 0x1 1480 field public static final int ON = 2; // 0x2 1481 field public static final int OTHER = 0; // 0x0 1482 field public static final int SERVICE = 3; // 0x3 1483 } 1484 1485 public final class WindshieldWipersSwitch { 1486 method @NonNull public static String toString(int); 1487 field public static final int AUTO = 13; // 0xd 1488 field public static final int CONTINUOUS_LEVEL_1 = 8; // 0x8 1489 field public static final int CONTINUOUS_LEVEL_2 = 9; // 0x9 1490 field public static final int CONTINUOUS_LEVEL_3 = 10; // 0xa 1491 field public static final int CONTINUOUS_LEVEL_4 = 11; // 0xb 1492 field public static final int CONTINUOUS_LEVEL_5 = 12; // 0xc 1493 field public static final int INTERMITTENT_LEVEL_1 = 3; // 0x3 1494 field public static final int INTERMITTENT_LEVEL_2 = 4; // 0x4 1495 field public static final int INTERMITTENT_LEVEL_3 = 5; // 0x5 1496 field public static final int INTERMITTENT_LEVEL_4 = 6; // 0x6 1497 field public static final int INTERMITTENT_LEVEL_5 = 7; // 0x7 1498 field public static final int MIST = 2; // 0x2 1499 field public static final int OFF = 1; // 0x1 1500 field public static final int OTHER = 0; // 0x0 1501 field public static final int SERVICE = 14; // 0xe 1502 } 1503 1504} 1505 1506package android.car.input { 1507 1508 public final class CarInputManager { 1509 method @RequiresPermission(android.Manifest.permission.INJECT_EVENTS) public void injectKeyEvent(@NonNull android.view.KeyEvent, int); 1510 method public void releaseInputEventCapture(int); 1511 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); 1512 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); 1513 field public static final int CAPTURE_REQ_FLAGS_ALLOW_DELAYED_GRANT = 1; // 0x1 1514 field public static final int CAPTURE_REQ_FLAGS_TAKE_ALL_EVENTS_FOR_DISPLAY = 2; // 0x2 1515 field public static final int INPUT_CAPTURE_RESPONSE_DELAYED = 2; // 0x2 1516 field public static final int INPUT_CAPTURE_RESPONSE_FAILED = 1; // 0x1 1517 field public static final int INPUT_CAPTURE_RESPONSE_SUCCEEDED = 0; // 0x0 1518 field public static final int INPUT_TYPE_ALL_INPUTS = 1; // 0x1 1519 } 1520 1521 public static interface CarInputManager.CarInputCaptureCallback { 1522 method public default void onCaptureStateChanged(int, @NonNull int[]); 1523 method public default void onCustomInputEvents(int, @NonNull java.util.List<android.car.input.CustomInputEvent>); 1524 method public default void onKeyEvents(int, @NonNull java.util.List<android.view.KeyEvent>); 1525 method public default void onRotaryEvents(int, @NonNull java.util.List<android.car.input.RotaryEvent>); 1526 } 1527 1528 public final class CustomInputEvent implements android.os.Parcelable { 1529 ctor public CustomInputEvent(int, int, int); 1530 method public int describeContents(); 1531 method public int getInputCode(); 1532 method public int getRepeatCounter(); 1533 method public int getTargetDisplayType(); 1534 method @NonNull public static String inputCodeToString(int); 1535 method public void writeToParcel(@NonNull android.os.Parcel, int); 1536 field @NonNull public static final android.os.Parcelable.Creator<android.car.input.CustomInputEvent> CREATOR; 1537 field public static final int INPUT_CODE_F1 = 1001; // 0x3e9 1538 field public static final int INPUT_CODE_F10 = 1010; // 0x3f2 1539 field public static final int INPUT_CODE_F2 = 1002; // 0x3ea 1540 field public static final int INPUT_CODE_F3 = 1003; // 0x3eb 1541 field public static final int INPUT_CODE_F4 = 1004; // 0x3ec 1542 field public static final int INPUT_CODE_F5 = 1005; // 0x3ed 1543 field public static final int INPUT_CODE_F6 = 1006; // 0x3ee 1544 field public static final int INPUT_CODE_F7 = 1007; // 0x3ef 1545 field public static final int INPUT_CODE_F8 = 1008; // 0x3f0 1546 field public static final int INPUT_CODE_F9 = 1009; // 0x3f1 1547 } 1548 1549 public final class RotaryEvent implements android.os.Parcelable { 1550 ctor public RotaryEvent(int, boolean, @NonNull long[]); 1551 method public int describeContents(); 1552 method public int getInputType(); 1553 method public int getNumberOfClicks(); 1554 method public long getUptimeMillisForClick(int); 1555 method @NonNull public long[] getUptimeMillisForClicks(); 1556 method public boolean isClockwise(); 1557 method public void writeToParcel(@NonNull android.os.Parcel, int); 1558 field @NonNull public static final android.os.Parcelable.Creator<android.car.input.RotaryEvent> CREATOR; 1559 } 1560 1561} 1562 1563package android.car.media { 1564 1565 @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public interface AudioZoneConfigurationsChangeCallback { 1566 method public default void onAudioZoneConfigurationsChanged(@NonNull java.util.List<android.car.media.CarAudioZoneConfigInfo>, int); 1567 } 1568 1569 public interface AudioZonesMirrorStatusCallback { 1570 method public void onAudioZonesMirrorStatusChanged(@NonNull java.util.List<java.lang.Integer>, int); 1571 } 1572 1573 public final class CarAudioManager { 1574 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean allowMediaAudioOnPrimaryZone(long, boolean); 1575 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public int canEnableAudioMirror(); 1576 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean cancelMediaAudioOnPrimaryZone(long); 1577 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearAudioZoneConfigsCallback(); 1578 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearAudioZonesMirrorStatusCallback(); 1579 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void clearPrimaryZoneMediaAudioRequestCallback(); 1580 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.media.CarAudioPatchHandle createAudioPatch(String, int, int); 1581 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void disableAudioMirror(long); 1582 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void disableAudioMirrorForZone(int); 1583 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public long enableMirrorForAudioZones(@NonNull java.util.List<java.lang.Integer>); 1584 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void extendAudioMirrorRequest(long, @NonNull java.util.List<java.lang.Integer>); 1585 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.media.AudioAttributes> getAudioAttributesForVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo); 1586 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<android.car.media.CarAudioZoneConfigInfo> getAudioZoneConfigInfos(int); 1587 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getAudioZoneIds(); 1588 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.media.CarAudioZoneConfigInfo getCurrentAudioZoneConfigInfo(int); 1589 method @Deprecated @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public String[] getExternalSources(); 1590 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int); 1591 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int, int); 1592 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int); 1593 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int, int); 1594 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int); 1595 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int, int); 1596 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<android.media.AudioDeviceInfo> getInputDevicesForZoneId(int); 1597 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getMirrorAudioZonesForAudioZone(int); 1598 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getMirrorAudioZonesForMirrorRequest(long); 1599 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.media.AudioDeviceInfo getOutputDeviceForUsage(int, int); 1600 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int); 1601 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int, int); 1602 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount(); 1603 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount(int); 1604 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int); 1605 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int, int); 1606 method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public android.car.media.CarVolumeGroupInfo getVolumeGroupInfo(int, int); 1607 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.car.media.CarVolumeGroupInfo> getVolumeGroupInfosForZone(int); 1608 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean isMediaAudioAllowedInPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1609 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isPlaybackOnVolumeGroupActive(int, int); 1610 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isVolumeGroupMuted(int, int); 1611 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean registerCarVolumeGroupEventCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.CarVolumeGroupEventCallback); 1612 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void releaseAudioPatch(android.car.media.CarAudioPatchHandle); 1613 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); 1614 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean resetMediaAudioOnPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1615 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); 1616 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean setAudioZoneMirrorStatusCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.AudioZonesMirrorStatusCallback); 1617 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setBalanceTowardRight(float); 1618 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setFadeTowardFront(float); 1619 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int); 1620 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int, int); 1621 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public boolean setPrimaryZoneMediaAudioRequestCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.media.PrimaryZoneMediaAudioRequestCallback); 1622 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setVolumeGroupMute(int, int, boolean, int); 1623 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); 1624 method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void unregisterCarVolumeGroupEventCallback(@NonNull android.car.media.CarVolumeGroupEventCallback); 1625 field public static final String AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS = "android.car.media.AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS"; 1626 field public static final int AUDIO_MIRROR_CAN_ENABLE = 1; // 0x1 1627 field public static final int AUDIO_MIRROR_INTERNAL_ERROR = -1; // 0xffffffff 1628 field public static final int AUDIO_MIRROR_OUT_OF_OUTPUT_DEVICES = 2; // 0x2 1629 field public static final int AUDIO_REQUEST_STATUS_APPROVED = 1; // 0x1 1630 field public static final int AUDIO_REQUEST_STATUS_CANCELLED = 3; // 0x3 1631 field public static final int AUDIO_REQUEST_STATUS_REJECTED = 2; // 0x2 1632 field public static final int AUDIO_REQUEST_STATUS_STOPPED = 4; // 0x4 1633 field @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public static final int CONFIG_STATUS_AUTO_SWITCHED = 2; // 0x2 1634 field @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public static final int CONFIG_STATUS_CHANGED = 1; // 0x1 1635 field public static final int INVALID_AUDIO_ZONE = -1; // 0xffffffff 1636 field public static final long INVALID_REQUEST_ID = -1L; // 0xffffffffffffffffL 1637 field public static final int PRIMARY_AUDIO_ZONE = 0; // 0x0 1638 } 1639 1640 public final class CarAudioPatchHandle implements android.os.Parcelable { 1641 method public int describeContents(); 1642 method public void writeToParcel(android.os.Parcel, int); 1643 field public static final android.os.Parcelable.Creator<android.car.media.CarAudioPatchHandle> CREATOR; 1644 } 1645 1646 public final class CarAudioZoneConfigInfo implements android.os.Parcelable { 1647 method public int describeContents(); 1648 method public int getConfigId(); 1649 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getConfigVolumeGroups(); 1650 method @NonNull public String getName(); 1651 method public int getZoneId(); 1652 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean hasSameConfigInfo(@NonNull android.car.media.CarAudioZoneConfigInfo); 1653 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isActive(); 1654 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isDefault(); 1655 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public boolean isSelected(); 1656 method public void writeToParcel(@NonNull android.os.Parcel, int); 1657 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarAudioZoneConfigInfo> CREATOR; 1658 } 1659 1660 public final class CarMediaManager { 1661 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int); 1662 method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public java.util.List<android.content.ComponentName> getLastMediaSources(int); 1663 method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public android.content.ComponentName getMediaSource(int); 1664 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int); 1665 method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void setMediaSource(@NonNull android.content.ComponentName, int); 1666 field public static final int MEDIA_SOURCE_MODE_BROWSE = 1; // 0x1 1667 field public static final int MEDIA_SOURCE_MODE_PLAYBACK = 0; // 0x0 1668 } 1669 1670 public static interface CarMediaManager.MediaSourceChangedListener { 1671 method public void onMediaSourceChanged(@NonNull android.content.ComponentName); 1672 } 1673 1674 public final class CarVolumeGroupEvent implements android.os.Parcelable { 1675 method public static int convertExtraInfoToFlags(@NonNull java.util.List<java.lang.Integer>); 1676 method @NonNull public static java.util.List<java.lang.Integer> convertFlagsToExtraInfo(int, int); 1677 method public int describeContents(); 1678 method @NonNull public static String eventTypeToString(int); 1679 method @NonNull public static String extraInfosToString(@NonNull java.util.List<java.lang.Integer>); 1680 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getCarVolumeGroupInfos(); 1681 method public int getEventTypes(); 1682 method @NonNull public java.util.List<java.lang.Integer> getExtraInfos(); 1683 method public void writeToParcel(@NonNull android.os.Parcel, int); 1684 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarVolumeGroupEvent> CREATOR; 1685 field public static final int EVENT_TYPE_ATTENUATION_CHANGED = 32; // 0x20 1686 field public static final int EVENT_TYPE_MUTE_CHANGED = 8; // 0x8 1687 field public static final int EVENT_TYPE_VOLUME_BLOCKED_CHANGED = 16; // 0x10 1688 field public static final int EVENT_TYPE_VOLUME_GAIN_INDEX_CHANGED = 1; // 0x1 1689 field public static final int EVENT_TYPE_VOLUME_MAX_INDEX_CHANGED = 4; // 0x4 1690 field public static final int EVENT_TYPE_VOLUME_MIN_INDEX_CHANGED = 2; // 0x2 1691 field public static final int EVENT_TYPE_ZONE_CONFIGURATION_CHANGED = 64; // 0x40 1692 field public static final int EXTRA_INFO_ATTENUATION_ACTIVATION = 110; // 0x6e 1693 field public static final int EXTRA_INFO_MUTE_LOCKED = 210; // 0xd2 1694 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_AUDIO_SYSTEM = 203; // 0xcb 1695 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_EMERGENCY = 202; // 0xca 1696 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_KEYEVENT = 201; // 0xc9 1697 field public static final int EXTRA_INFO_MUTE_TOGGLED_BY_UI = 200; // 0xc8 1698 field public static final int EXTRA_INFO_NONE = 100; // 0x64 1699 field public static final int EXTRA_INFO_PLAY_SOUND = 301; // 0x12d 1700 field public static final int EXTRA_INFO_SHOW_UI = 300; // 0x12c 1701 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_DUCKED = 121; // 0x79 1702 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_EXTERNAL = 124; // 0x7c 1703 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_NAVIGATION = 123; // 0x7b 1704 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_PROJECTION = 122; // 0x7a 1705 field public static final int EXTRA_INFO_TRANSIENT_ATTENUATION_THERMAL = 120; // 0x78 1706 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_AUDIO_SYSTEM = 103; // 0x67 1707 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_KEYEVENT = 102; // 0x66 1708 field public static final int EXTRA_INFO_VOLUME_INDEX_CHANGED_BY_UI = 101; // 0x65 1709 } 1710 1711 public static final class CarVolumeGroupEvent.Builder { 1712 ctor public CarVolumeGroupEvent.Builder(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>, int); 1713 ctor public CarVolumeGroupEvent.Builder(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>, int, @NonNull java.util.List<java.lang.Integer>); 1714 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addCarVolumeGroupInfo(@NonNull android.car.media.CarVolumeGroupInfo); 1715 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addEventType(int); 1716 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder addExtraInfo(int); 1717 method @NonNull public android.car.media.CarVolumeGroupEvent build(); 1718 method @NonNull public android.car.media.CarVolumeGroupEvent.Builder setExtraInfos(@NonNull java.util.List<java.lang.Integer>); 1719 } 1720 1721 public interface CarVolumeGroupEventCallback { 1722 method public void onVolumeGroupEvent(@NonNull java.util.List<android.car.media.CarVolumeGroupEvent>); 1723 } 1724 1725 public final class CarVolumeGroupInfo implements android.os.Parcelable { 1726 method public int describeContents(); 1727 method @NonNull public java.util.List<android.media.AudioAttributes> getAudioAttributes(); 1728 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public java.util.List<android.media.AudioDeviceAttributes> getAudioDeviceAttributes(); 1729 method public int getId(); 1730 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") public int getMaxActivationVolumeGainIndex(); 1731 method public int getMaxVolumeGainIndex(); 1732 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") public int getMinActivationVolumeGainIndex(); 1733 method public int getMinVolumeGainIndex(); 1734 method @NonNull public String getName(); 1735 method public int getVolumeGainIndex(); 1736 method public int getZoneId(); 1737 method public boolean isAttenuated(); 1738 method public boolean isBlocked(); 1739 method public boolean isMuted(); 1740 method @FlaggedApi("android.car.feature.car_audio_mute_ambiguity") public boolean isMutedBySystem(); 1741 method public boolean isSameVolumeGroup(@Nullable android.car.media.CarVolumeGroupInfo); 1742 method public void writeToParcel(@NonNull android.os.Parcel, int); 1743 field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarVolumeGroupInfo> CREATOR; 1744 } 1745 1746 public static final class CarVolumeGroupInfo.Builder { 1747 ctor public CarVolumeGroupInfo.Builder(@NonNull String, int, int); 1748 ctor public CarVolumeGroupInfo.Builder(@NonNull android.car.media.CarVolumeGroupInfo); 1749 method @NonNull public android.car.media.CarVolumeGroupInfo build(); 1750 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAttenuated(boolean); 1751 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1752 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAudioDeviceAttributes(@NonNull java.util.List<android.media.AudioDeviceAttributes>); 1753 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setBlocked(boolean); 1754 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMaxActivationVolumeGainIndex(int); 1755 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMaxVolumeGainIndex(int); 1756 method @FlaggedApi("android.car.feature.car_audio_min_max_activation_volume") @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMinActivationVolumeGainIndex(int); 1757 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMinVolumeGainIndex(int); 1758 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMuted(boolean); 1759 method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setVolumeGainIndex(int); 1760 } 1761 1762 public interface MediaAudioRequestStatusCallback { 1763 method public void onMediaAudioRequestStatusChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long, int); 1764 } 1765 1766 public interface PrimaryZoneMediaAudioRequestCallback { 1767 method public void onMediaAudioRequestStatusChanged(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long, int); 1768 method public void onRequestMediaOnPrimaryZone(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, long); 1769 } 1770 1771 public interface SwitchAudioZoneConfigCallback { 1772 method public void onAudioZoneConfigSwitched(@NonNull android.car.media.CarAudioZoneConfigInfo, boolean); 1773 } 1774 1775} 1776 1777package android.car.navigation { 1778 1779 public final class CarNavigationInstrumentCluster implements android.os.Parcelable { 1780 ctor public CarNavigationInstrumentCluster(android.car.navigation.CarNavigationInstrumentCluster); 1781 method public static android.car.navigation.CarNavigationInstrumentCluster createCluster(int); 1782 method public static android.car.navigation.CarNavigationInstrumentCluster createCustomImageCluster(int, int, int, int); 1783 method public int describeContents(); 1784 method public int getImageColorDepthBits(); 1785 method public int getImageHeight(); 1786 method public int getImageWidth(); 1787 method public int getMinIntervalMillis(); 1788 method public int getType(); 1789 method public boolean supportsCustomImages(); 1790 method public void writeToParcel(android.os.Parcel, int); 1791 field public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1; // 0x1 1792 field public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2; // 0x2 1793 field public static final android.os.Parcelable.Creator<android.car.navigation.CarNavigationInstrumentCluster> CREATOR; 1794 } 1795 1796 public final class CarNavigationStatusManager { 1797 method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public android.car.navigation.CarNavigationInstrumentCluster getInstrumentClusterInfo(); 1798 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendEvent(int, android.os.Bundle); 1799 method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendNavigationStateChange(android.os.Bundle); 1800 } 1801 1802} 1803 1804package android.car.occupantconnection { 1805 1806 public abstract class AbstractReceiverService extends android.app.Service { 1807 ctor public AbstractReceiverService(); 1808 method public final void acceptConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1809 method public void dump(@Nullable java.io.FileDescriptor, @NonNull java.io.PrintWriter, @Nullable String[]); 1810 method public final boolean forwardPayload(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull String, @NonNull android.car.occupantconnection.Payload); 1811 method @NonNull public final java.util.Set<java.lang.String> getAllReceiverEndpoints(); 1812 method public boolean isSenderAuthorized(@NonNull android.content.pm.SigningInfo); 1813 method public boolean isSenderCompatible(long); 1814 method @Nullable public final android.os.IBinder onBind(@NonNull android.content.Intent); 1815 method public void onConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1816 method public void onConnectionCanceled(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1817 method public abstract void onConnectionInitiated(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1818 method public void onDisconnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1819 method @Nullable public android.os.IBinder onLocalServiceBind(@NonNull android.content.Intent); 1820 method public abstract void onPayloadReceived(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.car.occupantconnection.Payload); 1821 method public void onReceiverRegistered(@NonNull String); 1822 method public final void rejectConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 1823 } 1824 1825 public final class CarOccupantConnectionManager { 1826 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void cancelConnection(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1827 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void disconnect(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1828 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public boolean isConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1829 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); 1830 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); 1831 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; 1832 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_OCCUPANT_CONNECTION) public void unregisterReceiver(@NonNull String); 1833 field public static final int CONNECTION_ERROR_LONG_VERSION_NOT_MATCH = 4; // 0x4 1834 field public static final int CONNECTION_ERROR_NONE = 0; // 0x0 1835 field public static final int CONNECTION_ERROR_NOT_READY = 2; // 0x2 1836 field public static final int CONNECTION_ERROR_PEER_APP_NOT_INSTALLED = 3; // 0x3 1837 field public static final int CONNECTION_ERROR_PREDEFINED_MAXIMUM_VALUE = 10000; // 0x2710 1838 field public static final int CONNECTION_ERROR_SIGNATURE_NOT_MATCH = 5; // 0x5 1839 field public static final int CONNECTION_ERROR_UNKNOWN = 1; // 0x1 1840 field public static final int CONNECTION_ERROR_USER_REJECTED = 6; // 0x6 1841 } 1842 1843 public static interface CarOccupantConnectionManager.ConnectionRequestCallback { 1844 method public void onConnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1845 method public void onDisconnected(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo); 1846 method public void onFailed(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, int); 1847 } 1848 1849 public static interface CarOccupantConnectionManager.PayloadCallback { 1850 method public void onPayloadReceived(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo, @NonNull android.car.occupantconnection.Payload); 1851 } 1852 1853 public static final class CarOccupantConnectionManager.PayloadTransferException extends java.lang.Exception { 1854 ctor public CarOccupantConnectionManager.PayloadTransferException(); 1855 } 1856 1857 public final class Payload implements java.io.Closeable android.os.Parcelable { 1858 ctor public Payload(@NonNull byte[]); 1859 ctor public Payload(@NonNull android.os.IBinder); 1860 method public void close(); 1861 method public int describeContents(); 1862 method public void deserialize(@NonNull android.os.Parcel); 1863 method @Nullable public android.os.IBinder getBinder(); 1864 method @Nullable public byte[] getBytes(); 1865 method public void serialize(@NonNull android.os.Parcel, int); 1866 method public void serializeNullPayload(@NonNull android.os.Parcel); 1867 method public void writeToParcel(@NonNull android.os.Parcel, int); 1868 field @NonNull public static final android.os.Parcelable.Creator<android.car.occupantconnection.Payload> CREATOR; 1869 } 1870 1871} 1872 1873package android.car.oem { 1874 1875 public final class AudioFocusEntry implements android.os.Parcelable { 1876 method public int describeContents(); 1877 method public int getAudioContextId(); 1878 method @NonNull public android.media.AudioFocusInfo getAudioFocusInfo(); 1879 method public int getAudioFocusResult(); 1880 method public int getAudioVolumeGroupId(); 1881 method public void writeToParcel(@NonNull android.os.Parcel, int); 1882 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.AudioFocusEntry> CREATOR; 1883 } 1884 1885 public static final class AudioFocusEntry.Builder { 1886 ctor public AudioFocusEntry.Builder(@NonNull android.car.oem.AudioFocusEntry); 1887 ctor public AudioFocusEntry.Builder(@NonNull android.media.AudioFocusInfo, int, int, int); 1888 method @NonNull public android.car.oem.AudioFocusEntry build(); 1889 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioContextId(int); 1890 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusInfo(@NonNull android.media.AudioFocusInfo); 1891 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusResult(int); 1892 method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioVolumeGroupId(int); 1893 } 1894 1895 @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") public final class CarAudioFadeConfiguration implements android.os.Parcelable { 1896 method public int describeContents(); 1897 method @NonNull public android.media.FadeManagerConfiguration getFadeManagerConfiguration(); 1898 method @NonNull public String getName(); 1899 method public void writeToParcel(@NonNull android.os.Parcel, int); 1900 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.CarAudioFadeConfiguration> CREATOR; 1901 } 1902 1903 @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") public static final class CarAudioFadeConfiguration.Builder { 1904 ctor public CarAudioFadeConfiguration.Builder(@NonNull android.media.FadeManagerConfiguration); 1905 method @NonNull public android.car.oem.CarAudioFadeConfiguration build(); 1906 method @NonNull public android.car.oem.CarAudioFadeConfiguration.Builder setName(@NonNull String); 1907 } 1908 1909 @FlaggedApi("android.car.feature.car_audio_dynamic_devices") public final class CarAudioFeaturesInfo implements android.os.Parcelable { 1910 method public int describeContents(); 1911 method public boolean isAudioFeatureEnabled(int); 1912 method public void writeToParcel(@NonNull android.os.Parcel, int); 1913 field public static final int AUDIO_FEATURE_FADE_MANAGER_CONFIGS = 2; // 0x2 1914 field public static final int AUDIO_FEATURE_ISOLATED_DEVICE_FOCUS = 1; // 0x1 1915 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.CarAudioFeaturesInfo> CREATOR; 1916 } 1917 1918 public interface OemCarAudioDuckingService extends android.car.oem.OemCarServiceComponent { 1919 method @NonNull public java.util.List<android.media.AudioAttributes> evaluateAttributesToDuck(@NonNull android.car.oem.OemCarAudioVolumeRequest); 1920 } 1921 1922 public final class OemCarAudioFocusEvaluationRequest implements android.os.Parcelable { 1923 method public int describeContents(); 1924 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @Nullable public android.car.oem.CarAudioFeaturesInfo getAudioFeaturesInfo(); 1925 method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusRequest(); 1926 method public int getAudioZoneId(); 1927 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusHolders(); 1928 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusLosers(); 1929 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getMutedVolumeGroups(); 1930 method public void writeToParcel(@NonNull android.os.Parcel, int); 1931 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusEvaluationRequest> CREATOR; 1932 } 1933 1934 public static final class OemCarAudioFocusEvaluationRequest.Builder { 1935 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); 1936 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusHolders(@NonNull android.car.oem.AudioFocusEntry); 1937 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusLosers(@NonNull android.car.oem.AudioFocusEntry); 1938 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addMutedVolumeGroups(@NonNull android.car.media.CarVolumeGroupInfo); 1939 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest build(); 1940 method @FlaggedApi("android.car.feature.car_audio_dynamic_devices") @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioFeaturesInfo(@NonNull android.car.oem.CarAudioFeaturesInfo); 1941 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioFocusRequest(@NonNull android.car.oem.AudioFocusEntry); 1942 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioZoneId(int); 1943 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusHolders(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1944 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusLosers(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1945 method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setMutedVolumeGroups(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>); 1946 } 1947 1948 public final class OemCarAudioFocusResult implements android.os.Parcelable { 1949 method public int describeContents(); 1950 method @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") @NonNull public java.util.Map<android.media.AudioAttributes,android.car.oem.CarAudioFadeConfiguration> getAudioAttributesToCarAudioFadeConfigurationMap(); 1951 method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusEntry(); 1952 method public int getAudioFocusResult(); 1953 method @FlaggedApi("android.car.feature.car_audio_fade_manager_configuration") @Nullable public android.car.oem.CarAudioFadeConfiguration getCarAudioFadeConfigurationForAudioAttributes(@NonNull android.media.AudioAttributes); 1954 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyBlockedAudioFocusEntries(); 1955 method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyLostAudioFocusEntries(); 1956 method public void writeToParcel(@NonNull android.os.Parcel, int); 1957 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusResult> CREATOR; 1958 field @NonNull public static final android.car.oem.OemCarAudioFocusResult EMPTY_OEM_CAR_AUDIO_FOCUS_RESULTS; 1959 } 1960 1961 public static final class OemCarAudioFocusResult.Builder { 1962 ctor public OemCarAudioFocusResult.Builder(@NonNull java.util.List<android.car.oem.AudioFocusEntry>, @NonNull java.util.List<android.car.oem.AudioFocusEntry>, int); 1963 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyBlockedAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1964 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyLostAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1965 method @NonNull public android.car.oem.OemCarAudioFocusResult build(); 1966 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>); 1967 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry); 1968 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusResult(int); 1969 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyBlockedAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1970 method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyLostAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>); 1971 } 1972 1973 public interface OemCarAudioFocusService extends android.car.oem.OemCarServiceComponent { 1974 method @NonNull public android.car.oem.OemCarAudioFocusResult evaluateAudioFocusRequest(@NonNull android.car.oem.OemCarAudioFocusEvaluationRequest); 1975 method public void notifyAudioFocusChange(@NonNull java.util.List<android.media.AudioFocusInfo>, @NonNull java.util.List<android.media.AudioFocusInfo>, int); 1976 } 1977 1978 public final class OemCarAudioVolumeRequest implements android.os.Parcelable { 1979 method public int describeContents(); 1980 method @NonNull public java.util.List<android.media.AudioAttributes> getActivePlaybackAttributes(); 1981 method public int getAudioZoneId(); 1982 method public int getCallState(); 1983 method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getCarVolumeGroupInfos(); 1984 method @NonNull public java.util.List<android.media.AudioAttributes> getDuckedAudioAttributes(); 1985 method public void writeToParcel(@NonNull android.os.Parcel, int); 1986 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioVolumeRequest> CREATOR; 1987 } 1988 1989 public static final class OemCarAudioVolumeRequest.Builder { 1990 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addActivePlaybackAttributes(@NonNull android.media.AudioAttributes); 1991 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addCarVolumeGroupInfos(@NonNull android.car.media.CarVolumeGroupInfo); 1992 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addDuckedAudioAttributes(@NonNull android.media.AudioAttributes); 1993 method @NonNull public android.car.oem.OemCarAudioVolumeRequest build(); 1994 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setActivePlaybackAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1995 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCallState(int); 1996 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCarVolumeGroupInfos(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>); 1997 method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setDuckedAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>); 1998 } 1999 2000 public interface OemCarAudioVolumeService extends android.car.oem.OemCarServiceComponent { 2001 method @NonNull public android.car.oem.OemCarVolumeChangeInfo getSuggestedGroupForVolumeChange(@NonNull android.car.oem.OemCarAudioVolumeRequest, int); 2002 } 2003 2004 public abstract class OemCarService extends android.app.Service { 2005 ctor public OemCarService(); 2006 method @CallSuper public void dump(@Nullable java.io.FileDescriptor, @Nullable java.io.PrintWriter, @Nullable String[]); 2007 method @Nullable public android.car.oem.OemCarAudioDuckingService getOemAudioDuckingService(); 2008 method @Nullable public android.car.oem.OemCarAudioFocusService getOemAudioFocusService(); 2009 method @Nullable public android.car.oem.OemCarAudioVolumeService getOemAudioVolumeService(); 2010 method @NonNull public abstract android.car.CarVersion getSupportedCarVersion(); 2011 method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent); 2012 method public abstract void onCarServiceReady(); 2013 method public final int onStartCommand(@Nullable android.content.Intent, int, int); 2014 } 2015 2016 public interface OemCarServiceComponent { 2017 method public void dump(@Nullable java.io.PrintWriter, @Nullable String[]); 2018 method public void init(); 2019 method public void onCarServiceReady(); 2020 method public void release(); 2021 } 2022 2023 public final class OemCarVolumeChangeInfo implements android.os.Parcelable { 2024 method public int describeContents(); 2025 method @Nullable public android.car.media.CarVolumeGroupInfo getChangedVolumeGroup(); 2026 method public boolean isVolumeChanged(); 2027 method public void writeToParcel(@NonNull android.os.Parcel, int); 2028 field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarVolumeChangeInfo> CREATOR; 2029 field @NonNull public static final android.car.oem.OemCarVolumeChangeInfo EMPTY_OEM_VOLUME_CHANGE; 2030 } 2031 2032 public static final class OemCarVolumeChangeInfo.Builder { 2033 ctor public OemCarVolumeChangeInfo.Builder(boolean); 2034 method @NonNull public android.car.oem.OemCarVolumeChangeInfo build(); 2035 method @NonNull public android.car.oem.OemCarVolumeChangeInfo.Builder setChangedVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo); 2036 } 2037 2038} 2039 2040package android.car.os { 2041 2042 public final class CarPerformanceManager { 2043 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public android.car.os.ThreadPolicyWithPriority getThreadPriority(); 2044 method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public void setThreadPriority(@NonNull android.car.os.ThreadPolicyWithPriority) throws android.car.os.CarPerformanceManager.SetSchedulerFailedException; 2045 } 2046 2047 public static final class CarPerformanceManager.SetSchedulerFailedException extends java.lang.Exception { 2048 } 2049 2050 public final class ThreadPolicyWithPriority implements android.os.Parcelable { 2051 ctor public ThreadPolicyWithPriority(int, @IntRange(from=0, to=99) int); 2052 method public int describeContents(); 2053 method public int getPolicy(); 2054 method @IntRange(from=0, to=99) public int getPriority(); 2055 method public void writeToParcel(@NonNull android.os.Parcel, int); 2056 field @NonNull public static final android.os.Parcelable.Creator<android.car.os.ThreadPolicyWithPriority> CREATOR; 2057 field public static final int PRIORITY_MAX = 99; // 0x63 2058 field public static final int PRIORITY_MIN = 1; // 0x1 2059 field public static final int SCHED_DEFAULT = 0; // 0x0 2060 field public static final int SCHED_FIFO = 1; // 0x1 2061 field public static final int SCHED_RR = 2; // 0x2 2062 } 2063 2064} 2065 2066package android.car.projection { 2067 2068 public class ProjectionOptions { 2069 ctor public ProjectionOptions(android.os.Bundle); 2070 method @Nullable public android.app.ActivityOptions getActivityOptions(); 2071 method @Nullable public android.content.ComponentName getConsentActivity(); 2072 method public int getProjectionAccessPointMode(); 2073 method public int getUiMode(); 2074 method @NonNull public android.os.Bundle toBundle(); 2075 field public static final int AP_MODE_LOHS_DYNAMIC_CREDENTIALS = 2; // 0x2 2076 field public static final int AP_MODE_LOHS_STATIC_CREDENTIALS = 3; // 0x3 2077 field public static final int AP_MODE_NOT_SPECIFIED = 0; // 0x0 2078 field public static final int AP_MODE_TETHERED = 1; // 0x1 2079 field public static final int UI_MODE_BLENDED = 1; // 0x1 2080 field public static final int UI_MODE_FULL_SCREEN = 0; // 0x0 2081 } 2082 2083 public final class ProjectionStatus implements android.os.Parcelable { 2084 method @NonNull public static android.car.projection.ProjectionStatus.Builder builder(String, int); 2085 method public int describeContents(); 2086 method @NonNull public java.util.List<android.car.projection.ProjectionStatus.MobileDevice> getConnectedMobileDevices(); 2087 method @NonNull public android.os.Bundle getExtras(); 2088 method @NonNull public String getPackageName(); 2089 method public int getState(); 2090 method public int getTransport(); 2091 method public boolean isActive(); 2092 method public void writeToParcel(android.os.Parcel, int); 2093 field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus> CREATOR; 2094 field public static final int PROJECTION_STATE_ACTIVE_BACKGROUND = 3; // 0x3 2095 field public static final int PROJECTION_STATE_ACTIVE_FOREGROUND = 2; // 0x2 2096 field public static final int PROJECTION_STATE_ATTEMPTING = 4; // 0x4 2097 field public static final int PROJECTION_STATE_FINISHING = 5; // 0x5 2098 field public static final int PROJECTION_STATE_INACTIVE = 0; // 0x0 2099 field public static final int PROJECTION_STATE_READY_TO_PROJECT = 1; // 0x1 2100 field public static final int PROJECTION_TRANSPORT_NONE = 0; // 0x0 2101 field public static final int PROJECTION_TRANSPORT_USB = 1; // 0x1 2102 field public static final int PROJECTION_TRANSPORT_WIFI = 2; // 0x2 2103 } 2104 2105 public static final class ProjectionStatus.Builder { 2106 method @NonNull public android.car.projection.ProjectionStatus.Builder addMobileDevice(android.car.projection.ProjectionStatus.MobileDevice); 2107 method public android.car.projection.ProjectionStatus build(); 2108 method @NonNull public android.car.projection.ProjectionStatus.Builder setExtras(android.os.Bundle); 2109 method @NonNull public android.car.projection.ProjectionStatus.Builder setProjectionTransport(int); 2110 } 2111 2112 public static final class ProjectionStatus.MobileDevice implements android.os.Parcelable { 2113 method @NonNull public static android.car.projection.ProjectionStatus.MobileDevice.Builder builder(int, String); 2114 method public int describeContents(); 2115 method @NonNull public java.util.List<java.lang.Integer> getAvailableTransports(); 2116 method @NonNull public android.os.Bundle getExtras(); 2117 method public int getId(); 2118 method @NonNull public String getName(); 2119 method public boolean isProjecting(); 2120 method public void writeToParcel(android.os.Parcel, int); 2121 field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus.MobileDevice> CREATOR; 2122 } 2123 2124 public static final class ProjectionStatus.MobileDevice.Builder { 2125 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder addTransport(int); 2126 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice build(); 2127 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setExtras(android.os.Bundle); 2128 method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setProjecting(boolean); 2129 } 2130 2131} 2132 2133package android.car.remoteaccess { 2134 2135 public final class CarRemoteAccessManager { 2136 method @FlaggedApi("android.car.feature.serverless_remote_access") @Nullable @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public android.car.remoteaccess.CarRemoteAccessManager.InVehicleTaskScheduler getInVehicleTaskScheduler(); 2137 method @FlaggedApi("android.car.feature.serverless_remote_access") @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public boolean isTaskScheduleSupported(); 2138 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_REMOTE_ACCESS) public void setPowerStatePostTaskExecution(int, boolean); 2139 field public static final int NEXT_POWER_STATE_OFF = 2; // 0x2 2140 field public static final int NEXT_POWER_STATE_ON = 1; // 0x1 2141 field public static final int NEXT_POWER_STATE_SUSPEND_TO_DISK = 4; // 0x4 2142 field public static final int NEXT_POWER_STATE_SUSPEND_TO_RAM = 3; // 0x3 2143 field @FlaggedApi("android.car.feature.serverless_remote_access") public static final int TASK_TYPE_CUSTOM = 0; // 0x0 2144 field @FlaggedApi("android.car.feature.serverless_remote_access") public static final int TASK_TYPE_ENTER_GARAGE_MODE = 1; // 0x1 2145 } 2146 2147 @FlaggedApi("android.car.feature.serverless_remote_access") public final class CarRemoteAccessManager.InVehicleTaskScheduler { 2148 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; 2149 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; 2150 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; 2151 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; 2152 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; 2153 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; 2154 } 2155 2156 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.InVehicleTaskSchedulerException extends java.lang.Exception { 2157 } 2158 2159 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.ScheduleInfo { 2160 method @FlaggedApi("android.car.feature.serverless_remote_access") public int getCount(); 2161 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public java.time.Duration getPeriodic(); 2162 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public String getScheduleId(); 2163 method @FlaggedApi("android.car.feature.serverless_remote_access") public long getStartTimeInEpochSeconds(); 2164 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public byte[] getTaskData(); 2165 method @FlaggedApi("android.car.feature.serverless_remote_access") public int getTaskType(); 2166 field @NonNull public static final java.time.Duration PERIODIC_DAILY; 2167 field @NonNull public static final java.time.Duration PERIODIC_WEEKLY; 2168 } 2169 2170 @FlaggedApi("android.car.feature.serverless_remote_access") public static final class CarRemoteAccessManager.ScheduleInfo.Builder { 2171 ctor @FlaggedApi("android.car.feature.serverless_remote_access") public CarRemoteAccessManager.ScheduleInfo.Builder(@NonNull String, int, long); 2172 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo build(); 2173 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setCount(int); 2174 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setPeriodic(@NonNull java.time.Duration); 2175 method @FlaggedApi("android.car.feature.serverless_remote_access") @NonNull public android.car.remoteaccess.CarRemoteAccessManager.ScheduleInfo.Builder setTaskData(@NonNull byte[]); 2176 } 2177 2178} 2179 2180package android.car.settings { 2181 2182 public class CarSettings { 2183 } 2184 2185 public static final class CarSettings.Global { 2186 field public static final String DISPLAY_INPUT_LOCK = "android.car.DISPLAY_INPUT_LOCK"; 2187 field public static final String DISPLAY_POWER_MODE = "android.car.DISPLAY_POWER_MODE"; 2188 field @FlaggedApi("android.car.feature.persist_ap_settings") public static final String ENABLE_PERSISTENT_TETHERING = "android.car.ENABLE_PERSISTENT_TETHERING"; 2189 field @FlaggedApi("android.car.feature.car_night_global_setting") public static final String FORCED_DAY_NIGHT_MODE = "android.car.FORCED_DAY_NIGHT_MODE"; 2190 field public static final String GLOBAL_VISIBLE_USER_ALLOCATION_PER_ZONE = "android.car.GLOBAL_VISIBLE_USER_ALLOCATION_PER_ZONE"; 2191 } 2192 2193 public static final class CarSettings.Secure { 2194 field public static final String KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL = "android.car.KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL"; 2195 field public static final String KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES = "android.car.KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES"; 2196 field public static final String KEY_DRIVER_ALLOWED_TO_CONTROL_MEDIA = "android.car.DRIVER_ALLOWED_TO_CONTROL_MEDIA"; 2197 field public static final String KEY_ENABLE_INITIAL_NOTICE_SCREEN_TO_USER = "android.car.ENABLE_INITIAL_NOTICE_SCREEN_TO_USER"; 2198 field public static final String KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE = "android.car.KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE"; 2199 field public static final String KEY_ROTARY_KEY_EVENT_FILTER = "android.car.ROTARY_KEY_EVENT_FILTER"; 2200 field public static final String KEY_SETUP_WIZARD_IN_PROGRESS = "android.car.SETUP_WIZARD_IN_PROGRESS"; 2201 field public static final String KEY_UNACCEPTED_TOS_DISABLED_APPS = "android.car.KEY_UNACCEPTED_TOS_DISABLED_APPS"; 2202 field public static final String KEY_USER_TOS_ACCEPTED = "android.car.KEY_USER_TOS_ACCEPTED"; 2203 field public static final String VISIBLE_USER_ALLOCATION_PER_ZONE = "android.car.VISIBLE_USER_ALLOCATION_PER_ZONE"; 2204 } 2205 2206} 2207 2208package android.car.storagemonitoring { 2209 2210 public final class CarStorageMonitoringManager { 2211 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getAggregateIoStats(); 2212 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getBootIoStats(); 2213 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStats> getIoStatsDeltas(); 2214 method @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public int getPreEolIndicatorStatus(); 2215 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public long getShutdownDiskWriteAmount(); 2216 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public android.car.storagemonitoring.WearEstimate getWearEstimate(); 2217 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.WearEstimateChange> getWearEstimateHistory(); 2218 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void registerListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener); 2219 method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void unregisterListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener); 2220 field public static final String INTENT_EXCESSIVE_IO = "android.car.storagemonitoring.EXCESSIVE_IO"; 2221 field public static final int PRE_EOL_INFO_NORMAL = 1; // 0x1 2222 field public static final int PRE_EOL_INFO_UNKNOWN = 0; // 0x0 2223 field public static final int PRE_EOL_INFO_URGENT = 3; // 0x3 2224 field public static final int PRE_EOL_INFO_WARNING = 2; // 0x2 2225 field public static final long SHUTDOWN_COST_INFO_MISSING = -1L; // 0xffffffffffffffffL 2226 } 2227 2228 @Deprecated public static interface CarStorageMonitoringManager.IoStatsListener { 2229 method @Deprecated public void onSnapshot(android.car.storagemonitoring.IoStats); 2230 } 2231 2232 @Deprecated public final class IoStats implements android.os.Parcelable { 2233 ctor @Deprecated public IoStats(java.util.List<android.car.storagemonitoring.IoStatsEntry>, long); 2234 ctor @Deprecated public IoStats(android.os.Parcel); 2235 method @Deprecated public int describeContents(); 2236 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getBackgroundTotals(); 2237 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getForegroundTotals(); 2238 method @Deprecated public java.util.List<android.car.storagemonitoring.IoStatsEntry> getStats(); 2239 method @Deprecated public long getTimestamp(); 2240 method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getTotals(); 2241 method @Deprecated public android.car.storagemonitoring.IoStatsEntry getUserIdStats(int); 2242 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2243 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStats> CREATOR; 2244 } 2245 2246 @Deprecated public final class IoStatsEntry implements android.os.Parcelable { 2247 ctor @Deprecated public IoStatsEntry(int, long, android.car.storagemonitoring.IoStatsEntry.Metrics, android.car.storagemonitoring.IoStatsEntry.Metrics); 2248 ctor @Deprecated public IoStatsEntry(android.os.Parcel); 2249 ctor @Deprecated public IoStatsEntry(android.car.storagemonitoring.UidIoRecord, long); 2250 method @Deprecated public int describeContents(); 2251 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2252 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry> CREATOR; 2253 field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics background; 2254 field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics foreground; 2255 field @Deprecated public final long runtimeMillis; 2256 field @Deprecated public final int uid; 2257 } 2258 2259 @Deprecated public static final class IoStatsEntry.Metrics implements android.os.Parcelable { 2260 ctor @Deprecated public IoStatsEntry.Metrics(long, long, long, long, long); 2261 ctor @Deprecated public IoStatsEntry.Metrics(android.os.Parcel); 2262 method @Deprecated public int describeContents(); 2263 method @Deprecated public void writeToParcel(android.os.Parcel, int); 2264 field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry.Metrics> CREATOR; 2265 field @Deprecated public final long bytesRead; 2266 field @Deprecated public final long bytesReadFromStorage; 2267 field @Deprecated public final long bytesWritten; 2268 field @Deprecated public final long bytesWrittenToStorage; 2269 field @Deprecated public final long fsyncCalls; 2270 } 2271 2272 public final class LifetimeWriteInfo implements android.os.Parcelable { 2273 ctor public LifetimeWriteInfo(String, String, long); 2274 ctor public LifetimeWriteInfo(android.os.Parcel); 2275 method public int describeContents(); 2276 method public void writeToParcel(android.os.Parcel, int); 2277 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.LifetimeWriteInfo> CREATOR; 2278 field public final String fstype; 2279 field public final String partition; 2280 field public final long writtenBytes; 2281 } 2282 2283 public final class UidIoRecord { 2284 ctor public UidIoRecord(int, long, long, long, long, long, long, long, long, long, long); 2285 field public final long background_fsync; 2286 field public final long background_rchar; 2287 field public final long background_read_bytes; 2288 field public final long background_wchar; 2289 field public final long background_write_bytes; 2290 field public final long foreground_fsync; 2291 field public final long foreground_rchar; 2292 field public final long foreground_read_bytes; 2293 field public final long foreground_wchar; 2294 field public final long foreground_write_bytes; 2295 field public final int uid; 2296 } 2297 2298 public final class WearEstimate implements android.os.Parcelable { 2299 ctor public WearEstimate(int, int); 2300 ctor public WearEstimate(android.os.Parcel); 2301 method public int describeContents(); 2302 method public void writeToParcel(android.os.Parcel, int); 2303 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimate> CREATOR; 2304 field public static final int UNKNOWN = -1; // 0xffffffff 2305 field @IntRange(from=0xffffffff, to=100) public final int typeA; 2306 field @IntRange(from=0xffffffff, to=100) public final int typeB; 2307 } 2308 2309 public final class WearEstimateChange implements android.os.Parcelable { 2310 ctor public WearEstimateChange(android.car.storagemonitoring.WearEstimate, android.car.storagemonitoring.WearEstimate, long, java.time.Instant, boolean); 2311 ctor public WearEstimateChange(android.os.Parcel); 2312 method public int describeContents(); 2313 method public void writeToParcel(android.os.Parcel, int); 2314 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimateChange> CREATOR; 2315 field @NonNull public final java.time.Instant dateAtChange; 2316 field public final boolean isAcceptableDegradation; 2317 field @NonNull public final android.car.storagemonitoring.WearEstimate newEstimate; 2318 field @NonNull public final android.car.storagemonitoring.WearEstimate oldEstimate; 2319 field public final long uptimeAtChange; 2320 } 2321 2322} 2323 2324package android.car.telemetry { 2325 2326 public final class CarTelemetryManager { 2327 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); 2328 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void clearReportReadyListener(); 2329 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void getAllFinishedReports(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.MetricsReportCallback); 2330 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); 2331 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeAllMetricsConfigs(); 2332 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeMetricsConfig(@NonNull String); 2333 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void setReportReadyListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.ReportReadyListener); 2334 field public static final int STATUS_ADD_METRICS_CONFIG_ALREADY_EXISTS = 1; // 0x1 2335 field public static final int STATUS_ADD_METRICS_CONFIG_PARSE_FAILED = 3; // 0x3 2336 field public static final int STATUS_ADD_METRICS_CONFIG_SIGNATURE_VERIFICATION_FAILED = 4; // 0x4 2337 field public static final int STATUS_ADD_METRICS_CONFIG_SUCCEEDED = 0; // 0x0 2338 field public static final int STATUS_ADD_METRICS_CONFIG_UNKNOWN = 5; // 0x5 2339 field public static final int STATUS_ADD_METRICS_CONFIG_VERSION_TOO_OLD = 2; // 0x2 2340 field public static final int STATUS_GET_METRICS_CONFIG_DOES_NOT_EXIST = 4; // 0x4 2341 field public static final int STATUS_GET_METRICS_CONFIG_FINISHED = 0; // 0x0 2342 field public static final int STATUS_GET_METRICS_CONFIG_INTERIM_RESULTS = 2; // 0x2 2343 field public static final int STATUS_GET_METRICS_CONFIG_PENDING = 1; // 0x1 2344 field public static final int STATUS_GET_METRICS_CONFIG_RUNTIME_ERROR = 3; // 0x3 2345 } 2346 2347 public static interface CarTelemetryManager.AddMetricsConfigCallback { 2348 method public void onAddMetricsConfigStatus(@NonNull String, int); 2349 } 2350 2351 public static interface CarTelemetryManager.MetricsReportCallback { 2352 method public void onResult(@NonNull String, @Nullable android.os.PersistableBundle, @Nullable byte[], int); 2353 } 2354 2355 public static interface CarTelemetryManager.ReportReadyListener { 2356 method public void onReady(@NonNull String); 2357 } 2358 2359} 2360 2361package android.car.user { 2362 2363 public final class CarUserManager { 2364 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); 2365 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); 2366 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>); 2367 method @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public boolean isValidUser(@NonNull android.os.UserHandle); 2368 method @NonNull public static String lifecycleEventTypeToString(int); 2369 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); 2370 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>); 2371 method @RequiresPermission(android.Manifest.permission.MANAGE_USERS) public void setUserSwitchUiCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.user.CarUserManager.UserHandleSwitchUiCallback); 2372 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>); 2373 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>); 2374 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>); 2375 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>); 2376 field public static final int USER_LIFECYCLE_EVENT_TYPE_CREATED = 8; // 0x8 2377 field public static final int USER_LIFECYCLE_EVENT_TYPE_INVISIBLE = 11; // 0xb 2378 field public static final int USER_LIFECYCLE_EVENT_TYPE_REMOVED = 9; // 0x9 2379 field public static final int USER_LIFECYCLE_EVENT_TYPE_STARTING = 1; // 0x1 2380 field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPED = 6; // 0x6 2381 field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPING = 5; // 0x5 2382 field public static final int USER_LIFECYCLE_EVENT_TYPE_SWITCHING = 2; // 0x2 2383 field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKED = 4; // 0x4 2384 field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKING = 3; // 0x3 2385 field public static final int USER_LIFECYCLE_EVENT_TYPE_VISIBLE = 10; // 0xa 2386 } 2387 2388 public static interface CarUserManager.UserHandleSwitchUiCallback { 2389 method public void onUserSwitchStart(@NonNull android.os.UserHandle); 2390 } 2391 2392 public static final class CarUserManager.UserLifecycleEvent { 2393 method public int getEventType(); 2394 method @Nullable public android.os.UserHandle getPreviousUserHandle(); 2395 method @NonNull public android.os.UserHandle getUserHandle(); 2396 } 2397 2398 public static interface CarUserManager.UserLifecycleListener { 2399 method public void onEvent(@NonNull android.car.user.CarUserManager.UserLifecycleEvent); 2400 } 2401 2402 public final class UserCreationRequest implements android.os.Parcelable { 2403 method public int describeContents(); 2404 method @Nullable public String getName(); 2405 method public boolean isAdmin(); 2406 method public boolean isEphemeral(); 2407 method public boolean isGuest(); 2408 method public void writeToParcel(@NonNull android.os.Parcel, int); 2409 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserCreationRequest> CREATOR; 2410 } 2411 2412 public static final class UserCreationRequest.Builder { 2413 ctor public UserCreationRequest.Builder(); 2414 method @NonNull public android.car.user.UserCreationRequest build(); 2415 method @NonNull public android.car.user.UserCreationRequest.Builder setAdmin(); 2416 method @NonNull public android.car.user.UserCreationRequest.Builder setEphemeral(); 2417 method @NonNull public android.car.user.UserCreationRequest.Builder setGuest(); 2418 method @NonNull public android.car.user.UserCreationRequest.Builder setName(@NonNull String); 2419 } 2420 2421 public final class UserCreationResult implements android.os.Parcelable { 2422 method public int describeContents(); 2423 method @Nullable public Integer getAndroidFailureStatus(); 2424 method @Nullable public String getErrorMessage(); 2425 method @Nullable public String getInternalErrorMessage(); 2426 method public int getStatus(); 2427 method @Nullable public android.os.UserHandle getUser(); 2428 method public boolean isSuccess(); 2429 method @NonNull public static String statusToString(int); 2430 method public void writeToParcel(@NonNull android.os.Parcel, int); 2431 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserCreationResult> CREATOR; 2432 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2433 field public static final int STATUS_HAL_FAILURE = 3; // 0x3 2434 field public static final int STATUS_HAL_INTERNAL_FAILURE = 4; // 0x4 2435 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2436 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2437 } 2438 2439 public final class UserLifecycleEventFilter implements android.os.Parcelable { 2440 method public boolean apply(@NonNull android.car.user.CarUserManager.UserLifecycleEvent); 2441 method public int describeContents(); 2442 method public void writeToParcel(@NonNull android.os.Parcel, int); 2443 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserLifecycleEventFilter> CREATOR; 2444 } 2445 2446 public static final class UserLifecycleEventFilter.Builder { 2447 ctor public UserLifecycleEventFilter.Builder(); 2448 method @NonNull public android.car.user.UserLifecycleEventFilter.Builder addEventType(int); 2449 method @NonNull public android.car.user.UserLifecycleEventFilter.Builder addUser(@NonNull android.os.UserHandle); 2450 method @NonNull public android.car.user.UserLifecycleEventFilter build(); 2451 } 2452 2453 public final class UserRemovalRequest implements android.os.Parcelable { 2454 method public int describeContents(); 2455 method @NonNull public android.os.UserHandle getUserHandle(); 2456 method public void writeToParcel(@NonNull android.os.Parcel, int); 2457 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserRemovalRequest> CREATOR; 2458 } 2459 2460 public static final class UserRemovalRequest.Builder { 2461 ctor public UserRemovalRequest.Builder(@NonNull android.os.UserHandle); 2462 method @NonNull public android.car.user.UserRemovalRequest build(); 2463 } 2464 2465 public final class UserRemovalResult implements android.os.Parcelable { 2466 method public int describeContents(); 2467 method public int getStatus(); 2468 method public boolean isSuccess(); 2469 method @NonNull public static String statusToString(int); 2470 method public void writeToParcel(@NonNull android.os.Parcel, int); 2471 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserRemovalResult> CREATOR; 2472 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2473 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2474 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2475 field public static final int STATUS_SUCCESSFUL_LAST_ADMIN_REMOVED = 102; // 0x66 2476 field public static final int STATUS_SUCCESSFUL_LAST_ADMIN_SET_EPHEMERAL = 104; // 0x68 2477 field public static final int STATUS_SUCCESSFUL_SET_EPHEMERAL = 103; // 0x67 2478 field public static final int STATUS_USER_DOES_NOT_EXIST = 101; // 0x65 2479 } 2480 2481 public final class UserStartRequest implements android.os.Parcelable { 2482 method public int describeContents(); 2483 method public int getDisplayId(); 2484 method @NonNull public android.os.UserHandle getUserHandle(); 2485 method public void writeToParcel(@NonNull android.os.Parcel, int); 2486 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStartRequest> CREATOR; 2487 } 2488 2489 public static final class UserStartRequest.Builder { 2490 ctor public UserStartRequest.Builder(@NonNull android.os.UserHandle); 2491 method @NonNull public android.car.user.UserStartRequest build(); 2492 method @NonNull public android.car.user.UserStartRequest.Builder setDisplayId(int); 2493 } 2494 2495 public final class UserStartResponse implements android.os.Parcelable { 2496 method public int describeContents(); 2497 method public int getStatus(); 2498 method public boolean isSuccess(); 2499 method @NonNull public static String statusToString(int); 2500 method public void writeToParcel(@NonNull android.os.Parcel, int); 2501 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStartResponse> CREATOR; 2502 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2503 field public static final int STATUS_DISPLAY_INVALID = 104; // 0x68 2504 field public static final int STATUS_DISPLAY_UNAVAILABLE = 105; // 0x69 2505 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2506 field public static final int STATUS_SUCCESSFUL_USER_ALREADY_VISIBLE_ON_DISPLAY = 103; // 0x67 2507 field public static final int STATUS_SUCCESSFUL_USER_IS_CURRENT_USER = 101; // 0x65 2508 field public static final int STATUS_UNSUPPORTED_PLATFORM_FAILURE = 7; // 0x7 2509 field public static final int STATUS_USER_ASSIGNED_TO_ANOTHER_DISPLAY = 107; // 0x6b 2510 field public static final int STATUS_USER_DOES_NOT_EXIST = 102; // 0x66 2511 field public static final int STATUS_USER_INVALID = 106; // 0x6a 2512 } 2513 2514 public final class UserStopRequest implements android.os.Parcelable { 2515 method public int describeContents(); 2516 method @NonNull public android.os.UserHandle getUserHandle(); 2517 method public boolean isForce(); 2518 method public boolean isWithDelayedLocking(); 2519 method public void writeToParcel(@NonNull android.os.Parcel, int); 2520 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStopRequest> CREATOR; 2521 } 2522 2523 public static final class UserStopRequest.Builder { 2524 ctor public UserStopRequest.Builder(@NonNull android.os.UserHandle); 2525 method @NonNull public android.car.user.UserStopRequest build(); 2526 method @NonNull public android.car.user.UserStopRequest.Builder setForce(); 2527 method @NonNull public android.car.user.UserStopRequest.Builder withDelayedLocking(boolean); 2528 } 2529 2530 public final class UserStopResponse implements android.os.Parcelable { 2531 method public int describeContents(); 2532 method public int getStatus(); 2533 method public static boolean isSuccess(int); 2534 method public boolean isSuccess(); 2535 method @NonNull public static String statusToString(int); 2536 method public void writeToParcel(@NonNull android.os.Parcel, int); 2537 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserStopResponse> CREATOR; 2538 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2539 field public static final int STATUS_FAILURE_CURRENT_USER = 103; // 0x67 2540 field public static final int STATUS_FAILURE_SYSTEM_USER = 102; // 0x66 2541 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2542 field public static final int STATUS_USER_DOES_NOT_EXIST = 101; // 0x65 2543 } 2544 2545 public final class UserSwitchRequest implements android.os.Parcelable { 2546 method public int describeContents(); 2547 method @NonNull public android.os.UserHandle getUserHandle(); 2548 method public void writeToParcel(@NonNull android.os.Parcel, int); 2549 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserSwitchRequest> CREATOR; 2550 } 2551 2552 public static final class UserSwitchRequest.Builder { 2553 ctor public UserSwitchRequest.Builder(@NonNull android.os.UserHandle); 2554 method @NonNull public android.car.user.UserSwitchRequest build(); 2555 } 2556 2557 public final class UserSwitchResult implements android.os.Parcelable { 2558 method public int describeContents(); 2559 method @Nullable public Integer getAndroidFailureStatus(); 2560 method @Nullable public String getErrorMessage(); 2561 method public int getStatus(); 2562 method public boolean isSuccess(); 2563 method @NonNull public static String statusToString(int); 2564 method public void writeToParcel(@NonNull android.os.Parcel, int); 2565 field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserSwitchResult> CREATOR; 2566 field public static final int STATUS_ANDROID_FAILURE = 2; // 0x2 2567 field public static final int STATUS_HAL_FAILURE = 3; // 0x3 2568 field public static final int STATUS_HAL_INTERNAL_FAILURE = 4; // 0x4 2569 field public static final int STATUS_INVALID_REQUEST = 5; // 0x5 2570 field public static final int STATUS_NOT_LOGGED_IN = 105; // 0x69 2571 field public static final int STATUS_NOT_SWITCHABLE = 104; // 0x68 2572 field public static final int STATUS_OK_USER_ALREADY_IN_FOREGROUND = 101; // 0x65 2573 field public static final int STATUS_SUCCESSFUL = 1; // 0x1 2574 field public static final int STATUS_TARGET_USER_ABANDONED_DUE_TO_A_NEW_REQUEST = 103; // 0x67 2575 field public static final int STATUS_TARGET_USER_ALREADY_BEING_SWITCHED_TO = 102; // 0x66 2576 field public static final int STATUS_UX_RESTRICTION_FAILURE = 6; // 0x6 2577 } 2578 2579} 2580 2581package android.car.view { 2582 2583 public final class DisplayHelper { 2584 method public static int getPhysicalPort(@NonNull android.view.Display); 2585 method @Nullable public static String getUniqueId(@NonNull android.view.Display); 2586 field public static final int INVALID_PORT = -1; // 0xffffffff 2587 } 2588 2589 public final class MirroredSurfaceView extends android.view.SurfaceView { 2590 ctor public MirroredSurfaceView(@NonNull android.content.Context); 2591 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet); 2592 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int); 2593 ctor public MirroredSurfaceView(@NonNull android.content.Context, @Nullable android.util.AttributeSet, int, int); 2594 method @MainThread @RequiresPermission(android.car.Car.PERMISSION_ACCESS_MIRRORRED_SURFACE) public boolean mirrorSurface(@NonNull android.os.IBinder); 2595 method @MainThread public void release(); 2596 method @MainThread public void setObscuredTouchRegion(@Nullable android.graphics.Region); 2597 } 2598 2599 public final class WindowManagerHelper { 2600 method public static void setInputFeatureSpy(@NonNull android.view.WindowManager.LayoutParams); 2601 method @RequiresPermission(android.Manifest.permission.INTERNAL_SYSTEM_WINDOW) public static void setTrustedOverlay(@NonNull android.view.WindowManager.LayoutParams); 2602 } 2603 2604} 2605 2606package android.car.vms { 2607 2608 public final class VmsAssociatedLayer implements android.os.Parcelable { 2609 ctor public VmsAssociatedLayer(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<java.lang.Integer>); 2610 method public int describeContents(); 2611 method @NonNull public java.util.Set<java.lang.Integer> getProviderIds(); 2612 method @Deprecated @NonNull public java.util.Set<java.lang.Integer> getPublisherIds(); 2613 method @NonNull public android.car.vms.VmsLayer getVmsLayer(); 2614 method public void writeToParcel(@NonNull android.os.Parcel, int); 2615 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAssociatedLayer> CREATOR; 2616 } 2617 2618 public final class VmsAvailableLayers implements android.os.Parcelable { 2619 ctor @Deprecated public VmsAvailableLayers(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>, int); 2620 ctor public VmsAvailableLayers(int, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2621 method public int describeContents(); 2622 method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers(); 2623 method @Deprecated public int getSequence(); 2624 method public int getSequenceNumber(); 2625 method public void writeToParcel(@NonNull android.os.Parcel, int); 2626 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAvailableLayers> CREATOR; 2627 } 2628 2629 public final class VmsClient { 2630 method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsAvailableLayers getAvailableLayers(); 2631 method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public byte[] getProviderDescription(int); 2632 method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsSubscriptionState getSubscriptionState(); 2633 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public boolean isMonitoringEnabled(); 2634 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void publishPacket(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]); 2635 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public int registerProvider(@NonNull byte[]); 2636 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setMonitoringEnabled(boolean); 2637 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void setProviderOfferings(int, @NonNull java.util.Set<android.car.vms.VmsLayerDependency>); 2638 method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setSubscriptions(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2639 method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void unregisterProvider(int); 2640 } 2641 2642 public final class VmsClientManager { 2643 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); 2644 method @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public void unregisterVmsClientCallback(@NonNull android.car.vms.VmsClientManager.VmsClientCallback); 2645 } 2646 2647 public static interface VmsClientManager.VmsClientCallback { 2648 method public void onClientConnected(@NonNull android.car.vms.VmsClient); 2649 method public void onLayerAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers); 2650 method public void onPacketReceived(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]); 2651 method public void onSubscriptionStateChanged(@NonNull android.car.vms.VmsSubscriptionState); 2652 } 2653 2654 public final class VmsLayer implements android.os.Parcelable { 2655 ctor public VmsLayer(int, int, int); 2656 method public int describeContents(); 2657 method public int getChannel(); 2658 method @Deprecated public int getSubtype(); 2659 method public int getType(); 2660 method public int getVersion(); 2661 method public void writeToParcel(@NonNull android.os.Parcel, int); 2662 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayer> CREATOR; 2663 } 2664 2665 public final class VmsLayerDependency implements android.os.Parcelable { 2666 ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer); 2667 ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<android.car.vms.VmsLayer>); 2668 method public int describeContents(); 2669 method @NonNull public java.util.Set<android.car.vms.VmsLayer> getDependencies(); 2670 method @NonNull public android.car.vms.VmsLayer getLayer(); 2671 method public void writeToParcel(@NonNull android.os.Parcel, int); 2672 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayerDependency> CREATOR; 2673 } 2674 2675 @Deprecated public final class VmsLayersOffering implements android.os.Parcelable { 2676 ctor @Deprecated public VmsLayersOffering(@NonNull java.util.Set<android.car.vms.VmsLayerDependency>, int); 2677 method @Deprecated public int describeContents(); 2678 method @Deprecated @NonNull public java.util.Set<android.car.vms.VmsLayerDependency> getDependencies(); 2679 method @Deprecated public int getPublisherId(); 2680 method @Deprecated public void writeToParcel(@NonNull android.os.Parcel, int); 2681 field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayersOffering> CREATOR; 2682 } 2683 2684 @Deprecated public final class VmsOperationRecorder { 2685 method @Deprecated public void addHalSubscription(int, android.car.vms.VmsLayer); 2686 method @Deprecated public void addPromiscuousSubscription(int); 2687 method @Deprecated public void addSubscription(int, android.car.vms.VmsLayer); 2688 method @Deprecated public static android.car.vms.VmsOperationRecorder get(); 2689 method @Deprecated public void getPublisherId(int); 2690 method @Deprecated public void removeHalSubscription(int, android.car.vms.VmsLayer); 2691 method @Deprecated public void removePromiscuousSubscription(int); 2692 method @Deprecated public void removeSubscription(int, android.car.vms.VmsLayer); 2693 method @Deprecated public void setHalPublisherLayersOffering(android.car.vms.VmsLayersOffering); 2694 method @Deprecated public void setLayersOffering(android.car.vms.VmsLayersOffering); 2695 method @Deprecated public void setPublisherLayersOffering(android.car.vms.VmsLayersOffering); 2696 method @Deprecated public void startMonitoring(); 2697 method @Deprecated public void stopMonitoring(); 2698 method @Deprecated public void subscribe(android.car.vms.VmsLayer); 2699 method @Deprecated public void subscribe(android.car.vms.VmsLayer, int); 2700 method @Deprecated public void unsubscribe(android.car.vms.VmsLayer); 2701 method @Deprecated public void unsubscribe(android.car.vms.VmsLayer, int); 2702 } 2703 2704 @Deprecated public abstract class VmsPublisherClientService extends android.app.Service { 2705 ctor @Deprecated public VmsPublisherClientService(); 2706 method @Deprecated public final int getPublisherId(byte[]); 2707 method @Deprecated public final android.car.vms.VmsSubscriptionState getSubscriptions(); 2708 method @Deprecated public android.os.IBinder onBind(android.content.Intent); 2709 method @Deprecated protected abstract void onVmsPublisherServiceReady(); 2710 method @Deprecated public abstract void onVmsSubscriptionChange(@NonNull android.car.vms.VmsSubscriptionState); 2711 method @Deprecated public final void publish(@NonNull android.car.vms.VmsLayer, int, byte[]); 2712 method @Deprecated public final void setLayersOffering(@NonNull android.car.vms.VmsLayersOffering); 2713 } 2714 2715 @Deprecated public final class VmsSubscriberManager { 2716 method @Deprecated public void clearVmsSubscriberClientCallback(); 2717 method @Deprecated @NonNull public android.car.vms.VmsAvailableLayers getAvailableLayers(); 2718 method @Deprecated @NonNull public byte[] getPublisherInfo(int); 2719 method @Deprecated public void setVmsSubscriberClientCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.vms.VmsSubscriberManager.VmsSubscriberClientCallback); 2720 method @Deprecated public void startMonitoring(); 2721 method @Deprecated public void stopMonitoring(); 2722 method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer); 2723 method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer, int); 2724 method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer); 2725 method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer, int); 2726 } 2727 2728 @Deprecated public static interface VmsSubscriberManager.VmsSubscriberClientCallback { 2729 method @Deprecated public void onLayersAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers); 2730 method @Deprecated public void onVmsMessageReceived(@NonNull android.car.vms.VmsLayer, byte[]); 2731 } 2732 2733 public final class VmsSubscriptionState implements android.os.Parcelable { 2734 ctor public VmsSubscriptionState(int, @NonNull java.util.Set<android.car.vms.VmsLayer>, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>); 2735 method public int describeContents(); 2736 method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers(); 2737 method @NonNull public java.util.Set<android.car.vms.VmsLayer> getLayers(); 2738 method public int getSequenceNumber(); 2739 method public void writeToParcel(@NonNull android.os.Parcel, int); 2740 field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsSubscriptionState> CREATOR; 2741 } 2742 2743} 2744 2745package android.car.watchdog { 2746 2747 public final class CarWatchdogManager { 2748 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); 2749 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public java.util.List<android.car.watchdog.ResourceOveruseStats> getAllResourceOveruseStats(int, int, int); 2750 method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public java.util.List<android.car.watchdog.PackageKillableState> getPackageKillableStatesAsUser(@NonNull android.os.UserHandle); 2751 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); 2752 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); 2753 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void registerClient(@NonNull java.util.concurrent.Executor, @NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int); 2754 method @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public void removeResourceOveruseListenerForSystem(@NonNull android.car.watchdog.CarWatchdogManager.ResourceOveruseListener); 2755 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public void setKillablePackageAsUser(@NonNull String, @NonNull android.os.UserHandle, boolean); 2756 method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public int setResourceOveruseConfigurations(@NonNull java.util.List<android.car.watchdog.ResourceOveruseConfiguration>, int); 2757 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void tellClientAlive(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int); 2758 method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void unregisterClient(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback); 2759 field public static final int FLAG_MINIMUM_STATS_IO_100_MB = 2; // 0x2 2760 field public static final int FLAG_MINIMUM_STATS_IO_1_GB = 4; // 0x4 2761 field public static final int FLAG_MINIMUM_STATS_IO_1_MB = 1; // 0x1 2762 field public static final int RETURN_CODE_ERROR = -1; // 0xffffffff 2763 field public static final int RETURN_CODE_SUCCESS = 0; // 0x0 2764 field public static final int TIMEOUT_CRITICAL = 0; // 0x0 2765 field public static final int TIMEOUT_MODERATE = 1; // 0x1 2766 field public static final int TIMEOUT_NORMAL = 2; // 0x2 2767 } 2768 2769 public abstract static class CarWatchdogManager.CarWatchdogClientCallback { 2770 ctor public CarWatchdogManager.CarWatchdogClientCallback(); 2771 method public boolean onCheckHealthStatus(int, int); 2772 method public void onPrepareProcessTermination(); 2773 } 2774 2775 public final class IoOveruseAlertThreshold implements android.os.Parcelable { 2776 method public int describeContents(); 2777 method public long getDurationInSeconds(); 2778 method public long getWrittenBytesPerSecond(); 2779 method public void writeToParcel(@NonNull android.os.Parcel, int); 2780 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseAlertThreshold> CREATOR; 2781 } 2782 2783 public final class IoOveruseConfiguration implements android.os.Parcelable { 2784 method public int describeContents(); 2785 method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getAppCategorySpecificThresholds(); 2786 method @NonNull public android.car.watchdog.PerStateBytes getComponentLevelThresholds(); 2787 method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getPackageSpecificThresholds(); 2788 method @NonNull public java.util.List<android.car.watchdog.IoOveruseAlertThreshold> getSystemWideThresholds(); 2789 method public void writeToParcel(@NonNull android.os.Parcel, int); 2790 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseConfiguration> CREATOR; 2791 } 2792 2793 public static final class IoOveruseConfiguration.Builder { 2794 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>); 2795 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addAppCategorySpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes); 2796 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addPackageSpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes); 2797 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addSystemWideThresholds(@NonNull android.car.watchdog.IoOveruseAlertThreshold); 2798 method @NonNull public android.car.watchdog.IoOveruseConfiguration build(); 2799 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setAppCategorySpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>); 2800 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setComponentLevelThresholds(@NonNull android.car.watchdog.PerStateBytes); 2801 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setPackageSpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>); 2802 method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setSystemWideThresholds(@NonNull java.util.List<android.car.watchdog.IoOveruseAlertThreshold>); 2803 } 2804 2805 public final class PackageKillableState implements android.os.Parcelable { 2806 method public int describeContents(); 2807 method public int getKillableState(); 2808 method @NonNull public String getPackageName(); 2809 method public int getUserId(); 2810 method public void writeToParcel(@NonNull android.os.Parcel, int); 2811 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.PackageKillableState> CREATOR; 2812 field public static final int KILLABLE_STATE_NEVER = 3; // 0x3 2813 field public static final int KILLABLE_STATE_NO = 2; // 0x2 2814 field public static final int KILLABLE_STATE_YES = 1; // 0x1 2815 } 2816 2817 public final class ResourceOveruseConfiguration implements android.os.Parcelable { 2818 method public int describeContents(); 2819 method public int getComponentType(); 2820 method @Nullable public android.car.watchdog.IoOveruseConfiguration getIoOveruseConfiguration(); 2821 method @NonNull public java.util.Map<java.lang.String,java.lang.String> getPackagesToAppCategoryTypes(); 2822 method @NonNull public java.util.List<java.lang.String> getSafeToKillPackages(); 2823 method @NonNull public java.util.List<java.lang.String> getVendorPackagePrefixes(); 2824 method public void writeToParcel(@NonNull android.os.Parcel, int); 2825 field public static final String APPLICATION_CATEGORY_TYPE_MAPS = "android.car.watchdog.app.category.MAPS"; 2826 field public static final String APPLICATION_CATEGORY_TYPE_MEDIA = "android.car.watchdog.app.category.MEDIA"; 2827 field public static final int COMPONENT_TYPE_SYSTEM = 1; // 0x1 2828 field public static final int COMPONENT_TYPE_THIRD_PARTY = 3; // 0x3 2829 field public static final int COMPONENT_TYPE_VENDOR = 2; // 0x2 2830 field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.ResourceOveruseConfiguration> CREATOR; 2831 } 2832 2833 public static final class ResourceOveruseConfiguration.Builder { 2834 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>); 2835 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addPackagesToAppCategoryTypes(@NonNull String, @NonNull String); 2836 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addSafeToKillPackages(@NonNull String); 2837 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addVendorPackagePrefixes(@NonNull String); 2838 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration build(); 2839 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setComponentType(int); 2840 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setIoOveruseConfiguration(@NonNull android.car.watchdog.IoOveruseConfiguration); 2841 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setPackagesToAppCategoryTypes(@NonNull java.util.Map<java.lang.String,java.lang.String>); 2842 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setSafeToKillPackages(@NonNull java.util.List<java.lang.String>); 2843 method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setVendorPackagePrefixes(@NonNull java.util.List<java.lang.String>); 2844 } 2845 2846} 2847 2848package android.car.wifi { 2849 2850 @FlaggedApi("android.car.feature.persist_ap_settings") public final class CarWifiManager { 2851 method @FlaggedApi("android.car.feature.persist_ap_settings") @RequiresPermission(android.car.Car.PERMISSION_READ_PERSIST_TETHERING_SETTINGS) public boolean canControlPersistTetheringSettings(); 2852 } 2853 2854} 2855 2856