• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 public static final String CAR_DRIVING_STATE_SERVICE = "drivingstate";
26    field public static final String CAR_EVS_SERVICE = "car_evs_service";
27    field public static final String CAR_EXTRA_CLUSTER_ACTIVITY_STATE = "android.car.cluster.ClusterActivityState";
28    field public static final String CAR_INPUT_SERVICE = "android.car.input";
29    field public static final String CAR_MEDIA_SERVICE = "car_media";
30    field public static final String CAR_PERFORMANCE_SERVICE = "car_performance";
31    field public static final String CAR_TELEMETRY_SERVICE = "car_telemetry_service";
32    field public static final String CAR_USER_SERVICE = "car_user_service";
33    field public static final String DIAGNOSTIC_SERVICE = "diagnostic";
34    field public static final int FEATURE_REQUEST_ALREADY_IN_THE_STATE = 1; // 0x1
35    field public static final int FEATURE_REQUEST_MANDATORY = 2; // 0x2
36    field public static final int FEATURE_REQUEST_NOT_EXISTING = 3; // 0x3
37    field public static final int FEATURE_REQUEST_SUCCESS = 0; // 0x0
38    field @Deprecated public static final String HVAC_SERVICE = "hvac";
39    field public static final String OCCUPANT_AWARENESS_SERVICE = "occupant_awareness";
40    field public static final String PERMISSION_ADJUST_RANGE_REMAINING = "android.car.permission.ADJUST_RANGE_REMAINING";
41    field public static final String PERMISSION_CAR_DIAGNOSTIC_CLEAR = "android.car.permission.CLEAR_CAR_DIAGNOSTICS";
42    field public static final String PERMISSION_CAR_DIAGNOSTIC_READ_ALL = "android.car.permission.CAR_DIAGNOSTICS";
43    field public static final String PERMISSION_CAR_DRIVING_STATE = "android.car.permission.CAR_DRIVING_STATE";
44    field public static final String PERMISSION_CAR_DYNAMICS_STATE = "android.car.permission.CAR_DYNAMICS_STATE";
45    field public static final String PERMISSION_CAR_ENGINE_DETAILED = "android.car.permission.CAR_ENGINE_DETAILED";
46    field public static final String PERMISSION_CAR_EPOCH_TIME = "android.car.permission.CAR_EPOCH_TIME";
47    field public static final String PERMISSION_CAR_INSTRUMENT_CLUSTER_CONTROL = "android.car.permission.CAR_INSTRUMENT_CLUSTER_CONTROL";
48    field public static final String PERMISSION_CAR_MONITOR_INPUT = "android.car.permission.CAR_MONITOR_INPUT";
49    field public static final String PERMISSION_CAR_POWER = "android.car.permission.CAR_POWER";
50    field public static final String PERMISSION_CAR_PROJECTION = "android.car.permission.CAR_PROJECTION";
51    field public static final String PERMISSION_CAR_PROJECTION_STATUS = "android.car.permission.ACCESS_CAR_PROJECTION_STATUS";
52    field public static final String PERMISSION_CAR_TEST_SERVICE = "android.car.permission.CAR_TEST_SERVICE";
53    field public static final String PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION = "android.car.permission.CAR_UX_RESTRICTIONS_CONFIGURATION";
54    field public static final String PERMISSION_COLLECT_CAR_WATCHDOG_METRICS = "android.car.permission.COLLECT_CAR_WATCHDOG_METRICS";
55    field public static final String PERMISSION_CONTROL_APP_BLOCKING = "android.car.permission.CONTROL_APP_BLOCKING";
56    field public static final String PERMISSION_CONTROL_CAR_APP_LAUNCH = "android.car.permission.CONTROL_CAR_APP_LAUNCH";
57    field public static final String PERMISSION_CONTROL_CAR_CLIMATE = "android.car.permission.CONTROL_CAR_CLIMATE";
58    field public static final String PERMISSION_CONTROL_CAR_DOORS = "android.car.permission.CONTROL_CAR_DOORS";
59    field public static final String PERMISSION_CONTROL_CAR_EVS_ACTIVITY = "android.car.permission.CONTROL_CAR_EVS_ACTIVITY";
60    field public static final String PERMISSION_CONTROL_CAR_FEATURES = "android.car.permission.CONTROL_CAR_FEATURES";
61    field public static final String PERMISSION_CONTROL_CAR_MIRRORS = "android.car.permission.CONTROL_CAR_MIRRORS";
62    field @Deprecated public static final String PERMISSION_CONTROL_CAR_OCCUPANT_AWARENESS_SYSTEM = "android.car.permission.CONTROL_CAR_OCCUPANT_AWARENESS_SYSTEM";
63    field public static final String PERMISSION_CONTROL_CAR_POWER_POLICY = "android.car.permission.CONTROL_CAR_POWER_POLICY";
64    field public static final String PERMISSION_CONTROL_CAR_SEATS = "android.car.permission.CONTROL_CAR_SEATS";
65    field public static final String PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG = "android.car.permission.CONTROL_CAR_WATCHDOG_CONFIG";
66    field public static final String PERMISSION_CONTROL_CAR_WINDOWS = "android.car.permission.CONTROL_CAR_WINDOWS";
67    field public static final String PERMISSION_CONTROL_ENERGY_PORTS = "android.car.permission.CONTROL_CAR_ENERGY_PORTS";
68    field public static final String PERMISSION_CONTROL_EXTERIOR_LIGHTS = "android.car.permission.CONTROL_CAR_EXTERIOR_LIGHTS";
69    field public static final String PERMISSION_CONTROL_SHUTDOWN_PROCESS = "android.car.permission.CONTROL_SHUTDOWN_PROCESS";
70    field public static final String PERMISSION_EXTERIOR_LIGHTS = "android.car.permission.CAR_EXTERIOR_LIGHTS";
71    field public static final String PERMISSION_MANAGE_THREAD_PRIORITY = "android.car.permission.MANAGE_THREAD_PRIORITY";
72    field public static final String PERMISSION_MILEAGE = "android.car.permission.CAR_MILEAGE";
73    field @Deprecated public static final String PERMISSION_MOCK_VEHICLE_HAL = "android.car.permission.CAR_MOCK_VEHICLE_HAL";
74    field public static final String PERMISSION_MONITOR_CAR_EVS_STATUS = "android.car.permission.MONITOR_CAR_EVS_STATUS";
75    field public static final String PERMISSION_READ_CAR_OCCUPANT_AWARENESS_STATE = "android.car.permission.READ_CAR_OCCUPANT_AWARENESS_STATE";
76    field public static final String PERMISSION_READ_CAR_VENDOR_PERMISSION_INFO = "android.car.permission.READ_CAR_VENDOR_PERMISSION_INFO";
77    field public static final String PERMISSION_RECEIVE_CAR_AUDIO_DUCKING_EVENTS = "android.car.permission.RECEIVE_CAR_AUDIO_DUCKING_EVENTS";
78    field public static final String PERMISSION_REQUEST_CAR_EVS_ACTIVITY = "android.car.permission.REQUEST_CAR_EVS_ACTIVITY";
79    field public static final String PERMISSION_STORAGE_ENCRYPTION_BINDING_SEED = "android.car.permission.STORAGE_ENCRYPTION_BINDING_SEED";
80    field public static final String PERMISSION_STORAGE_MONITORING = "android.car.permission.STORAGE_MONITORING";
81    field public static final String PERMISSION_TEMPLATE_RENDERER = "android.car.permission.TEMPLATE_RENDERER";
82    field public static final String PERMISSION_TIRES = "android.car.permission.CAR_TIRES";
83    field public static final String PERMISSION_USE_CAR_EVS_CAMERA = "android.car.permission.USE_CAR_EVS_CAMERA";
84    field public static final String PERMISSION_USE_CAR_TELEMETRY_SERVICE = "android.car.permission.USE_CAR_TELEMETRY_SERVICE";
85    field public static final String PERMISSION_USE_CAR_WATCHDOG = "android.car.permission.USE_CAR_WATCHDOG";
86    field public static final String PERMISSION_VENDOR_EXTENSION = "android.car.permission.CAR_VENDOR_EXTENSION";
87    field public static final String PERMISSION_VMS_PUBLISHER = "android.car.permission.VMS_PUBLISHER";
88    field public static final String PERMISSION_VMS_SUBSCRIBER = "android.car.permission.VMS_SUBSCRIBER";
89    field public static final String PROJECTION_SERVICE = "projection";
90    field public static final String STORAGE_MONITORING_SERVICE = "storage_monitoring";
91    field public static final String TEST_SERVICE = "car-service-test";
92    field public static final String VEHICLE_MAP_SERVICE = "vehicle_map_service";
93    field @Deprecated public static final String VENDOR_EXTENSION_SERVICE = "vendor_extension";
94    field @Deprecated public static final String VMS_SUBSCRIBER_SERVICE = "vehicle_map_subscriber_service";
95  }
96
97  public final class CarBugreportManager {
98    method @RequiresPermission(android.Manifest.permission.DUMP) public void cancelBugreport();
99    method @RequiresPermission(android.Manifest.permission.DUMP) public void requestBugreport(@NonNull android.os.ParcelFileDescriptor, @NonNull android.os.ParcelFileDescriptor, @NonNull android.car.CarBugreportManager.CarBugreportManagerCallback);
100  }
101
102  public abstract static class CarBugreportManager.CarBugreportManagerCallback {
103    ctor public CarBugreportManager.CarBugreportManagerCallback();
104    method public void onError(int);
105    method public void onFinished();
106    method public void onProgress(@FloatRange(from=0.0f, to=100.0f) float);
107    field public static final int CAR_BUGREPORT_DUMPSTATE_CONNECTION_FAILED = 3; // 0x3
108    field public static final int CAR_BUGREPORT_DUMPSTATE_FAILED = 1; // 0x1
109    field public static final int CAR_BUGREPORT_IN_PROGRESS = 2; // 0x2
110    field public static final int CAR_BUGREPORT_SERVICE_NOT_AVAILABLE = 4; // 0x4
111  }
112
113  public class CarOccupantZoneManager {
114    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public int getAudioZoneIdForOccupant(@NonNull android.car.CarOccupantZoneManager.OccupantZoneInfo);
115    method @RequiresPermission(android.car.Car.ACCESS_PRIVATE_DISPLAY_ID) public int getDisplayIdForDriver(int);
116    method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.CarOccupantZoneManager.OccupantZoneInfo getOccupantForAudioZoneId(int);
117  }
118
119  public final class CarProjectionManager {
120    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void addKeyEventHandler(@NonNull java.util.Set<java.lang.Integer>, @NonNull android.car.CarProjectionManager.ProjectionKeyEventHandler);
121    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);
122    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public java.util.List<java.lang.Integer> getAvailableWifiChannels(int);
123    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public android.os.Bundle getProjectionOptions();
124    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void registerProjectionListener(@NonNull android.car.CarProjectionManager.CarProjectionListener, int);
125    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void registerProjectionRunner(@NonNull android.content.Intent);
126    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION_STATUS) public void registerProjectionStatusListener(@NonNull android.car.CarProjectionManager.ProjectionStatusListener);
127    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public boolean releaseBluetoothProfileInhibit(@NonNull android.bluetooth.BluetoothDevice, int);
128    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void removeKeyEventHandler(@NonNull android.car.CarProjectionManager.ProjectionKeyEventHandler);
129    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public boolean requestBluetoothProfileInhibit(@NonNull android.bluetooth.BluetoothDevice, int);
130    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void resetProjectionAccessPointCredentials();
131    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void startProjectionAccessPoint(@NonNull android.car.CarProjectionManager.ProjectionAccessPointCallback);
132    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void stopProjectionAccessPoint();
133    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void unregisterProjectionListener();
134    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void unregisterProjectionRunner(@NonNull android.content.Intent);
135    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION_STATUS) public void unregisterProjectionStatusListener(@NonNull android.car.CarProjectionManager.ProjectionStatusListener);
136    method @RequiresPermission(android.car.Car.PERMISSION_CAR_PROJECTION) public void updateProjectionStatus(@NonNull android.car.projection.ProjectionStatus);
137    field public static final int KEY_EVENT_CALL_KEY_DOWN = 4; // 0x4
138    field public static final int KEY_EVENT_CALL_LONG_PRESS_KEY_DOWN = 6; // 0x6
139    field public static final int KEY_EVENT_CALL_LONG_PRESS_KEY_UP = 7; // 0x7
140    field public static final int KEY_EVENT_CALL_SHORT_PRESS_KEY_UP = 5; // 0x5
141    field public static final int KEY_EVENT_VOICE_SEARCH_KEY_DOWN = 0; // 0x0
142    field public static final int KEY_EVENT_VOICE_SEARCH_LONG_PRESS_KEY_DOWN = 2; // 0x2
143    field public static final int KEY_EVENT_VOICE_SEARCH_LONG_PRESS_KEY_UP = 3; // 0x3
144    field public static final int KEY_EVENT_VOICE_SEARCH_SHORT_PRESS_KEY_UP = 1; // 0x1
145    field @Deprecated public static final int PROJECTION_LONG_PRESS_VOICE_SEARCH = 2; // 0x2
146    field @Deprecated public static final int PROJECTION_VOICE_SEARCH = 1; // 0x1
147  }
148
149  public static interface CarProjectionManager.CarProjectionListener {
150    method public void onVoiceAssistantRequest(boolean);
151  }
152
153  public abstract static class CarProjectionManager.ProjectionAccessPointCallback {
154    ctor public CarProjectionManager.ProjectionAccessPointCallback();
155    method public void onFailed(int);
156    method @Deprecated public void onStarted(@Nullable android.net.wifi.WifiConfiguration);
157    method public void onStarted(@NonNull android.net.wifi.SoftApConfiguration);
158    method public void onStopped();
159    field public static final int ERROR_GENERIC = 2; // 0x2
160    field public static final int ERROR_INCOMPATIBLE_MODE = 3; // 0x3
161    field public static final int ERROR_NO_CHANNEL = 1; // 0x1
162    field public static final int ERROR_TETHERING_DISALLOWED = 4; // 0x4
163  }
164
165  public static interface CarProjectionManager.ProjectionKeyEventHandler {
166    method public void onKeyEvent(int);
167  }
168
169  public static interface CarProjectionManager.ProjectionStatusListener {
170    method public void onProjectionStatusChanged(int, @Nullable String, @NonNull java.util.List<android.car.projection.ProjectionStatus>);
171  }
172
173  public static class CarVersion.VERSION_CODES {
174    field @NonNull public static final android.car.CarVersion TIRAMISU_3;
175  }
176
177  public static class PlatformVersion.VERSION_CODES {
178    field @NonNull public static final android.car.PlatformVersion TIRAMISU_3;
179  }
180
181  public final class VehicleAreaDoor {
182    field public static final int DOOR_HOOD = 268435456; // 0x10000000
183    field public static final int DOOR_REAR = 536870912; // 0x20000000
184    field public static final int DOOR_ROW_1_LEFT = 1; // 0x1
185    field public static final int DOOR_ROW_1_RIGHT = 4; // 0x4
186    field public static final int DOOR_ROW_2_LEFT = 16; // 0x10
187    field public static final int DOOR_ROW_2_RIGHT = 64; // 0x40
188    field public static final int DOOR_ROW_3_LEFT = 256; // 0x100
189    field public static final int DOOR_ROW_3_RIGHT = 1024; // 0x400
190  }
191
192  public final class VehicleAreaMirror {
193    field public static final int MIRROR_DRIVER_CENTER = 4; // 0x4
194    field public static final int MIRROR_DRIVER_LEFT = 1; // 0x1
195    field public static final int MIRROR_DRIVER_RIGHT = 2; // 0x2
196  }
197
198  public final class VehicleAreaWindow {
199    field public static final int WINDOW_FRONT_WINDSHIELD = 1; // 0x1
200    field public static final int WINDOW_REAR_WINDSHIELD = 2; // 0x2
201    field public static final int WINDOW_ROOF_TOP_1 = 65536; // 0x10000
202    field public static final int WINDOW_ROOF_TOP_2 = 131072; // 0x20000
203    field public static final int WINDOW_ROW_1_LEFT = 16; // 0x10
204    field public static final int WINDOW_ROW_1_RIGHT = 64; // 0x40
205    field public static final int WINDOW_ROW_2_LEFT = 256; // 0x100
206    field public static final int WINDOW_ROW_2_RIGHT = 1024; // 0x400
207    field public static final int WINDOW_ROW_3_LEFT = 4096; // 0x1000
208    field public static final int WINDOW_ROW_3_RIGHT = 16384; // 0x4000
209  }
210
211  public final class VehiclePropertyAccess {
212    field public static final int NONE = 0; // 0x0
213    field public static final int READ = 1; // 0x1
214    field public static final int READ_WRITE = 3; // 0x3
215    field public static final int WRITE = 2; // 0x2
216  }
217
218  public final class VehiclePropertyIds {
219    field @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_CLIMATE) public static final int HVAC_ELECTRIC_DEFROSTER_ON = 320865556; // 0x13200514
220  }
221
222  public final class VehicleUnit {
223    field public static final int DEGREES = 128; // 0x80
224    field public static final int HERTZ = 3; // 0x3
225    field public static final int MILLIAMPERE = 97; // 0x61
226    field public static final int MILLIVOLT = 98; // 0x62
227    field public static final int MILLIWATTS = 99; // 0x63
228    field public static final int NANO_SECS = 80; // 0x50
229    field public static final int PERCENTILE = 16; // 0x10
230    field public static final int RPM = 2; // 0x2
231    field public static final int SECS = 83; // 0x53
232    field public static final int SHOULD_NOT_USE = 0; // 0x0
233    field public static final int YEAR = 89; // 0x59
234  }
235
236}
237
238package android.car.admin {
239
240  public final class CarDevicePolicyManager {
241    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.CreateUserResult createUser(@Nullable String, int);
242    method @NonNull @RequiresPermission(anyOf={android.Manifest.permission.MANAGE_USERS, android.Manifest.permission.CREATE_USERS}) public android.car.admin.RemoveUserResult removeUser(@NonNull android.os.UserHandle);
243    field public static final int USER_TYPE_ADMIN = 1; // 0x1
244    field public static final int USER_TYPE_GUEST = 2; // 0x2
245    field public static final int USER_TYPE_REGULAR = 0; // 0x0
246  }
247
248  public final class CreateUserResult {
249    method public int getStatus();
250    method @Nullable public android.os.UserHandle getUserHandle();
251    method public boolean isSuccess();
252    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
253    field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 2; // 0x2
254    field public static final int STATUS_SUCCESS = 1; // 0x1
255  }
256
257  public final class RemoveUserResult {
258    method public int getStatus();
259    method public boolean isSuccess();
260    field public static final int STATUS_FAILURE_GENERIC = 100; // 0x64
261    field public static final int STATUS_FAILURE_INVALID_ARGUMENTS = 5; // 0x5
262    field public static final int STATUS_FAILURE_USER_DOES_NOT_EXIST = 4; // 0x4
263    field public static final int STATUS_SUCCESS = 1; // 0x1
264    field public static final int STATUS_SUCCESS_LAST_ADMIN_REMOVED = 2; // 0x2
265    field public static final int STATUS_SUCCESS_LAST_ADMIN_SET_EPHEMERAL = 6; // 0x6
266    field public static final int STATUS_SUCCESS_SET_EPHEMERAL = 3; // 0x3
267  }
268
269}
270
271package android.car.app {
272
273  public final class CarActivityManager {
274    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_APP_LAUNCH) public int setPersistentActivity(@NonNull android.content.ComponentName, int, int);
275    field public static final int RESULT_FAILURE = -1; // 0xffffffff
276    field public static final int RESULT_INVALID_USER = -2; // 0xfffffffe
277    field public static final int RESULT_SUCCESS = 0; // 0x0
278  }
279
280}
281
282package android.car.cluster {
283
284  @Deprecated public class CarInstrumentClusterManager {
285    method @Deprecated public void registerCallback(String, android.car.cluster.CarInstrumentClusterManager.Callback);
286    method @Deprecated public void startActivity(android.content.Intent);
287    method @Deprecated public void unregisterCallback(android.car.cluster.CarInstrumentClusterManager.Callback);
288    field @Deprecated public static final String CATEGORY_NAVIGATION = "android.car.cluster.NAVIGATION";
289    field @Deprecated public static final String KEY_EXTRA_ACTIVITY_STATE = "android.car.cluster.ClusterActivityState";
290  }
291
292  @Deprecated public static interface CarInstrumentClusterManager.Callback {
293    method @Deprecated public void onClusterActivityStateChanged(String, android.os.Bundle);
294  }
295
296  public final class ClusterActivityState {
297    method @NonNull public static android.car.cluster.ClusterActivityState create(boolean, @NonNull android.graphics.Rect);
298    method @NonNull public static android.car.cluster.ClusterActivityState fromBundle(@NonNull android.os.Bundle);
299    method @Nullable public android.os.Bundle getExtras();
300    method @Nullable public android.graphics.Rect getUnobscuredBounds();
301    method public boolean isVisible();
302    method @NonNull public android.car.cluster.ClusterActivityState setExtras(@NonNull android.os.Bundle);
303    method @NonNull public android.car.cluster.ClusterActivityState setUnobscuredBounds(@NonNull android.graphics.Rect);
304    method @NonNull public android.car.cluster.ClusterActivityState setVisible(boolean);
305    method @NonNull public android.os.Bundle toBundle();
306  }
307
308}
309
310package android.car.cluster.renderer {
311
312  @Deprecated public abstract class InstrumentClusterRenderer {
313    ctor @Deprecated public InstrumentClusterRenderer();
314    method @Deprecated protected abstract android.car.cluster.renderer.NavigationRenderer createNavigationRenderer();
315    method @Deprecated @Nullable public android.car.cluster.renderer.NavigationRenderer getNavigationRenderer();
316    method @Deprecated @UiThread public final void initialize();
317    method @Deprecated public abstract void onCreate(android.content.Context);
318    method @Deprecated public abstract void onStart();
319    method @Deprecated public abstract void onStop();
320  }
321
322  public abstract class InstrumentClusterRenderingService extends android.app.Service {
323    ctor public InstrumentClusterRenderingService();
324    method @Deprecated @Nullable public android.graphics.Bitmap getBitmap(android.net.Uri);
325    method @Nullable public android.graphics.Bitmap getBitmap(@NonNull android.net.Uri, int, int);
326    method @Nullable public android.graphics.Bitmap getBitmap(@NonNull android.net.Uri, int, int, float);
327    method @MainThread @Nullable public abstract android.car.cluster.renderer.NavigationRenderer getNavigationRenderer();
328    method @CallSuper public android.os.IBinder onBind(android.content.Intent);
329    method @MainThread public void onKeyEvent(@NonNull android.view.KeyEvent);
330    method @MainThread public void onNavigationComponentLaunched();
331    method @MainThread public void onNavigationComponentReleased();
332    method public void setClusterActivityLaunchOptions(@NonNull android.app.ActivityOptions);
333    method public void setClusterActivityState(@NonNull android.car.cluster.ClusterActivityState);
334    method public boolean startFixedActivityModeForDisplayAndUser(@NonNull android.content.Intent, @NonNull android.app.ActivityOptions, int);
335    method protected boolean startNavigationActivity(@NonNull android.content.ComponentName);
336    method public void stopFixedActivityMode(int);
337  }
338
339  @UiThread public abstract class NavigationRenderer {
340    ctor public NavigationRenderer();
341    method public abstract android.car.navigation.CarNavigationInstrumentCluster getNavigationProperties();
342    method public void onNavigationStateChanged(@Nullable android.os.Bundle);
343  }
344
345}
346
347package android.car.content.pm {
348
349  public final class AppBlockingPackageInfo implements android.os.Parcelable {
350    ctor public AppBlockingPackageInfo(String, int, int, int, @Nullable android.content.pm.Signature[], @Nullable String[]);
351    ctor public AppBlockingPackageInfo(android.os.Parcel);
352    method public int describeContents();
353    method public void writeToParcel(android.os.Parcel, int);
354    field public static final android.os.Parcelable.Creator<android.car.content.pm.AppBlockingPackageInfo> CREATOR;
355    field public static final int FLAG_SYSTEM_APP = 1; // 0x1
356    field public static final int FLAG_WHOLE_ACTIVITY = 2; // 0x2
357    field public final String[] activities;
358    field public final int flags;
359    field public final int maxRevisionCode;
360    field public final int minRevisionCode;
361    field public final String packageName;
362    field public final android.content.pm.Signature[] signatures;
363  }
364
365  public final class CarAppBlockingPolicy implements android.os.Parcelable {
366    ctor public CarAppBlockingPolicy(android.car.content.pm.AppBlockingPackageInfo[], android.car.content.pm.AppBlockingPackageInfo[]);
367    ctor public CarAppBlockingPolicy(android.os.Parcel);
368    method public int describeContents();
369    method public void writeToParcel(android.os.Parcel, int);
370    field public static final android.os.Parcelable.Creator<android.car.content.pm.CarAppBlockingPolicy> CREATOR;
371    field public final android.car.content.pm.AppBlockingPackageInfo[] blacklists;
372    field public final android.car.content.pm.AppBlockingPackageInfo[] whitelists;
373  }
374
375  public abstract class CarAppBlockingPolicyService extends android.app.Service {
376    ctor public CarAppBlockingPolicyService();
377    method protected abstract android.car.content.pm.CarAppBlockingPolicy getAppBlockingPolicy();
378    method public android.os.IBinder onBind(android.content.Intent);
379    field public static final String SERVICE_INTERFACE = "android.car.content.pm.CarAppBlockingPolicyService";
380  }
381
382  public final class CarPackageManager {
383    method @NonNull @RequiresPermission(android.Manifest.permission.QUERY_ALL_PACKAGES) public android.car.CarVersion getTargetCarVersion(@NonNull String) throws android.content.pm.PackageManager.NameNotFoundException;
384    method public boolean isActivityBackedBySafeActivity(android.content.ComponentName);
385    method @Deprecated public void setAppBlockingPolicy(String, android.car.content.pm.CarAppBlockingPolicy, int);
386    field @Deprecated public static final int FLAG_SET_POLICY_ADD = 2; // 0x2
387    field @Deprecated public static final int FLAG_SET_POLICY_REMOVE = 4; // 0x4
388    field @Deprecated public static final int FLAG_SET_POLICY_WAIT_FOR_CHANGE = 1; // 0x1
389  }
390
391}
392
393package android.car.diagnostic {
394
395  public final class CarDiagnosticEvent implements android.os.Parcelable {
396    ctor public CarDiagnosticEvent(android.os.Parcel);
397    method public int describeContents();
398    method @android.car.diagnostic.CarDiagnosticEvent.FuelSystemStatus.Status @Nullable public Integer getFuelSystemStatus();
399    method @android.car.diagnostic.CarDiagnosticEvent.FuelType.Type @Nullable public Integer getFuelType();
400    method @Nullable public android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors getIgnitionMonitors();
401    method @android.car.diagnostic.CarDiagnosticEvent.SecondaryAirStatus.Status @Nullable public Integer getSecondaryAirStatus();
402    method public float getSystemFloatSensor(int, float);
403    method @Nullable public Float getSystemFloatSensor(int);
404    method public int getSystemIntegerSensor(int, int);
405    method @Nullable public Integer getSystemIntegerSensor(int);
406    method public float getVendorFloatSensor(int, float);
407    method @Nullable public Float getVendorFloatSensor(int);
408    method public int getVendorIntegerSensor(int, int);
409    method @Nullable public Integer getVendorIntegerSensor(int);
410    method public boolean isFreezeFrame();
411    method public boolean isLiveFrame();
412    method public void writeToJson(android.util.JsonWriter) throws java.io.IOException;
413    method public void writeToParcel(android.os.Parcel, int);
414    field public static final android.os.Parcelable.Creator<android.car.diagnostic.CarDiagnosticEvent> CREATOR;
415    field public final String dtc;
416    field public final int frameType;
417    field public final long timestamp;
418  }
419
420  public static class CarDiagnosticEvent.Builder {
421    method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder atTimestamp(long);
422    method public android.car.diagnostic.CarDiagnosticEvent build();
423    method public static android.car.diagnostic.CarDiagnosticEvent.Builder newFreezeFrameBuilder();
424    method public static android.car.diagnostic.CarDiagnosticEvent.Builder newLiveFrameBuilder();
425    method public android.car.diagnostic.CarDiagnosticEvent.Builder setDtc(String);
426    method public android.car.diagnostic.CarDiagnosticEvent.Builder setFloatValue(int, float);
427    method public android.car.diagnostic.CarDiagnosticEvent.Builder setIntValue(int, int);
428    method public android.car.diagnostic.CarDiagnosticEvent.Builder setTimeStamp(long);
429    method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withDtc(String);
430    method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withFloatValue(int, float);
431    method @Deprecated public android.car.diagnostic.CarDiagnosticEvent.Builder withIntValue(int, int);
432  }
433
434  public static class CarDiagnosticEvent.CommonIgnitionMonitors {
435    method @Nullable public android.car.diagnostic.CarDiagnosticEvent.CompressionIgnitionMonitors asCompressionIgnitionMonitors();
436    method @Nullable public android.car.diagnostic.CarDiagnosticEvent.SparkIgnitionMonitors asSparkIgnitionMonitors();
437    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor components;
438    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor fuelSystem;
439    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor misfire;
440  }
441
442  public static final class CarDiagnosticEvent.CompressionIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors {
443    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGROrVVT;
444    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NMHCCatalyst;
445    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NOxSCR;
446    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor PMFilter;
447    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor boostPressure;
448    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor exhaustGasSensor;
449  }
450
451  public static final class CarDiagnosticEvent.FuelSystemStatus {
452    field public static final int CLOSED_LOOP = 2; // 0x2
453    field public static final int CLOSED_LOOP_BUT_FEEDBACK_FAULT = 16; // 0x10
454    field public static final int OPEN_ENGINE_LOAD_OR_DECELERATION = 4; // 0x4
455    field public static final int OPEN_INSUFFICIENT_ENGINE_TEMPERATURE = 1; // 0x1
456    field public static final int OPEN_SYSTEM_FAILURE = 8; // 0x8
457  }
458
459  @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 {
460  }
461
462  public static final class CarDiagnosticEvent.FuelType {
463    field public static final int BIFUEL_RUNNING_CNG = 13; // 0xd
464    field public static final int BIFUEL_RUNNING_DIESEL = 23; // 0x17
465    field public static final int BIFUEL_RUNNING_ELECTRIC = 15; // 0xf
466    field public static final int BIFUEL_RUNNING_ELECTRIC_AND_COMBUSTION = 16; // 0x10
467    field public static final int BIFUEL_RUNNING_ETHANOL = 11; // 0xb
468    field public static final int BIFUEL_RUNNING_GASOLINE = 9; // 0x9
469    field public static final int BIFUEL_RUNNING_LPG = 12; // 0xc
470    field public static final int BIFUEL_RUNNING_METHANOL = 10; // 0xa
471    field public static final int BIFUEL_RUNNING_PROPANE = 14; // 0xe
472    field public static final int CNG = 6; // 0x6
473    field public static final int DIESEL = 4; // 0x4
474    field public static final int ELECTRIC = 8; // 0x8
475    field public static final int ETHANOL = 3; // 0x3
476    field public static final int GASOLINE = 1; // 0x1
477    field public static final int HYBRID_DIESEL = 19; // 0x13
478    field public static final int HYBRID_ELECTRIC = 20; // 0x14
479    field public static final int HYBRID_ETHANOL = 18; // 0x12
480    field public static final int HYBRID_GASOLINE = 17; // 0x11
481    field public static final int HYBRID_REGENERATIVE = 22; // 0x16
482    field public static final int HYBRID_RUNNING_ELECTRIC_AND_COMBUSTION = 21; // 0x15
483    field public static final int LPG = 5; // 0x5
484    field public static final int METHANOL = 2; // 0x2
485    field public static final int NOT_AVAILABLE = 0; // 0x0
486    field public static final int PROPANE = 7; // 0x7
487  }
488
489  @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 {
490  }
491
492  public static final class CarDiagnosticEvent.IgnitionMonitor {
493    field public final boolean available;
494    field public final boolean incomplete;
495  }
496
497  public static final class CarDiagnosticEvent.SecondaryAirStatus {
498    field public static final int DOWNSTREAM_OF_CATALYCIC_CONVERTER = 2; // 0x2
499    field public static final int FROM_OUTSIDE_OR_OFF = 4; // 0x4
500    field public static final int PUMP_ON_FOR_DIAGNOSTICS = 8; // 0x8
501    field public static final int UPSTREAM = 1; // 0x1
502  }
503
504  @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 {
505  }
506
507  public static final class CarDiagnosticEvent.SparkIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors {
508    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor ACRefrigerant;
509    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGR;
510    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor catalyst;
511    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor evaporativeSystem;
512    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor heatedCatalyst;
513    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensor;
514    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensorHeater;
515    field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor secondaryAirSystem;
516  }
517
518  public final class CarDiagnosticManager {
519    method public boolean clearFreezeFrames(long...);
520    method @Nullable public android.car.diagnostic.CarDiagnosticEvent getFreezeFrame(long);
521    method public long[] getFreezeFrameTimestamps();
522    method @Nullable public android.car.diagnostic.CarDiagnosticEvent getLatestLiveFrame();
523    method public boolean isClearFreezeFramesSupported();
524    method public boolean isFreezeFrameNotificationSupported();
525    method public boolean isGetFreezeFrameSupported();
526    method public boolean isLiveFrameSupported();
527    method public boolean isSelectiveClearFreezeFramesSupported();
528    method public void onCarDisconnected();
529    method public boolean registerListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener, @android.car.diagnostic.CarDiagnosticManager.FrameType int, int);
530    method public void unregisterListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener);
531    field public static final int FRAME_TYPE_FREEZE = 1; // 0x1
532    field public static final int FRAME_TYPE_LIVE = 0; // 0x0
533  }
534
535  @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 {
536  }
537
538  public static interface CarDiagnosticManager.OnDiagnosticEventListener {
539    method public void onDiagnosticEvent(android.car.diagnostic.CarDiagnosticEvent);
540  }
541
542  public final class FloatSensorIndex {
543    field public static final int ABSOLUTE_EVAPORATION_SYSTEM_VAPOR_PRESSURE = 58; // 0x3a
544    field public static final int ABSOLUTE_LOAD_VALUE = 48; // 0x30
545    field public static final int ABSOLUTE_THROTTLE_POSITION_B = 51; // 0x33
546    field public static final int ABSOLUTE_THROTTLE_POSITION_C = 52; // 0x34
547    field public static final int ACCELERATOR_PEDAL_POSITION_D = 53; // 0x35
548    field public static final int ACCELERATOR_PEDAL_POSITION_E = 54; // 0x36
549    field public static final int ACCELERATOR_PEDAL_POSITION_F = 55; // 0x37
550    field public static final int CALCULATED_ENGINE_LOAD = 0; // 0x0
551    field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR1 = 44; // 0x2c
552    field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR2 = 46; // 0x2e
553    field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR1 = 45; // 0x2d
554    field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR2 = 47; // 0x2f
555    field public static final int COMMANDED_EVAPORATIVE_PURGE = 41; // 0x29
556    field public static final int COMMANDED_EXHAUST_GAS_RECIRCULATION = 39; // 0x27
557    field public static final int COMMANDED_THROTTLE_ACTUATOR = 56; // 0x38
558    field public static final int ENGINE_COOLANT_TEMPERATURE = 1; // 0x1
559    field public static final int ENGINE_FUEL_RATE = 70; // 0x46
560    field public static final int ENGINE_RPM = 8; // 0x8
561    field public static final int ETHANOL_FUEL_PERCENTAGE = 57; // 0x39
562    field public static final int EVAPORATION_SYSTEM_VAPOR_PRESSURE = 43; // 0x2b
563    field public static final int EXHAUST_GAS_RECIRCULATION_ERROR = 40; // 0x28
564    field public static final int FUEL_AIR_COMMANDED_EQUIVALENCE_RATIO = 49; // 0x31
565    field public static final int FUEL_INJECTION_TIMING = 69; // 0x45
566    field public static final int FUEL_PRESSURE = 6; // 0x6
567    field public static final int FUEL_RAIL_GAUGE_PRESSURE = 38; // 0x26
568    field public static final int FUEL_RAIL_PRESSURE = 37; // 0x25
569    field public static final int FUEL_TANK_LEVEL_INPUT = 42; // 0x2a
570    field public static final int HYBRID_BATTERY_PACK_REMAINING_LIFE = 68; // 0x44
571    field public static final int INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 7; // 0x7
572    field public static final int LAST_SYSTEM = 70; // 0x46
573    field public static final int LONG_TERM_FUEL_TRIM_BANK1 = 3; // 0x3
574    field public static final int LONG_TERM_FUEL_TRIM_BANK2 = 5; // 0x5
575    field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 63; // 0x3f
576    field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 64; // 0x40
577    field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 65; // 0x41
578    field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 66; // 0x42
579    field public static final int MAF_AIR_FLOW_RATE = 11; // 0xb
580    field public static final int OXYGEN_SENSOR1_FUEL_AIR_EQUIVALENCE_RATIO = 15; // 0xf
581    field public static final int OXYGEN_SENSOR1_SHORT_TERM_FUEL_TRIM = 14; // 0xe
582    field public static final int OXYGEN_SENSOR1_VOLTAGE = 13; // 0xd
583    field public static final int OXYGEN_SENSOR2_FUEL_AIR_EQUIVALENCE_RATIO = 18; // 0x12
584    field public static final int OXYGEN_SENSOR2_SHORT_TERM_FUEL_TRIM = 17; // 0x11
585    field public static final int OXYGEN_SENSOR2_VOLTAGE = 16; // 0x10
586    field public static final int OXYGEN_SENSOR3_FUEL_AIR_EQUIVALENCE_RATIO = 21; // 0x15
587    field public static final int OXYGEN_SENSOR3_SHORT_TERM_FUEL_TRIM = 20; // 0x14
588    field public static final int OXYGEN_SENSOR3_VOLTAGE = 19; // 0x13
589    field public static final int OXYGEN_SENSOR4_FUEL_AIR_EQUIVALENCE_RATIO = 24; // 0x18
590    field public static final int OXYGEN_SENSOR4_SHORT_TERM_FUEL_TRIM = 23; // 0x17
591    field public static final int OXYGEN_SENSOR4_VOLTAGE = 22; // 0x16
592    field public static final int OXYGEN_SENSOR5_FUEL_AIR_EQUIVALENCE_RATIO = 27; // 0x1b
593    field public static final int OXYGEN_SENSOR5_SHORT_TERM_FUEL_TRIM = 26; // 0x1a
594    field public static final int OXYGEN_SENSOR5_VOLTAGE = 25; // 0x19
595    field public static final int OXYGEN_SENSOR6_FUEL_AIR_EQUIVALENCE_RATIO = 30; // 0x1e
596    field public static final int OXYGEN_SENSOR6_SHORT_TERM_FUEL_TRIM = 29; // 0x1d
597    field public static final int OXYGEN_SENSOR6_VOLTAGE = 28; // 0x1c
598    field public static final int OXYGEN_SENSOR7_FUEL_AIR_EQUIVALENCE_RATIO = 33; // 0x21
599    field public static final int OXYGEN_SENSOR7_SHORT_TERM_FUEL_TRIM = 32; // 0x20
600    field public static final int OXYGEN_SENSOR7_VOLTAGE = 31; // 0x1f
601    field public static final int OXYGEN_SENSOR8_FUEL_AIR_EQUIVALENCE_RATIO = 36; // 0x24
602    field public static final int OXYGEN_SENSOR8_SHORT_TERM_FUEL_TRIM = 35; // 0x23
603    field public static final int OXYGEN_SENSOR8_VOLTAGE = 34; // 0x22
604    field public static final int RELATIVE_ACCELERATOR_PEDAL_POSITION = 67; // 0x43
605    field public static final int RELATIVE_THROTTLE_POSITION = 50; // 0x32
606    field public static final int SHORT_TERM_FUEL_TRIM_BANK1 = 2; // 0x2
607    field public static final int SHORT_TERM_FUEL_TRIM_BANK2 = 4; // 0x4
608    field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 59; // 0x3b
609    field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 60; // 0x3c
610    field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 61; // 0x3d
611    field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 62; // 0x3e
612    field public static final int THROTTLE_POSITION = 12; // 0xc
613    field public static final int TIMING_ADVANCE = 10; // 0xa
614    field public static final int VEHICLE_SPEED = 9; // 0x9
615    field public static final int VENDOR_START = 71; // 0x47
616  }
617
618  public final class IntegerSensorIndex {
619    field public static final int ABSOLUTE_BAROMETRIC_PRESSURE = 11; // 0xb
620    field public static final int AMBIENT_AIR_TEMPERATURE = 13; // 0xd
621    field public static final int COMMANDED_SECONDARY_AIR_STATUS = 5; // 0x5
622    field public static final int CONTROL_MODULE_VOLTAGE = 12; // 0xc
623    field public static final int DISTANCE_TRAVELED_SINCE_CODES_CLEARED = 10; // 0xa
624    field public static final int DISTANCE_TRAVELED_WITH_MALFUNCTION_INDICATOR_LIGHT_ON = 8; // 0x8
625    field public static final int DRIVER_DEMAND_PERCENT_TORQUE = 24; // 0x18
626    field public static final int ENGINE_ACTUAL_PERCENT_TORQUE = 25; // 0x19
627    field public static final int ENGINE_OIL_TEMPERATURE = 23; // 0x17
628    field public static final int ENGINE_PERCENT_TORQUE_DATA_IDLE = 27; // 0x1b
629    field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT1 = 28; // 0x1c
630    field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT2 = 29; // 0x1d
631    field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT3 = 30; // 0x1e
632    field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT4 = 31; // 0x1f
633    field public static final int ENGINE_REFERENCE_PERCENT_TORQUE = 26; // 0x1a
634    field public static final int FUEL_RAIL_ABSOLUTE_PRESSURE = 22; // 0x16
635    field public static final int FUEL_SYSTEM_STATUS = 0; // 0x0
636    field public static final int FUEL_TYPE = 21; // 0x15
637    field public static final int IGNITION_MONITORS_SUPPORTED = 2; // 0x2
638    field public static final int IGNITION_SPECIFIC_MONITORS = 3; // 0x3
639    field public static final int INTAKE_AIR_TEMPERATURE = 4; // 0x4
640    field public static final int LAST_SYSTEM = 31; // 0x1f
641    field public static final int MALFUNCTION_INDICATOR_LIGHT_ON = 1; // 0x1
642    field public static final int MAX_AIR_FLOW_RATE_FROM_MASS_AIR_FLOW_SENSOR = 20; // 0x14
643    field public static final int MAX_FUEL_AIR_EQUIVALENCE_RATIO = 16; // 0x10
644    field public static final int MAX_INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 19; // 0x13
645    field public static final int MAX_OXYGEN_SENSOR_CURRENT = 18; // 0x12
646    field public static final int MAX_OXYGEN_SENSOR_VOLTAGE = 17; // 0x11
647    field public static final int NUM_OXYGEN_SENSORS_PRESENT = 6; // 0x6
648    field public static final int RUNTIME_SINCE_ENGINE_START = 7; // 0x7
649    field public static final int TIME_SINCE_TROUBLE_CODES_CLEARED = 15; // 0xf
650    field public static final int TIME_WITH_MALFUNCTION_LIGHT_ON = 14; // 0xe
651    field public static final int VENDOR_START = 32; // 0x20
652    field public static final int WARMUPS_SINCE_CODES_CLEARED = 9; // 0x9
653  }
654
655}
656
657package android.car.drivingstate {
658
659  public final class CarDrivingStateEvent implements android.os.Parcelable {
660    ctor public CarDrivingStateEvent(int, long);
661    method public int describeContents();
662    method public void writeToParcel(android.os.Parcel, int);
663    field public static final android.os.Parcelable.Creator<android.car.drivingstate.CarDrivingStateEvent> CREATOR;
664    field public static final int DRIVING_STATE_IDLING = 1; // 0x1
665    field public static final int DRIVING_STATE_MOVING = 2; // 0x2
666    field public static final int DRIVING_STATE_PARKED = 0; // 0x0
667    field public static final int DRIVING_STATE_UNKNOWN = -1; // 0xffffffff
668    field public final int eventValue;
669    field public final long timeStamp;
670  }
671
672  public final class CarDrivingStateManager {
673    method @Nullable public android.car.drivingstate.CarDrivingStateEvent getCurrentCarDrivingState();
674    method public void registerListener(@NonNull android.car.drivingstate.CarDrivingStateManager.CarDrivingStateEventListener);
675    method public void unregisterListener();
676  }
677
678  public static interface CarDrivingStateManager.CarDrivingStateEventListener {
679    method public void onDrivingStateChanged(android.car.drivingstate.CarDrivingStateEvent);
680  }
681
682  public final class CarUxRestrictionsConfiguration implements android.os.Parcelable {
683    method public int describeContents();
684    method @Nullable public Integer getPhysicalPort();
685    method @NonNull public android.car.drivingstate.CarUxRestrictions getUxRestrictions(int, float);
686    method @NonNull public android.car.drivingstate.CarUxRestrictions getUxRestrictions(int, @FloatRange(from=0.0f) float, @NonNull String);
687    method public void writeToParcel(@NonNull android.os.Parcel, int);
688    field @NonNull public static final android.os.Parcelable.Creator<android.car.drivingstate.CarUxRestrictionsConfiguration> CREATOR;
689  }
690
691  public final class CarUxRestrictionsManager {
692    method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration> getConfigs();
693    method @Nullable public android.car.drivingstate.CarUxRestrictions getCurrentCarUxRestrictions(int);
694    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public String getRestrictionMode();
695    method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration> getStagedConfigs();
696    method public void onCarDisconnected();
697    method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean saveUxRestrictionsConfigurationForNextBoot(@NonNull java.util.List<android.car.drivingstate.CarUxRestrictionsConfiguration>);
698    method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean saveUxRestrictionsConfigurationForNextBoot(@NonNull android.car.drivingstate.CarUxRestrictionsConfiguration);
699    method public void setListener(int, @NonNull android.car.drivingstate.CarUxRestrictionsManager.OnUxRestrictionsChangedListener);
700    method @RequiresPermission(android.car.Car.PERMISSION_CAR_UX_RESTRICTIONS_CONFIGURATION) public boolean setRestrictionMode(@NonNull String);
701    field public static final String UX_RESTRICTION_MODE_BASELINE = "baseline";
702  }
703
704}
705
706package android.car.evs {
707
708  public final class CarEvsBufferDescriptor implements android.os.Parcelable {
709    ctor public CarEvsBufferDescriptor(int, @NonNull android.hardware.HardwareBuffer);
710    method public int describeContents();
711    method @NonNull public android.hardware.HardwareBuffer getHardwareBuffer();
712    method public int getId();
713    method public void writeToParcel(@NonNull android.os.Parcel, int);
714    field @NonNull public static final android.os.Parcelable.Creator<android.car.evs.CarEvsBufferDescriptor> CREATOR;
715  }
716
717  public final class CarEvsManager {
718    method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public void clearStatusListener();
719    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_EVS_ACTIVITY) public android.os.IBinder generateSessionToken();
720    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public android.car.evs.CarEvsStatus getCurrentStatus();
721    method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public boolean isSupported(int);
722    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public void returnFrameBuffer(@NonNull android.car.evs.CarEvsBufferDescriptor);
723    method @RequiresPermission(android.car.Car.PERMISSION_MONITOR_CAR_EVS_STATUS) public void setStatusListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.evs.CarEvsManager.CarEvsStatusListener);
724    method @RequiresPermission(android.car.Car.PERMISSION_REQUEST_CAR_EVS_ACTIVITY) public int startActivity(int);
725    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);
726    method @RequiresPermission(android.car.Car.PERMISSION_REQUEST_CAR_EVS_ACTIVITY) public void stopActivity();
727    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_EVS_CAMERA) public void stopVideoStream();
728    field public static final int ERROR_BUSY = -2; // 0xfffffffe
729    field public static final int ERROR_NONE = 0; // 0x0
730    field public static final int ERROR_UNAVAILABLE = -1; // 0xffffffff
731    field public static final String EXTRA_SESSION_TOKEN = "android.car.evs.extra.SESSION_TOKEN";
732    field public static final int SERVICE_STATE_ACTIVE = 3; // 0x3
733    field public static final int SERVICE_STATE_INACTIVE = 1; // 0x1
734    field public static final int SERVICE_STATE_REQUESTED = 2; // 0x2
735    field public static final int SERVICE_STATE_UNAVAILABLE = 0; // 0x0
736    field public static final int SERVICE_TYPE_REARVIEW = 0; // 0x0
737    field public static final int SERVICE_TYPE_SURROUNDVIEW = 1; // 0x1
738    field public static final int STREAM_EVENT_FRAME_DROPPED = 3; // 0x3
739    field public static final int STREAM_EVENT_NONE = 0; // 0x0
740    field public static final int STREAM_EVENT_OTHER_ERRORS = 7; // 0x7
741    field public static final int STREAM_EVENT_PARAMETER_CHANGED = 5; // 0x5
742    field public static final int STREAM_EVENT_PRIMARY_OWNER_CHANGED = 6; // 0x6
743    field public static final int STREAM_EVENT_STREAM_STARTED = 1; // 0x1
744    field public static final int STREAM_EVENT_STREAM_STOPPED = 2; // 0x2
745    field public static final int STREAM_EVENT_TIMEOUT = 4; // 0x4
746  }
747
748  public static interface CarEvsManager.CarEvsStatusListener {
749    method public void onStatusChanged(@NonNull android.car.evs.CarEvsStatus);
750  }
751
752  public static interface CarEvsManager.CarEvsStreamCallback {
753    method public default void onNewFrame(@NonNull android.car.evs.CarEvsBufferDescriptor);
754    method public default void onStreamEvent(int);
755  }
756
757  public final class CarEvsStatus implements android.os.Parcelable {
758    ctor public CarEvsStatus(int, int);
759    method public int describeContents();
760    method public int getServiceType();
761    method public int getState();
762    method public void writeToParcel(@NonNull android.os.Parcel, int);
763    field @NonNull public static final android.os.Parcelable.Creator<android.car.evs.CarEvsStatus> CREATOR;
764  }
765
766}
767
768package android.car.hardware {
769
770  public final class CarHvacFanDirection {
771    field public static final int DEFROST = 4; // 0x4
772    field public static final int DEFROST_AND_FLOOR = 6; // 0x6
773    field public static final int FACE = 1; // 0x1
774    field public static final int FACE_AND_FLOOR = 3; // 0x3
775    field public static final int FLOOR = 2; // 0x2
776    field public static final int UNKNOWN = 0; // 0x0
777  }
778
779  public final class CarPropertyConfig<T> implements android.os.Parcelable {
780    method public static <T> android.car.hardware.CarPropertyConfig.Builder<T> newBuilder(Class<T>, int, int, int);
781  }
782
783  public static class CarPropertyConfig.Builder<T> {
784    method public android.car.hardware.CarPropertyConfig.Builder<T> addArea(int);
785    method public android.car.hardware.CarPropertyConfig.Builder<T> addAreaConfig(int, T, T);
786    method public android.car.hardware.CarPropertyConfig.Builder<T> addAreas(int[]);
787    method public android.car.hardware.CarPropertyConfig<T> build();
788    method public android.car.hardware.CarPropertyConfig.Builder<T> setAccess(int);
789    method public android.car.hardware.CarPropertyConfig.Builder<T> setChangeMode(int);
790    method public android.car.hardware.CarPropertyConfig.Builder<T> setConfigArray(java.util.ArrayList<java.lang.Integer>);
791    method public android.car.hardware.CarPropertyConfig.Builder<T> setConfigString(String);
792    method public android.car.hardware.CarPropertyConfig.Builder<T> setMaxSampleRate(float);
793    method public android.car.hardware.CarPropertyConfig.Builder<T> setMinSampleRate(float);
794  }
795
796  @Deprecated public final class CarVendorExtensionManager {
797    method @Deprecated public <E> E getGlobalProperty(Class<E>, int);
798    method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getProperties();
799    method @Deprecated public <E> E getProperty(Class<E>, int, int);
800    method @Deprecated public boolean isPropertyAvailable(int, int);
801    method @Deprecated public void registerCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback);
802    method @Deprecated public <E> void setGlobalProperty(Class<E>, int, E);
803    method @Deprecated public <E> void setProperty(Class<E>, int, int, E);
804    method @Deprecated public void unregisterCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback);
805  }
806
807  @Deprecated public static interface CarVendorExtensionManager.CarVendorExtensionCallback {
808    method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue);
809    method @Deprecated public void onErrorEvent(int, int);
810  }
811
812}
813
814package android.car.hardware.cabin {
815
816  @Deprecated public final class CarCabinManager {
817    method @Deprecated public boolean getBooleanProperty(int, int);
818    method @Deprecated public float getFloatProperty(int, int);
819    method @Deprecated public int getIntProperty(int, int);
820    method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList();
821    method @Deprecated public static boolean isZonedProperty(int);
822    method @Deprecated public void registerCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback);
823    method @Deprecated public void setBooleanProperty(int, int, boolean);
824    method @Deprecated public void setFloatProperty(int, int, float);
825    method @Deprecated public void setIntProperty(int, int, int);
826    method @Deprecated public void unregisterCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback);
827    field @Deprecated public static final int ID_DOOR_LOCK = 371198722; // 0x16200b02
828    field @Deprecated public static final int ID_DOOR_MOVE = 373295873; // 0x16400b01
829    field @Deprecated public static final int ID_DOOR_POS = 373295872; // 0x16400b00
830    field @Deprecated public static final int ID_MIRROR_FOLD = 287312709; // 0x11200b45
831    field @Deprecated public static final int ID_MIRROR_LOCK = 287312708; // 0x11200b44
832    field @Deprecated public static final int ID_MIRROR_Y_MOVE = 339741507; // 0x14400b43
833    field @Deprecated public static final int ID_MIRROR_Y_POS = 339741506; // 0x14400b42
834    field @Deprecated public static final int ID_MIRROR_Z_MOVE = 339741505; // 0x14400b41
835    field @Deprecated public static final int ID_MIRROR_Z_POS = 339741504; // 0x14400b40
836    field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_MOVE = 356518792; // 0x15400b88
837    field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_1_POS = 356518791; // 0x15400b87
838    field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_MOVE = 356518794; // 0x15400b8a
839    field @Deprecated public static final int ID_SEAT_BACKREST_ANGLE_2_POS = 356518793; // 0x15400b89
840    field @Deprecated public static final int ID_SEAT_BELT_BUCKLED = 354421634; // 0x15200b82
841    field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_MOVE = 356518788; // 0x15400b84
842    field @Deprecated public static final int ID_SEAT_BELT_HEIGHT_POS = 356518787; // 0x15400b83
843    field @Deprecated public static final int ID_SEAT_DEPTH_MOVE = 356518798; // 0x15400b8e
844    field @Deprecated public static final int ID_SEAT_DEPTH_POS = 356518797; // 0x15400b8d
845    field @Deprecated public static final int ID_SEAT_FORE_AFT_MOVE = 356518790; // 0x15400b86
846    field @Deprecated public static final int ID_SEAT_FORE_AFT_POS = 356518789; // 0x15400b85
847    field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_MOVE = 356518808; // 0x15400b98
848    field @Deprecated public static final int ID_SEAT_HEADREST_ANGLE_POS = 356518807; // 0x15400b97
849    field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_MOVE = 356518810; // 0x15400b9a
850    field @Deprecated public static final int ID_SEAT_HEADREST_FORE_AFT_POS = 356518809; // 0x15400b99
851    field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_MOVE = 356518806; // 0x15400b96
852    field @Deprecated public static final int ID_SEAT_HEADREST_HEIGHT_POS = 356518805; // 0x15400b95
853    field @Deprecated public static final int ID_SEAT_HEIGHT_MOVE = 356518796; // 0x15400b8c
854    field @Deprecated public static final int ID_SEAT_HEIGHT_POS = 356518795; // 0x15400b8b
855    field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_MOVE = 356518802; // 0x15400b92
856    field @Deprecated public static final int ID_SEAT_LUMBAR_FORE_AFT_POS = 356518801; // 0x15400b91
857    field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 356518804; // 0x15400b94
858    field @Deprecated public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_POS = 356518803; // 0x15400b93
859    field @Deprecated public static final int ID_SEAT_MEMORY_SELECT = 356518784; // 0x15400b80
860    field @Deprecated public static final int ID_SEAT_MEMORY_SET = 356518785; // 0x15400b81
861    field @Deprecated public static final int ID_SEAT_TILT_MOVE = 356518800; // 0x15400b90
862    field @Deprecated public static final int ID_SEAT_TILT_POS = 356518799; // 0x15400b8f
863    field @Deprecated public static final int ID_WINDOW_LOCK = 322964420; // 0x13400bc4
864    field @Deprecated public static final int ID_WINDOW_MOVE = 322964417; // 0x13400bc1
865    field @Deprecated public static final int ID_WINDOW_POS = 322964416; // 0x13400bc0
866  }
867
868  @Deprecated public static interface CarCabinManager.CarCabinEventCallback {
869    method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue);
870    method @Deprecated public void onErrorEvent(int, int);
871  }
872
873}
874
875package android.car.hardware.hvac {
876
877  @Deprecated public final class CarHvacManager {
878    method @Deprecated public boolean getBooleanProperty(int, int);
879    method @Deprecated public float getFloatProperty(int, int);
880    method @Deprecated public int getIntProperty(int, int);
881    method @Deprecated public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList();
882    method @Deprecated public boolean isPropertyAvailable(int, int);
883    method @Deprecated public void registerCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback);
884    method @Deprecated public void setBooleanProperty(int, int, boolean);
885    method @Deprecated public void setFloatProperty(int, int, float);
886    method @Deprecated public void setIntProperty(int, int, int);
887    method @Deprecated public void unregisterCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback);
888    field @Deprecated public static final int FAN_DIRECTION_DEFROST = 4; // 0x4
889    field @Deprecated public static final int FAN_DIRECTION_FACE = 1; // 0x1
890    field @Deprecated public static final int FAN_DIRECTION_FLOOR = 2; // 0x2
891    field @Deprecated public static final int ID_MIRROR_DEFROSTER_ON = 339739916; // 0x1440050c
892    field @Deprecated public static final int ID_OUTSIDE_AIR_TEMP = 291505923; // 0x11600703
893    field @Deprecated public static final int ID_STEERING_WHEEL_HEAT = 289408269; // 0x1140050d
894    field @Deprecated public static final int ID_TEMPERATURE_DISPLAY_UNITS = 289408270; // 0x1140050e
895    field @Deprecated public static final int ID_WINDOW_DEFROSTER_ON = 320865540; // 0x13200504
896    field @Deprecated public static final int ID_ZONED_AC_ON = 354419973; // 0x15200505
897    field @Deprecated public static final int ID_ZONED_AIR_RECIRCULATION_ON = 354419976; // 0x15200508
898    field @Deprecated public static final int ID_ZONED_AUTOMATIC_MODE_ON = 354419978; // 0x1520050a
899    field @Deprecated public static final int ID_ZONED_DUAL_ZONE_ON = 354419977; // 0x15200509
900    field @Deprecated public static final int ID_ZONED_FAN_DIRECTION = 356517121; // 0x15400501
901    field @Deprecated public static final int ID_ZONED_FAN_DIRECTION_AVAILABLE = 356582673; // 0x15410511
902    field @Deprecated public static final int ID_ZONED_FAN_SPEED_RPM = 356517135; // 0x1540050f
903    field @Deprecated public static final int ID_ZONED_FAN_SPEED_SETPOINT = 356517120; // 0x15400500
904    field @Deprecated public static final int ID_ZONED_HVAC_AUTO_RECIRC_ON = 354419986; // 0x15200512
905    field @Deprecated public static final int ID_ZONED_HVAC_POWER_ON = 354419984; // 0x15200510
906    field @Deprecated public static final int ID_ZONED_MAX_AC_ON = 354419974; // 0x15200506
907    field @Deprecated public static final int ID_ZONED_MAX_DEFROST_ON = 354419975; // 0x15200507
908    field @Deprecated public static final int ID_ZONED_SEAT_TEMP = 356517131; // 0x1540050b
909    field @Deprecated public static final int ID_ZONED_TEMP_ACTUAL = 358614274; // 0x15600502
910    field @Deprecated public static final int ID_ZONED_TEMP_SETPOINT = 358614275; // 0x15600503
911  }
912
913  @Deprecated public static interface CarHvacManager.CarHvacEventCallback {
914    method @Deprecated public void onChangeEvent(android.car.hardware.CarPropertyValue);
915    method @Deprecated public void onErrorEvent(int, int);
916  }
917
918}
919
920package android.car.hardware.power {
921
922  public class CarPowerManager {
923    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void applyPowerPolicy(@NonNull String);
924    method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void clearListener();
925    method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public int getPowerState();
926    method @RequiresPermission(android.car.Car.PERMISSION_CAR_POWER) public void setListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListener);
927    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_SHUTDOWN_PROCESS) public void setListenerWithCompletion(@NonNull java.util.concurrent.Executor, @NonNull android.car.hardware.power.CarPowerManager.CarPowerStateListenerWithCompletion);
928    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_POWER_POLICY) public void setPowerPolicyGroup(@NonNull String);
929    field public static final int STATE_HIBERNATION_ENTER = 9; // 0x9
930    field public static final int STATE_HIBERNATION_EXIT = 10; // 0xa
931    field public static final int STATE_INVALID = 0; // 0x0
932    field public static final int STATE_ON = 6; // 0x6
933    field public static final int STATE_POST_HIBERNATION_ENTER = 14; // 0xe
934    field public static final int STATE_POST_SHUTDOWN_ENTER = 13; // 0xd
935    field public static final int STATE_POST_SUSPEND_ENTER = 12; // 0xc
936    field public static final int STATE_PRE_SHUTDOWN_PREPARE = 11; // 0xb
937    field public static final int STATE_SHUTDOWN_CANCELLED = 8; // 0x8
938    field public static final int STATE_SHUTDOWN_ENTER = 5; // 0x5
939    field public static final int STATE_SHUTDOWN_PREPARE = 7; // 0x7
940    field public static final int STATE_SUSPEND_ENTER = 2; // 0x2
941    field public static final int STATE_SUSPEND_EXIT = 3; // 0x3
942    field public static final int STATE_WAIT_FOR_VHAL = 1; // 0x1
943  }
944
945  public static interface CarPowerManager.CarPowerStateListener {
946    method public void onStateChanged(int);
947  }
948
949  public static interface CarPowerManager.CarPowerStateListenerWithCompletion {
950    method public void onStateChanged(int, @Nullable android.car.hardware.power.CarPowerManager.CompletablePowerStateChangeFuture);
951  }
952
953  public static interface CarPowerManager.CompletablePowerStateChangeFuture {
954    method public void complete();
955    method public long getExpirationTime();
956  }
957
958}
959
960package android.car.hardware.property {
961
962  public final class VehicleVendorPermission {
963    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_1";
964    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_10";
965    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_2";
966    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_3";
967    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_4";
968    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_5";
969    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_6";
970    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_7";
971    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_8";
972    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.GET_CAR_VENDOR_CATEGORY_9";
973    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_DOOR";
974    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.GET_CAR_VENDOR_CATEGORY_ENGINE";
975    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.GET_CAR_VENDOR_CATEGORY_HVAC";
976    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.GET_CAR_VENDOR_CATEGORY_INFO";
977    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_LIGHT";
978    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.GET_CAR_VENDOR_CATEGORY_MIRROR";
979    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.GET_CAR_VENDOR_CATEGORY_SEAT";
980    field public static final String PERMISSION_GET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.GET_CAR_VENDOR_CATEGORY_WINDOW";
981    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_1 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_1";
982    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_10 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_10";
983    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_2 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_2";
984    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_3 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_3";
985    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_4 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_4";
986    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_5 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_5";
987    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_6 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_6";
988    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_7 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_7";
989    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_8 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_8";
990    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_9 = "android.car.permission.SET_CAR_VENDOR_CATEGORY_9";
991    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_DOOR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_DOOR";
992    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_ENGINE = "android.car.permission.SET_CAR_VENDOR_CATEGORY_ENGINE";
993    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_HVAC = "android.car.permission.SET_CAR_VENDOR_CATEGORY_HVAC";
994    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_INFO = "android.car.permission.SET_CAR_VENDOR_CATEGORY_INFO";
995    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_LIGHT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_LIGHT";
996    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_MIRROR = "android.car.permission.SET_CAR_VENDOR_CATEGORY_MIRROR";
997    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_SEAT = "android.car.permission.SET_CAR_VENDOR_CATEGORY_SEAT";
998    field public static final String PERMISSION_SET_CAR_VENDOR_CATEGORY_WINDOW = "android.car.permission.SET_CAR_VENDOR_CATEGORY_WINDOW";
999  }
1000
1001}
1002
1003package android.car.input {
1004
1005  public final class CarInputManager {
1006    method @RequiresPermission(android.Manifest.permission.INJECT_EVENTS) public void injectKeyEvent(@NonNull android.view.KeyEvent, int);
1007    method public void releaseInputEventCapture(int);
1008    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);
1009    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);
1010    field public static final int CAPTURE_REQ_FLAGS_ALLOW_DELAYED_GRANT = 1; // 0x1
1011    field public static final int CAPTURE_REQ_FLAGS_TAKE_ALL_EVENTS_FOR_DISPLAY = 2; // 0x2
1012    field public static final int INPUT_CAPTURE_RESPONSE_DELAYED = 2; // 0x2
1013    field public static final int INPUT_CAPTURE_RESPONSE_FAILED = 1; // 0x1
1014    field public static final int INPUT_CAPTURE_RESPONSE_SUCCEEDED = 0; // 0x0
1015    field public static final int INPUT_TYPE_ALL_INPUTS = 1; // 0x1
1016    field public static final int INPUT_TYPE_CUSTOM_INPUT_EVENT = 200; // 0xc8
1017    field public static final int INPUT_TYPE_DPAD_KEYS = 100; // 0x64
1018    field public static final int INPUT_TYPE_NAVIGATE_KEYS = 101; // 0x65
1019    field public static final int INPUT_TYPE_ROTARY_NAVIGATION = 10; // 0xa
1020    field public static final int INPUT_TYPE_ROTARY_VOLUME = 11; // 0xb
1021    field public static final int INPUT_TYPE_SYSTEM_NAVIGATE_KEYS = 102; // 0x66
1022  }
1023
1024  public static interface CarInputManager.CarInputCaptureCallback {
1025    method public default void onCaptureStateChanged(int, @NonNull int[]);
1026    method public default void onCustomInputEvents(int, @NonNull java.util.List<android.car.input.CustomInputEvent>);
1027    method public default void onKeyEvents(int, @NonNull java.util.List<android.view.KeyEvent>);
1028    method public default void onRotaryEvents(int, @NonNull java.util.List<android.car.input.RotaryEvent>);
1029  }
1030
1031  public final class CustomInputEvent implements android.os.Parcelable {
1032    ctor public CustomInputEvent(int, int, int);
1033    method public int describeContents();
1034    method public int getInputCode();
1035    method public int getRepeatCounter();
1036    method public int getTargetDisplayType();
1037    method @NonNull public static String inputCodeToString(int);
1038    method public void writeToParcel(@NonNull android.os.Parcel, int);
1039    field @NonNull public static final android.os.Parcelable.Creator<android.car.input.CustomInputEvent> CREATOR;
1040    field public static final int INPUT_CODE_F1 = 1001; // 0x3e9
1041    field public static final int INPUT_CODE_F10 = 1010; // 0x3f2
1042    field public static final int INPUT_CODE_F2 = 1002; // 0x3ea
1043    field public static final int INPUT_CODE_F3 = 1003; // 0x3eb
1044    field public static final int INPUT_CODE_F4 = 1004; // 0x3ec
1045    field public static final int INPUT_CODE_F5 = 1005; // 0x3ed
1046    field public static final int INPUT_CODE_F6 = 1006; // 0x3ee
1047    field public static final int INPUT_CODE_F7 = 1007; // 0x3ef
1048    field public static final int INPUT_CODE_F8 = 1008; // 0x3f0
1049    field public static final int INPUT_CODE_F9 = 1009; // 0x3f1
1050  }
1051
1052  public final class RotaryEvent implements android.os.Parcelable {
1053    ctor public RotaryEvent(int, boolean, @NonNull long[]);
1054    method public int describeContents();
1055    method public int getInputType();
1056    method public int getNumberOfClicks();
1057    method public long getUptimeMillisForClick(int);
1058    method @NonNull public long[] getUptimeMillisForClicks();
1059    method public boolean isClockwise();
1060    method public void writeToParcel(@NonNull android.os.Parcel, int);
1061    field @NonNull public static final android.os.Parcelable.Creator<android.car.input.RotaryEvent> CREATOR;
1062  }
1063
1064}
1065
1066package android.car.media {
1067
1068  public final class CarAudioManager {
1069    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.car.media.CarAudioPatchHandle createAudioPatch(String, int, int);
1070    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.media.AudioAttributes> getAudioAttributesForVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo);
1071    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<java.lang.Integer> getAudioZoneIds();
1072    method @Deprecated @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public String[] getExternalSources();
1073    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int);
1074    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMaxVolume(int, int);
1075    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int);
1076    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupMinVolume(int, int);
1077    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int);
1078    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getGroupVolume(int, int);
1079    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public java.util.List<android.media.AudioDeviceInfo> getInputDevicesForZoneId(int);
1080    method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public android.media.AudioDeviceInfo getOutputDeviceForUsage(int, int);
1081    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int);
1082    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int[] getUsagesForVolumeGroupId(int, int);
1083    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount();
1084    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupCount(int);
1085    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int);
1086    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public int getVolumeGroupIdForUsage(int, int);
1087    method @Nullable @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public android.car.media.CarVolumeGroupInfo getVolumeGroupInfo(int, int);
1088    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public java.util.List<android.car.media.CarVolumeGroupInfo> getVolumeGroupInfosForZone(int);
1089    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isPlaybackOnVolumeGroupActive(int, int);
1090    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public boolean isVolumeGroupMuted(int, int);
1091    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_SETTINGS) public void releaseAudioPatch(android.car.media.CarAudioPatchHandle);
1092    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setBalanceTowardRight(float);
1093    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setFadeTowardFront(float);
1094    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int);
1095    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setGroupVolume(int, int, int, int);
1096    method @RequiresPermission(android.car.Car.PERMISSION_CAR_CONTROL_AUDIO_VOLUME) public void setVolumeGroupMute(int, int, boolean, int);
1097    field public static final String AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS = "android.car.media.AUDIOFOCUS_EXTRA_RECEIVE_DUCKING_EVENTS";
1098    field public static final int INVALID_AUDIO_ZONE = -1; // 0xffffffff
1099    field public static final int PRIMARY_AUDIO_ZONE = 0; // 0x0
1100  }
1101
1102  public final class CarAudioPatchHandle implements android.os.Parcelable {
1103    method public int describeContents();
1104    method public void writeToParcel(android.os.Parcel, int);
1105    field public static final android.os.Parcelable.Creator<android.car.media.CarAudioPatchHandle> CREATOR;
1106  }
1107
1108  public final class CarMediaManager {
1109    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void addMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int);
1110    method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public java.util.List<android.content.ComponentName> getLastMediaSources(int);
1111    method @NonNull @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public android.content.ComponentName getMediaSource(int);
1112    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void removeMediaSourceListener(@NonNull android.car.media.CarMediaManager.MediaSourceChangedListener, int);
1113    method @RequiresPermission(android.Manifest.permission.MEDIA_CONTENT_CONTROL) public void setMediaSource(@NonNull android.content.ComponentName, int);
1114    field public static final int MEDIA_SOURCE_MODE_BROWSE = 1; // 0x1
1115    field public static final int MEDIA_SOURCE_MODE_PLAYBACK = 0; // 0x0
1116  }
1117
1118  public static interface CarMediaManager.MediaSourceChangedListener {
1119    method public void onMediaSourceChanged(@NonNull android.content.ComponentName);
1120  }
1121
1122  public final class CarVolumeGroupInfo implements android.os.Parcelable {
1123    method public int describeContents();
1124    method public int getId();
1125    method public int getMaxVolumeGainIndex();
1126    method public int getMinVolumeGainIndex();
1127    method @NonNull public String getName();
1128    method public int getVolumeGainIndex();
1129    method public int getZoneId();
1130    method public boolean isAttenuated();
1131    method public boolean isBlocked();
1132    method public boolean isMuted();
1133    method public boolean isSameVolumeGroup(@Nullable android.car.media.CarVolumeGroupInfo);
1134    method public void writeToParcel(@NonNull android.os.Parcel, int);
1135    field @NonNull public static final android.os.Parcelable.Creator<android.car.media.CarVolumeGroupInfo> CREATOR;
1136  }
1137
1138  public static final class CarVolumeGroupInfo.Builder {
1139    ctor public CarVolumeGroupInfo.Builder(@NonNull String, int, int);
1140    ctor public CarVolumeGroupInfo.Builder(@NonNull android.car.media.CarVolumeGroupInfo);
1141    method @NonNull public android.car.media.CarVolumeGroupInfo build();
1142    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setAttenuated(boolean);
1143    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setBlocked(boolean);
1144    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMaxVolumeGainIndex(int);
1145    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMinVolumeGainIndex(int);
1146    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setMuted(boolean);
1147    method @NonNull public android.car.media.CarVolumeGroupInfo.Builder setVolumeGainIndex(int);
1148  }
1149
1150}
1151
1152package android.car.navigation {
1153
1154  public final class CarNavigationInstrumentCluster implements android.os.Parcelable {
1155    ctor public CarNavigationInstrumentCluster(android.car.navigation.CarNavigationInstrumentCluster);
1156    method public static android.car.navigation.CarNavigationInstrumentCluster createCluster(int);
1157    method public static android.car.navigation.CarNavigationInstrumentCluster createCustomImageCluster(int, int, int, int);
1158    method public int describeContents();
1159    method public int getImageColorDepthBits();
1160    method public int getImageHeight();
1161    method public int getImageWidth();
1162    method public int getMinIntervalMillis();
1163    method public int getType();
1164    method public boolean supportsCustomImages();
1165    method public void writeToParcel(android.os.Parcel, int);
1166    field public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1; // 0x1
1167    field public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2; // 0x2
1168    field public static final android.os.Parcelable.Creator<android.car.navigation.CarNavigationInstrumentCluster> CREATOR;
1169  }
1170
1171  public final class CarNavigationStatusManager {
1172    method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public android.car.navigation.CarNavigationInstrumentCluster getInstrumentClusterInfo();
1173    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendEvent(int, android.os.Bundle);
1174    method @RequiresPermission(android.car.Car.PERMISSION_CAR_NAVIGATION_MANAGER) public void sendNavigationStateChange(android.os.Bundle);
1175  }
1176
1177}
1178
1179package android.car.oem {
1180
1181  public final class AudioFocusEntry implements android.os.Parcelable {
1182    method public int describeContents();
1183    method public int getAudioContextId();
1184    method @NonNull public android.media.AudioFocusInfo getAudioFocusInfo();
1185    method public int getAudioFocusResult();
1186    method public int getAudioVolumeGroupId();
1187    method public void writeToParcel(@NonNull android.os.Parcel, int);
1188    field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.AudioFocusEntry> CREATOR;
1189  }
1190
1191  public static final class AudioFocusEntry.Builder {
1192    ctor public AudioFocusEntry.Builder(@NonNull android.car.oem.AudioFocusEntry);
1193    ctor public AudioFocusEntry.Builder(@NonNull android.media.AudioFocusInfo, int, int, int);
1194    method @NonNull public android.car.oem.AudioFocusEntry build();
1195    method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioContextId(int);
1196    method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusInfo(@NonNull android.media.AudioFocusInfo);
1197    method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioFocusResult(int);
1198    method @NonNull public android.car.oem.AudioFocusEntry.Builder setAudioVolumeGroupId(int);
1199  }
1200
1201  public interface OemCarAudioDuckingService extends android.car.oem.OemCarServiceComponent {
1202    method @NonNull public java.util.List<android.media.AudioAttributes> evaluateAttributesToDuck(@NonNull android.car.oem.OemCarAudioVolumeRequest);
1203  }
1204
1205  public final class OemCarAudioFocusEvaluationRequest implements android.os.Parcelable {
1206    method public int describeContents();
1207    method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusRequest();
1208    method public int getAudioZoneId();
1209    method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusHolders();
1210    method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getFocusLosers();
1211    method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getMutedVolumeGroups();
1212    method public void writeToParcel(@NonNull android.os.Parcel, int);
1213    field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusEvaluationRequest> CREATOR;
1214  }
1215
1216  public static final class OemCarAudioFocusEvaluationRequest.Builder {
1217    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);
1218    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusHolders(@NonNull android.car.oem.AudioFocusEntry);
1219    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addFocusLosers(@NonNull android.car.oem.AudioFocusEntry);
1220    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder addMutedVolumeGroups(@NonNull android.car.media.CarVolumeGroupInfo);
1221    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest build();
1222    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioFocusRequest(@NonNull android.car.oem.AudioFocusEntry);
1223    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setAudioZoneId(int);
1224    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusHolders(@NonNull java.util.List<android.car.oem.AudioFocusEntry>);
1225    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setFocusLosers(@NonNull java.util.List<android.car.oem.AudioFocusEntry>);
1226    method @NonNull public android.car.oem.OemCarAudioFocusEvaluationRequest.Builder setMutedVolumeGroups(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>);
1227  }
1228
1229  public final class OemCarAudioFocusResult implements android.os.Parcelable {
1230    method public int describeContents();
1231    method @Nullable public android.car.oem.AudioFocusEntry getAudioFocusEntry();
1232    method public int getAudioFocusResult();
1233    method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyBlockedAudioFocusEntries();
1234    method @NonNull public java.util.List<android.car.oem.AudioFocusEntry> getNewlyLostAudioFocusEntries();
1235    method public void writeToParcel(@NonNull android.os.Parcel, int);
1236    field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioFocusResult> CREATOR;
1237    field @NonNull public static final android.car.oem.OemCarAudioFocusResult EMPTY_OEM_CAR_AUDIO_FOCUS_RESULTS;
1238  }
1239
1240  public static final class OemCarAudioFocusResult.Builder {
1241    ctor public OemCarAudioFocusResult.Builder(@NonNull java.util.List<android.car.oem.AudioFocusEntry>, @NonNull java.util.List<android.car.oem.AudioFocusEntry>, int);
1242    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyBlockedAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry);
1243    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder addNewlyLostAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry);
1244    method @NonNull public android.car.oem.OemCarAudioFocusResult build();
1245    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusEntry(@NonNull android.car.oem.AudioFocusEntry);
1246    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setAudioFocusResult(int);
1247    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyBlockedAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>);
1248    method @NonNull public android.car.oem.OemCarAudioFocusResult.Builder setNewlyLostAudioFocusEntries(@NonNull java.util.List<android.car.oem.AudioFocusEntry>);
1249  }
1250
1251  public interface OemCarAudioFocusService extends android.car.oem.OemCarServiceComponent {
1252    method @NonNull public android.car.oem.OemCarAudioFocusResult evaluateAudioFocusRequest(@NonNull android.car.oem.OemCarAudioFocusEvaluationRequest);
1253    method public void notifyAudioFocusChange(@NonNull java.util.List<android.media.AudioFocusInfo>, @NonNull java.util.List<android.media.AudioFocusInfo>, int);
1254  }
1255
1256  public final class OemCarAudioVolumeRequest implements android.os.Parcelable {
1257    method public int describeContents();
1258    method @NonNull public java.util.List<android.media.AudioAttributes> getActivePlaybackAttributes();
1259    method public int getAudioZoneId();
1260    method public int getCallState();
1261    method @NonNull public java.util.List<android.car.media.CarVolumeGroupInfo> getCarVolumeGroupInfos();
1262    method @NonNull public java.util.List<android.media.AudioAttributes> getDuckedAudioAttributes();
1263    method public void writeToParcel(@NonNull android.os.Parcel, int);
1264    field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarAudioVolumeRequest> CREATOR;
1265  }
1266
1267  public static final class OemCarAudioVolumeRequest.Builder {
1268    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addActivePlaybackAttributes(@NonNull android.media.AudioAttributes);
1269    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addCarVolumeGroupInfos(@NonNull android.car.media.CarVolumeGroupInfo);
1270    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder addDuckedAudioAttributes(@NonNull android.media.AudioAttributes);
1271    method @NonNull public android.car.oem.OemCarAudioVolumeRequest build();
1272    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setActivePlaybackAttributes(@NonNull java.util.List<android.media.AudioAttributes>);
1273    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCallState(int);
1274    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setCarVolumeGroupInfos(@NonNull java.util.List<android.car.media.CarVolumeGroupInfo>);
1275    method @NonNull public android.car.oem.OemCarAudioVolumeRequest.Builder setDuckedAudioAttributes(@NonNull java.util.List<android.media.AudioAttributes>);
1276  }
1277
1278  public interface OemCarAudioVolumeService extends android.car.oem.OemCarServiceComponent {
1279    method @NonNull public android.car.oem.OemCarVolumeChangeInfo getSuggestedGroupForVolumeChange(@NonNull android.car.oem.OemCarAudioVolumeRequest, int);
1280  }
1281
1282  public abstract class OemCarService extends android.app.Service {
1283    ctor public OemCarService();
1284    method @CallSuper public void dump(@Nullable java.io.FileDescriptor, @Nullable java.io.PrintWriter, @Nullable String[]);
1285    method @Nullable public android.car.oem.OemCarAudioDuckingService getOemAudioDuckingService();
1286    method @Nullable public android.car.oem.OemCarAudioFocusService getOemAudioFocusService();
1287    method @Nullable public android.car.oem.OemCarAudioVolumeService getOemAudioVolumeService();
1288    method @NonNull public abstract android.car.CarVersion getSupportedCarVersion();
1289    method @NonNull public final android.os.IBinder onBind(@Nullable android.content.Intent);
1290    method public abstract void onCarServiceReady();
1291    method public final int onStartCommand(@Nullable android.content.Intent, int, int);
1292  }
1293
1294  public interface OemCarServiceComponent {
1295    method public void dump(@Nullable java.io.PrintWriter, @Nullable String[]);
1296    method public void init();
1297    method public void onCarServiceReady();
1298    method public void release();
1299  }
1300
1301  public final class OemCarVolumeChangeInfo implements android.os.Parcelable {
1302    method public int describeContents();
1303    method @Nullable public android.car.media.CarVolumeGroupInfo getChangedVolumeGroup();
1304    method public boolean isVolumeChanged();
1305    method public void writeToParcel(@NonNull android.os.Parcel, int);
1306    field @NonNull public static final android.os.Parcelable.Creator<android.car.oem.OemCarVolumeChangeInfo> CREATOR;
1307    field @NonNull public static final android.car.oem.OemCarVolumeChangeInfo EMPTY_OEM_VOLUME_CHANGE;
1308  }
1309
1310  public static final class OemCarVolumeChangeInfo.Builder {
1311    ctor public OemCarVolumeChangeInfo.Builder(boolean);
1312    method @NonNull public android.car.oem.OemCarVolumeChangeInfo build();
1313    method @NonNull public android.car.oem.OemCarVolumeChangeInfo.Builder setChangedVolumeGroup(@NonNull android.car.media.CarVolumeGroupInfo);
1314  }
1315
1316}
1317
1318package android.car.os {
1319
1320  public final class CarPerformanceManager {
1321    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public android.car.os.ThreadPolicyWithPriority getThreadPriority();
1322    method @RequiresPermission(android.car.Car.PERMISSION_MANAGE_THREAD_PRIORITY) public void setThreadPriority(@NonNull android.car.os.ThreadPolicyWithPriority) throws android.car.os.CarPerformanceManager.SetSchedulerFailedException;
1323  }
1324
1325  public static final class CarPerformanceManager.SetSchedulerFailedException extends java.lang.Exception {
1326  }
1327
1328  public final class ThreadPolicyWithPriority implements android.os.Parcelable {
1329    ctor public ThreadPolicyWithPriority(int, @IntRange(from=0, to=99) int);
1330    method public int describeContents();
1331    method public int getPolicy();
1332    method @IntRange(from=0, to=99) public int getPriority();
1333    method public void writeToParcel(@NonNull android.os.Parcel, int);
1334    field @NonNull public static final android.os.Parcelable.Creator<android.car.os.ThreadPolicyWithPriority> CREATOR;
1335    field public static final int PRIORITY_MAX = 99; // 0x63
1336    field public static final int PRIORITY_MIN = 1; // 0x1
1337    field public static final int SCHED_DEFAULT = 0; // 0x0
1338    field public static final int SCHED_FIFO = 1; // 0x1
1339    field public static final int SCHED_RR = 2; // 0x2
1340  }
1341
1342}
1343
1344package android.car.projection {
1345
1346  public class ProjectionOptions {
1347    ctor public ProjectionOptions(android.os.Bundle);
1348    method @Nullable public android.app.ActivityOptions getActivityOptions();
1349    method @Nullable public android.content.ComponentName getConsentActivity();
1350    method public int getProjectionAccessPointMode();
1351    method public int getUiMode();
1352    method @NonNull public android.os.Bundle toBundle();
1353    field public static final int AP_MODE_LOHS_DYNAMIC_CREDENTIALS = 2; // 0x2
1354    field public static final int AP_MODE_LOHS_STATIC_CREDENTIALS = 3; // 0x3
1355    field public static final int AP_MODE_NOT_SPECIFIED = 0; // 0x0
1356    field public static final int AP_MODE_TETHERED = 1; // 0x1
1357    field public static final int UI_MODE_BLENDED = 1; // 0x1
1358    field public static final int UI_MODE_FULL_SCREEN = 0; // 0x0
1359  }
1360
1361  public final class ProjectionStatus implements android.os.Parcelable {
1362    method @NonNull public static android.car.projection.ProjectionStatus.Builder builder(String, int);
1363    method public int describeContents();
1364    method @NonNull public java.util.List<android.car.projection.ProjectionStatus.MobileDevice> getConnectedMobileDevices();
1365    method @NonNull public android.os.Bundle getExtras();
1366    method @NonNull public String getPackageName();
1367    method public int getState();
1368    method public int getTransport();
1369    method public boolean isActive();
1370    method public void writeToParcel(android.os.Parcel, int);
1371    field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus> CREATOR;
1372    field public static final int PROJECTION_STATE_ACTIVE_BACKGROUND = 3; // 0x3
1373    field public static final int PROJECTION_STATE_ACTIVE_FOREGROUND = 2; // 0x2
1374    field public static final int PROJECTION_STATE_INACTIVE = 0; // 0x0
1375    field public static final int PROJECTION_STATE_READY_TO_PROJECT = 1; // 0x1
1376    field public static final int PROJECTION_TRANSPORT_NONE = 0; // 0x0
1377    field public static final int PROJECTION_TRANSPORT_USB = 1; // 0x1
1378    field public static final int PROJECTION_TRANSPORT_WIFI = 2; // 0x2
1379  }
1380
1381  public static final class ProjectionStatus.Builder {
1382    method @NonNull public android.car.projection.ProjectionStatus.Builder addMobileDevice(android.car.projection.ProjectionStatus.MobileDevice);
1383    method public android.car.projection.ProjectionStatus build();
1384    method @NonNull public android.car.projection.ProjectionStatus.Builder setExtras(android.os.Bundle);
1385    method @NonNull public android.car.projection.ProjectionStatus.Builder setProjectionTransport(int);
1386  }
1387
1388  public static final class ProjectionStatus.MobileDevice implements android.os.Parcelable {
1389    method @NonNull public static android.car.projection.ProjectionStatus.MobileDevice.Builder builder(int, String);
1390    method public int describeContents();
1391    method @NonNull public java.util.List<java.lang.Integer> getAvailableTransports();
1392    method @NonNull public android.os.Bundle getExtras();
1393    method public int getId();
1394    method @NonNull public String getName();
1395    method public boolean isProjecting();
1396    method public void writeToParcel(android.os.Parcel, int);
1397    field public static final android.os.Parcelable.Creator<android.car.projection.ProjectionStatus.MobileDevice> CREATOR;
1398  }
1399
1400  public static final class ProjectionStatus.MobileDevice.Builder {
1401    method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder addTransport(int);
1402    method @NonNull public android.car.projection.ProjectionStatus.MobileDevice build();
1403    method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setExtras(android.os.Bundle);
1404    method @NonNull public android.car.projection.ProjectionStatus.MobileDevice.Builder setProjecting(boolean);
1405  }
1406
1407}
1408
1409package android.car.settings {
1410
1411  public class CarSettings {
1412  }
1413
1414  public static final class CarSettings.Secure {
1415    field public static final String KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL = "android.car.KEY_AUDIO_FOCUS_NAVIGATION_REJECTED_DURING_CALL";
1416    field public static final String KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES = "android.car.KEY_AUDIO_PERSIST_VOLUME_GROUP_MUTE_STATES";
1417    field public static final String KEY_ENABLE_INITIAL_NOTICE_SCREEN_TO_USER = "android.car.ENABLE_INITIAL_NOTICE_SCREEN_TO_USER";
1418    field public static final String KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE = "android.car.KEY_PACKAGES_DISABLED_ON_RESOURCE_OVERUSE";
1419    field public static final String KEY_ROTARY_KEY_EVENT_FILTER = "android.car.ROTARY_KEY_EVENT_FILTER";
1420    field public static final String KEY_SETUP_WIZARD_IN_PROGRESS = "android.car.SETUP_WIZARD_IN_PROGRESS";
1421  }
1422
1423}
1424
1425package android.car.storagemonitoring {
1426
1427  public final class CarStorageMonitoringManager {
1428    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getAggregateIoStats();
1429    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStatsEntry> getBootIoStats();
1430    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.IoStats> getIoStatsDeltas();
1431    method @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public int getPreEolIndicatorStatus();
1432    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public long getShutdownDiskWriteAmount();
1433    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public android.car.storagemonitoring.WearEstimate getWearEstimate();
1434    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public java.util.List<android.car.storagemonitoring.WearEstimateChange> getWearEstimateHistory();
1435    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void registerListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener);
1436    method @Deprecated @RequiresPermission(android.car.Car.PERMISSION_STORAGE_MONITORING) public void unregisterListener(android.car.storagemonitoring.CarStorageMonitoringManager.IoStatsListener);
1437    field public static final String INTENT_EXCESSIVE_IO = "android.car.storagemonitoring.EXCESSIVE_IO";
1438    field public static final int PRE_EOL_INFO_NORMAL = 1; // 0x1
1439    field public static final int PRE_EOL_INFO_UNKNOWN = 0; // 0x0
1440    field public static final int PRE_EOL_INFO_URGENT = 3; // 0x3
1441    field public static final int PRE_EOL_INFO_WARNING = 2; // 0x2
1442    field public static final long SHUTDOWN_COST_INFO_MISSING = -1L; // 0xffffffffffffffffL
1443  }
1444
1445  @Deprecated public static interface CarStorageMonitoringManager.IoStatsListener {
1446    method @Deprecated public void onSnapshot(android.car.storagemonitoring.IoStats);
1447  }
1448
1449  @Deprecated public final class IoStats implements android.os.Parcelable {
1450    ctor @Deprecated public IoStats(java.util.List<android.car.storagemonitoring.IoStatsEntry>, long);
1451    ctor @Deprecated public IoStats(android.os.Parcel);
1452    method @Deprecated public int describeContents();
1453    method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getBackgroundTotals();
1454    method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getForegroundTotals();
1455    method @Deprecated public java.util.List<android.car.storagemonitoring.IoStatsEntry> getStats();
1456    method @Deprecated public long getTimestamp();
1457    method @Deprecated public android.car.storagemonitoring.IoStatsEntry.Metrics getTotals();
1458    method @Deprecated public android.car.storagemonitoring.IoStatsEntry getUserIdStats(int);
1459    method @Deprecated public void writeToParcel(android.os.Parcel, int);
1460    field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStats> CREATOR;
1461  }
1462
1463  @Deprecated public final class IoStatsEntry implements android.os.Parcelable {
1464    ctor @Deprecated public IoStatsEntry(int, long, android.car.storagemonitoring.IoStatsEntry.Metrics, android.car.storagemonitoring.IoStatsEntry.Metrics);
1465    ctor @Deprecated public IoStatsEntry(android.os.Parcel);
1466    ctor @Deprecated public IoStatsEntry(android.car.storagemonitoring.UidIoRecord, long);
1467    method @Deprecated public int describeContents();
1468    method @Deprecated public void writeToParcel(android.os.Parcel, int);
1469    field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry> CREATOR;
1470    field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics background;
1471    field @Deprecated public final android.car.storagemonitoring.IoStatsEntry.Metrics foreground;
1472    field @Deprecated public final long runtimeMillis;
1473    field @Deprecated public final int uid;
1474  }
1475
1476  @Deprecated public static final class IoStatsEntry.Metrics implements android.os.Parcelable {
1477    ctor @Deprecated public IoStatsEntry.Metrics(long, long, long, long, long);
1478    ctor @Deprecated public IoStatsEntry.Metrics(android.os.Parcel);
1479    method @Deprecated public int describeContents();
1480    method @Deprecated public void writeToParcel(android.os.Parcel, int);
1481    field @Deprecated public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStatsEntry.Metrics> CREATOR;
1482    field @Deprecated public final long bytesRead;
1483    field @Deprecated public final long bytesReadFromStorage;
1484    field @Deprecated public final long bytesWritten;
1485    field @Deprecated public final long bytesWrittenToStorage;
1486    field @Deprecated public final long fsyncCalls;
1487  }
1488
1489  public final class LifetimeWriteInfo implements android.os.Parcelable {
1490    ctor public LifetimeWriteInfo(String, String, long);
1491    ctor public LifetimeWriteInfo(android.os.Parcel);
1492    method public int describeContents();
1493    method public void writeToParcel(android.os.Parcel, int);
1494    field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.IoStats> CREATOR;
1495    field public final String fstype;
1496    field public final String partition;
1497    field public final long writtenBytes;
1498  }
1499
1500  public final class UidIoRecord {
1501    ctor public UidIoRecord(int, long, long, long, long, long, long, long, long, long, long);
1502    field public final long background_fsync;
1503    field public final long background_rchar;
1504    field public final long background_read_bytes;
1505    field public final long background_wchar;
1506    field public final long background_write_bytes;
1507    field public final long foreground_fsync;
1508    field public final long foreground_rchar;
1509    field public final long foreground_read_bytes;
1510    field public final long foreground_wchar;
1511    field public final long foreground_write_bytes;
1512    field public final int uid;
1513  }
1514
1515  public final class WearEstimate implements android.os.Parcelable {
1516    ctor public WearEstimate(int, int);
1517    ctor public WearEstimate(android.os.Parcel);
1518    method public int describeContents();
1519    method public void writeToParcel(android.os.Parcel, int);
1520    field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimate> CREATOR;
1521    field public static final int UNKNOWN = -1; // 0xffffffff
1522    field @IntRange(from=0xffffffff, to=100) public final int typeA;
1523    field @IntRange(from=0xffffffff, to=100) public final int typeB;
1524  }
1525
1526  public final class WearEstimateChange implements android.os.Parcelable {
1527    ctor public WearEstimateChange(android.car.storagemonitoring.WearEstimate, android.car.storagemonitoring.WearEstimate, long, java.time.Instant, boolean);
1528    ctor public WearEstimateChange(android.os.Parcel);
1529    method public int describeContents();
1530    method public void writeToParcel(android.os.Parcel, int);
1531    field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimateChange> CREATOR;
1532    field @NonNull public final java.time.Instant dateAtChange;
1533    field public final boolean isAcceptableDegradation;
1534    field @NonNull public final android.car.storagemonitoring.WearEstimate newEstimate;
1535    field @NonNull public final android.car.storagemonitoring.WearEstimate oldEstimate;
1536    field public final long uptimeAtChange;
1537  }
1538
1539}
1540
1541package android.car.telemetry {
1542
1543  public final class CarTelemetryManager {
1544    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);
1545    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void clearReportReadyListener();
1546    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void getAllFinishedReports(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.MetricsReportCallback);
1547    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);
1548    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeAllMetricsConfigs();
1549    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void removeMetricsConfig(@NonNull String);
1550    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_TELEMETRY_SERVICE) public void setReportReadyListener(@NonNull java.util.concurrent.Executor, @NonNull android.car.telemetry.CarTelemetryManager.ReportReadyListener);
1551    field public static final int STATUS_ADD_METRICS_CONFIG_ALREADY_EXISTS = 1; // 0x1
1552    field public static final int STATUS_ADD_METRICS_CONFIG_PARSE_FAILED = 3; // 0x3
1553    field public static final int STATUS_ADD_METRICS_CONFIG_SIGNATURE_VERIFICATION_FAILED = 4; // 0x4
1554    field public static final int STATUS_ADD_METRICS_CONFIG_SUCCEEDED = 0; // 0x0
1555    field public static final int STATUS_ADD_METRICS_CONFIG_UNKNOWN = 5; // 0x5
1556    field public static final int STATUS_ADD_METRICS_CONFIG_VERSION_TOO_OLD = 2; // 0x2
1557    field public static final int STATUS_GET_METRICS_CONFIG_DOES_NOT_EXIST = 4; // 0x4
1558    field public static final int STATUS_GET_METRICS_CONFIG_FINISHED = 0; // 0x0
1559    field public static final int STATUS_GET_METRICS_CONFIG_INTERIM_RESULTS = 2; // 0x2
1560    field public static final int STATUS_GET_METRICS_CONFIG_PENDING = 1; // 0x1
1561    field public static final int STATUS_GET_METRICS_CONFIG_RUNTIME_ERROR = 3; // 0x3
1562  }
1563
1564  public static interface CarTelemetryManager.AddMetricsConfigCallback {
1565    method public void onAddMetricsConfigStatus(@NonNull String, int);
1566  }
1567
1568  public static interface CarTelemetryManager.MetricsReportCallback {
1569    method public void onResult(@NonNull String, @Nullable android.os.PersistableBundle, @Nullable byte[], int);
1570  }
1571
1572  public static interface CarTelemetryManager.ReportReadyListener {
1573    method public void onReady(@NonNull String);
1574  }
1575
1576}
1577
1578package android.car.user {
1579
1580  public final class CarUserManager {
1581    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);
1582    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);
1583    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);
1584    field public static final int USER_LIFECYCLE_EVENT_TYPE_CREATED = 8; // 0x8
1585    field public static final int USER_LIFECYCLE_EVENT_TYPE_REMOVED = 9; // 0x9
1586    field public static final int USER_LIFECYCLE_EVENT_TYPE_STARTING = 1; // 0x1
1587    field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPED = 6; // 0x6
1588    field public static final int USER_LIFECYCLE_EVENT_TYPE_STOPPING = 5; // 0x5
1589    field public static final int USER_LIFECYCLE_EVENT_TYPE_SWITCHING = 2; // 0x2
1590    field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKED = 4; // 0x4
1591    field public static final int USER_LIFECYCLE_EVENT_TYPE_UNLOCKING = 3; // 0x3
1592  }
1593
1594  public static final class CarUserManager.UserLifecycleEvent {
1595    method public int getEventType();
1596    method @Nullable public android.os.UserHandle getPreviousUserHandle();
1597    method @NonNull public android.os.UserHandle getUserHandle();
1598  }
1599
1600  public static interface CarUserManager.UserLifecycleListener {
1601    method public void onEvent(@NonNull android.car.user.CarUserManager.UserLifecycleEvent);
1602  }
1603
1604  public final class UserLifecycleEventFilter implements android.os.Parcelable {
1605    method public boolean apply(@NonNull android.car.user.CarUserManager.UserLifecycleEvent);
1606    method public int describeContents();
1607    method public void writeToParcel(@NonNull android.os.Parcel, int);
1608    field @NonNull public static final android.os.Parcelable.Creator<android.car.user.UserLifecycleEventFilter> CREATOR;
1609  }
1610
1611}
1612
1613package android.car.vms {
1614
1615  public final class VmsAssociatedLayer implements android.os.Parcelable {
1616    ctor public VmsAssociatedLayer(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<java.lang.Integer>);
1617    method public int describeContents();
1618    method @NonNull public java.util.Set<java.lang.Integer> getProviderIds();
1619    method @Deprecated @NonNull public java.util.Set<java.lang.Integer> getPublisherIds();
1620    method @NonNull public android.car.vms.VmsLayer getVmsLayer();
1621    method public void writeToParcel(@NonNull android.os.Parcel, int);
1622    field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAssociatedLayer> CREATOR;
1623  }
1624
1625  public final class VmsAvailableLayers implements android.os.Parcelable {
1626    ctor @Deprecated public VmsAvailableLayers(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>, int);
1627    ctor public VmsAvailableLayers(int, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>);
1628    method public int describeContents();
1629    method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers();
1630    method @Deprecated public int getSequence();
1631    method public int getSequenceNumber();
1632    method public void writeToParcel(@NonNull android.os.Parcel, int);
1633    field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsAvailableLayers> CREATOR;
1634  }
1635
1636  public final class VmsClient {
1637    method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsAvailableLayers getAvailableLayers();
1638    method @Nullable @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public byte[] getProviderDescription(int);
1639    method @NonNull @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public android.car.vms.VmsSubscriptionState getSubscriptionState();
1640    method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public boolean isMonitoringEnabled();
1641    method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void publishPacket(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]);
1642    method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public int registerProvider(@NonNull byte[]);
1643    method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setMonitoringEnabled(boolean);
1644    method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void setProviderOfferings(int, @NonNull java.util.Set<android.car.vms.VmsLayerDependency>);
1645    method @RequiresPermission(android.car.Car.PERMISSION_VMS_SUBSCRIBER) public void setSubscriptions(@NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>);
1646    method @RequiresPermission(android.car.Car.PERMISSION_VMS_PUBLISHER) public void unregisterProvider(int);
1647  }
1648
1649  public final class VmsClientManager {
1650    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);
1651    method @RequiresPermission(anyOf={android.car.Car.PERMISSION_VMS_PUBLISHER, android.car.Car.PERMISSION_VMS_SUBSCRIBER}) public void unregisterVmsClientCallback(@NonNull android.car.vms.VmsClientManager.VmsClientCallback);
1652  }
1653
1654  public static interface VmsClientManager.VmsClientCallback {
1655    method public void onClientConnected(@NonNull android.car.vms.VmsClient);
1656    method public void onLayerAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers);
1657    method public void onPacketReceived(int, @NonNull android.car.vms.VmsLayer, @NonNull byte[]);
1658    method public void onSubscriptionStateChanged(@NonNull android.car.vms.VmsSubscriptionState);
1659  }
1660
1661  public final class VmsLayer implements android.os.Parcelable {
1662    ctor public VmsLayer(int, int, int);
1663    method public int describeContents();
1664    method public int getChannel();
1665    method @Deprecated public int getSubtype();
1666    method public int getType();
1667    method public int getVersion();
1668    method public void writeToParcel(@NonNull android.os.Parcel, int);
1669    field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayer> CREATOR;
1670  }
1671
1672  public final class VmsLayerDependency implements android.os.Parcelable {
1673    ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer);
1674    ctor public VmsLayerDependency(@NonNull android.car.vms.VmsLayer, @NonNull java.util.Set<android.car.vms.VmsLayer>);
1675    method public int describeContents();
1676    method @NonNull public java.util.Set<android.car.vms.VmsLayer> getDependencies();
1677    method @NonNull public android.car.vms.VmsLayer getLayer();
1678    method public void writeToParcel(@NonNull android.os.Parcel, int);
1679    field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayerDependency> CREATOR;
1680  }
1681
1682  @Deprecated public final class VmsLayersOffering implements android.os.Parcelable {
1683    ctor @Deprecated public VmsLayersOffering(@NonNull java.util.Set<android.car.vms.VmsLayerDependency>, int);
1684    method @Deprecated public int describeContents();
1685    method @Deprecated @NonNull public java.util.Set<android.car.vms.VmsLayerDependency> getDependencies();
1686    method @Deprecated public int getPublisherId();
1687    method @Deprecated public void writeToParcel(@NonNull android.os.Parcel, int);
1688    field @Deprecated @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsLayersOffering> CREATOR;
1689  }
1690
1691  @Deprecated public final class VmsOperationRecorder {
1692    method @Deprecated public void addHalSubscription(int, android.car.vms.VmsLayer);
1693    method @Deprecated public void addPromiscuousSubscription(int);
1694    method @Deprecated public void addSubscription(int, android.car.vms.VmsLayer);
1695    method @Deprecated public static android.car.vms.VmsOperationRecorder get();
1696    method @Deprecated public void getPublisherId(int);
1697    method @Deprecated public void removeHalSubscription(int, android.car.vms.VmsLayer);
1698    method @Deprecated public void removePromiscuousSubscription(int);
1699    method @Deprecated public void removeSubscription(int, android.car.vms.VmsLayer);
1700    method @Deprecated public void setHalPublisherLayersOffering(android.car.vms.VmsLayersOffering);
1701    method @Deprecated public void setLayersOffering(android.car.vms.VmsLayersOffering);
1702    method @Deprecated public void setPublisherLayersOffering(android.car.vms.VmsLayersOffering);
1703    method @Deprecated public void startMonitoring();
1704    method @Deprecated public void stopMonitoring();
1705    method @Deprecated public void subscribe(android.car.vms.VmsLayer);
1706    method @Deprecated public void subscribe(android.car.vms.VmsLayer, int);
1707    method @Deprecated public void unsubscribe(android.car.vms.VmsLayer);
1708    method @Deprecated public void unsubscribe(android.car.vms.VmsLayer, int);
1709  }
1710
1711  @Deprecated public abstract class VmsPublisherClientService extends android.app.Service {
1712    ctor @Deprecated public VmsPublisherClientService();
1713    method @Deprecated public final int getPublisherId(byte[]);
1714    method @Deprecated public final android.car.vms.VmsSubscriptionState getSubscriptions();
1715    method @Deprecated public android.os.IBinder onBind(android.content.Intent);
1716    method @Deprecated protected abstract void onVmsPublisherServiceReady();
1717    method @Deprecated public abstract void onVmsSubscriptionChange(@NonNull android.car.vms.VmsSubscriptionState);
1718    method @Deprecated public final void publish(@NonNull android.car.vms.VmsLayer, int, byte[]);
1719    method @Deprecated public final void setLayersOffering(@NonNull android.car.vms.VmsLayersOffering);
1720  }
1721
1722  @Deprecated public final class VmsSubscriberManager {
1723    method @Deprecated public void clearVmsSubscriberClientCallback();
1724    method @Deprecated @NonNull public android.car.vms.VmsAvailableLayers getAvailableLayers();
1725    method @Deprecated @NonNull public byte[] getPublisherInfo(int);
1726    method @Deprecated public void setVmsSubscriberClientCallback(@NonNull java.util.concurrent.Executor, @NonNull android.car.vms.VmsSubscriberManager.VmsSubscriberClientCallback);
1727    method @Deprecated public void startMonitoring();
1728    method @Deprecated public void stopMonitoring();
1729    method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer);
1730    method @Deprecated public void subscribe(@NonNull android.car.vms.VmsLayer, int);
1731    method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer);
1732    method @Deprecated public void unsubscribe(@NonNull android.car.vms.VmsLayer, int);
1733  }
1734
1735  @Deprecated public static interface VmsSubscriberManager.VmsSubscriberClientCallback {
1736    method @Deprecated public void onLayersAvailabilityChanged(@NonNull android.car.vms.VmsAvailableLayers);
1737    method @Deprecated public void onVmsMessageReceived(@NonNull android.car.vms.VmsLayer, byte[]);
1738  }
1739
1740  public final class VmsSubscriptionState implements android.os.Parcelable {
1741    ctor public VmsSubscriptionState(int, @NonNull java.util.Set<android.car.vms.VmsLayer>, @NonNull java.util.Set<android.car.vms.VmsAssociatedLayer>);
1742    method public int describeContents();
1743    method @NonNull public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers();
1744    method @NonNull public java.util.Set<android.car.vms.VmsLayer> getLayers();
1745    method public int getSequenceNumber();
1746    method public void writeToParcel(@NonNull android.os.Parcel, int);
1747    field @NonNull public static final android.os.Parcelable.Creator<android.car.vms.VmsSubscriptionState> CREATOR;
1748  }
1749
1750}
1751
1752package android.car.watchdog {
1753
1754  public final class CarWatchdogManager {
1755    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);
1756    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public java.util.List<android.car.watchdog.ResourceOveruseStats> getAllResourceOveruseStats(int, int, int);
1757    method @NonNull @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public java.util.List<android.car.watchdog.PackageKillableState> getPackageKillableStatesAsUser(@NonNull android.os.UserHandle);
1758    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);
1759    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);
1760    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void registerClient(@NonNull java.util.concurrent.Executor, @NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int);
1761    method @RequiresPermission(android.car.Car.PERMISSION_COLLECT_CAR_WATCHDOG_METRICS) public void removeResourceOveruseListenerForSystem(@NonNull android.car.watchdog.CarWatchdogManager.ResourceOveruseListener);
1762    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public void setKillablePackageAsUser(@NonNull String, @NonNull android.os.UserHandle, boolean);
1763    method @RequiresPermission(android.car.Car.PERMISSION_CONTROL_CAR_WATCHDOG_CONFIG) public int setResourceOveruseConfigurations(@NonNull java.util.List<android.car.watchdog.ResourceOveruseConfiguration>, int);
1764    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void tellClientAlive(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback, int);
1765    method @RequiresPermission(android.car.Car.PERMISSION_USE_CAR_WATCHDOG) public void unregisterClient(@NonNull android.car.watchdog.CarWatchdogManager.CarWatchdogClientCallback);
1766    field public static final int FLAG_MINIMUM_STATS_IO_100_MB = 2; // 0x2
1767    field public static final int FLAG_MINIMUM_STATS_IO_1_GB = 4; // 0x4
1768    field public static final int FLAG_MINIMUM_STATS_IO_1_MB = 1; // 0x1
1769    field public static final int RETURN_CODE_ERROR = -1; // 0xffffffff
1770    field public static final int RETURN_CODE_SUCCESS = 0; // 0x0
1771    field public static final int TIMEOUT_CRITICAL = 0; // 0x0
1772    field public static final int TIMEOUT_MODERATE = 1; // 0x1
1773    field public static final int TIMEOUT_NORMAL = 2; // 0x2
1774  }
1775
1776  public abstract static class CarWatchdogManager.CarWatchdogClientCallback {
1777    ctor public CarWatchdogManager.CarWatchdogClientCallback();
1778    method public boolean onCheckHealthStatus(int, int);
1779    method public void onPrepareProcessTermination();
1780  }
1781
1782  public final class IoOveruseAlertThreshold implements android.os.Parcelable {
1783    method public int describeContents();
1784    method public long getDurationInSeconds();
1785    method public long getWrittenBytesPerSecond();
1786    method public void writeToParcel(@NonNull android.os.Parcel, int);
1787    field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseAlertThreshold> CREATOR;
1788  }
1789
1790  public final class IoOveruseConfiguration implements android.os.Parcelable {
1791    method public int describeContents();
1792    method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getAppCategorySpecificThresholds();
1793    method @NonNull public android.car.watchdog.PerStateBytes getComponentLevelThresholds();
1794    method @NonNull public java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes> getPackageSpecificThresholds();
1795    method @NonNull public java.util.List<android.car.watchdog.IoOveruseAlertThreshold> getSystemWideThresholds();
1796    method public void writeToParcel(@NonNull android.os.Parcel, int);
1797    field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.IoOveruseConfiguration> CREATOR;
1798  }
1799
1800  public static final class IoOveruseConfiguration.Builder {
1801    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>);
1802    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addAppCategorySpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes);
1803    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addPackageSpecificThresholds(@NonNull String, @NonNull android.car.watchdog.PerStateBytes);
1804    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder addSystemWideThresholds(@NonNull android.car.watchdog.IoOveruseAlertThreshold);
1805    method @NonNull public android.car.watchdog.IoOveruseConfiguration build();
1806    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setAppCategorySpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>);
1807    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setComponentLevelThresholds(@NonNull android.car.watchdog.PerStateBytes);
1808    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setPackageSpecificThresholds(@NonNull java.util.Map<java.lang.String,android.car.watchdog.PerStateBytes>);
1809    method @NonNull public android.car.watchdog.IoOveruseConfiguration.Builder setSystemWideThresholds(@NonNull java.util.List<android.car.watchdog.IoOveruseAlertThreshold>);
1810  }
1811
1812  public final class PackageKillableState implements android.os.Parcelable {
1813    method public int describeContents();
1814    method public int getKillableState();
1815    method @NonNull public String getPackageName();
1816    method public int getUserId();
1817    method public void writeToParcel(@NonNull android.os.Parcel, int);
1818    field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.PackageKillableState> CREATOR;
1819    field public static final int KILLABLE_STATE_NEVER = 3; // 0x3
1820    field public static final int KILLABLE_STATE_NO = 2; // 0x2
1821    field public static final int KILLABLE_STATE_YES = 1; // 0x1
1822  }
1823
1824  public final class ResourceOveruseConfiguration implements android.os.Parcelable {
1825    method public int describeContents();
1826    method public int getComponentType();
1827    method @Nullable public android.car.watchdog.IoOveruseConfiguration getIoOveruseConfiguration();
1828    method @NonNull public java.util.Map<java.lang.String,java.lang.String> getPackagesToAppCategoryTypes();
1829    method @NonNull public java.util.List<java.lang.String> getSafeToKillPackages();
1830    method @NonNull public java.util.List<java.lang.String> getVendorPackagePrefixes();
1831    method public void writeToParcel(@NonNull android.os.Parcel, int);
1832    field public static final String APPLICATION_CATEGORY_TYPE_MAPS = "android.car.watchdog.app.category.MAPS";
1833    field public static final String APPLICATION_CATEGORY_TYPE_MEDIA = "android.car.watchdog.app.category.MEDIA";
1834    field public static final int COMPONENT_TYPE_SYSTEM = 1; // 0x1
1835    field public static final int COMPONENT_TYPE_THIRD_PARTY = 3; // 0x3
1836    field public static final int COMPONENT_TYPE_VENDOR = 2; // 0x2
1837    field @NonNull public static final android.os.Parcelable.Creator<android.car.watchdog.ResourceOveruseConfiguration> CREATOR;
1838  }
1839
1840  public static final class ResourceOveruseConfiguration.Builder {
1841    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>);
1842    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addPackagesToAppCategoryTypes(@NonNull String, @NonNull String);
1843    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addSafeToKillPackages(@NonNull String);
1844    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder addVendorPackagePrefixes(@NonNull String);
1845    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration build();
1846    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setComponentType(int);
1847    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setIoOveruseConfiguration(@NonNull android.car.watchdog.IoOveruseConfiguration);
1848    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setPackagesToAppCategoryTypes(@NonNull java.util.Map<java.lang.String,java.lang.String>);
1849    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setSafeToKillPackages(@NonNull java.util.List<java.lang.String>);
1850    method @NonNull public android.car.watchdog.ResourceOveruseConfiguration.Builder setVendorPackagePrefixes(@NonNull java.util.List<java.lang.String>);
1851  }
1852
1853}
1854
1855