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