blob: 568d611d5837fd776675793308c4ad4855a08da9 [file] [log] [blame]
Vitalii Tomkiv280b5722016-03-17 16:17:21 -07001package android.car {
2
Keun-young Park4cf69112016-10-04 10:02:59 -07003 public final class Car {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -07004 method public void connect() throws java.lang.IllegalStateException;
Jason Tholstrup3ee334d2016-08-26 14:30:20 -07005 method public static android.car.Car createCar(android.content.Context, android.content.ServiceConnection, android.os.Handler);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -07006 method public static android.car.Car createCar(android.content.Context, android.content.ServiceConnection);
7 method public void disconnect();
8 method public int getCarConnectionType();
Vitalii Tomkiv235f8ac2016-04-04 11:26:49 -07009 method public java.lang.Object getCarManager(java.lang.String) throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070010 method public boolean isConnected();
11 method public boolean isConnecting();
Vitalii Tomkiv46371472016-05-23 16:55:22 -070012 field public static final java.lang.String APP_FOCUS_SERVICE = "app_focus";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070013 field public static final java.lang.String AUDIO_SERVICE = "audio";
Steve Paik43c04a72016-07-08 19:12:09 -070014 field public static final java.lang.String CABIN_SERVICE = "cabin";
Yao Chen35189a32017-08-17 09:52:40 -070015 field public static final java.lang.String CAR_EXTRA_MEDIA_PACKAGE = "android.car.intent.extra.MEDIA_PACKAGE";
16 field public static final java.lang.String CAR_INTENT_ACTION_MEDIA_TEMPLATE = "android.car.intent.action.MEDIA_TEMPLATE";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070017 field public static final int CONNECTION_TYPE_EMBEDDED = 5; // 0x5
Enrico Granataae25b922017-07-07 11:28:15 -070018 field public static final java.lang.String DIAGNOSTIC_SERVICE = "diagnostic";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070019 field public static final java.lang.String HVAC_SERVICE = "hvac";
20 field public static final java.lang.String INFO_SERVICE = "info";
21 field public static final java.lang.String PACKAGE_SERVICE = "package";
Steve Paik43c04a72016-07-08 19:12:09 -070022 field public static final java.lang.String PERMISSION_CAR_CABIN = "android.car.permission.CAR_CABIN";
Yao Chenc4d442f2016-04-08 11:33:47 -070023 field public static final java.lang.String PERMISSION_CAR_CONTROL_AUDIO_VOLUME = "android.car.permission.CAR_CONTROL_AUDIO_VOLUME";
Enrico Granataae25b922017-07-07 11:28:15 -070024 field public static final java.lang.String PERMISSION_CAR_DIAGNOSTIC_CLEAR = "android.car.permission.DIAGNOSTIC_CLEAR";
25 field public static final java.lang.String PERMISSION_CAR_DIAGNOSTIC_READ_ALL = "android.car.permission.DIAGNOSTIC_READ_ALL";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070026 field public static final java.lang.String PERMISSION_CAR_HVAC = "android.car.permission.CAR_HVAC";
27 field public static final java.lang.String PERMISSION_CAR_PROJECTION = "android.car.permission.CAR_PROJECTION";
28 field public static final java.lang.String PERMISSION_CAR_RADIO = "android.car.permission.CAR_RADIO";
Pavel Maltsev0d07c762016-11-03 16:40:15 -070029 field public static final java.lang.String PERMISSION_CAR_TEST_SERVICE = "android.car.permission.CAR_TEST_SERVICE";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070030 field public static final java.lang.String PERMISSION_CONTROL_APP_BLOCKING = "android.car.permission.CONTROL_APP_BLOCKING";
31 field public static final java.lang.String PERMISSION_FUEL = "android.car.permission.CAR_FUEL";
32 field public static final java.lang.String PERMISSION_MILEAGE = "android.car.permission.CAR_MILEAGE";
Pavel Maltsev0d07c762016-11-03 16:40:15 -070033 field public static final deprecated java.lang.String PERMISSION_MOCK_VEHICLE_HAL = "android.car.permission.CAR_MOCK_VEHICLE_HAL";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070034 field public static final java.lang.String PERMISSION_SPEED = "android.car.permission.CAR_SPEED";
Enrico Granata1172f882017-09-21 14:51:30 -070035 field public static final java.lang.String PERMISSION_STORAGE_MONITORING = "android.car.permission.STORAGE_MONITORING";
Steve Paik289ab992017-07-11 22:40:57 -070036 field public static final java.lang.String PERMISSION_VEHICLE_DYNAMICS_STATE = "android.car.permission.VEHICLE_DYNAMICS_STATE";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070037 field public static final java.lang.String PERMISSION_VENDOR_EXTENSION = "android.car.permission.CAR_VENDOR_EXTENSION";
38 field public static final java.lang.String PROJECTION_SERVICE = "projection";
39 field public static final java.lang.String RADIO_SERVICE = "radio";
40 field public static final java.lang.String SENSOR_SERVICE = "sensor";
Enrico Granata9a916d72017-09-19 14:33:08 -070041 field public static final java.lang.String STORAGE_MONITORING_SERVICE = "storage_monitoring";
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070042 field public static final java.lang.String TEST_SERVICE = "car-service-test";
Pavel Maltsev634e1ff2016-07-14 15:41:26 -070043 field public static final java.lang.String VENDOR_EXTENSION_SERVICE = "vendor_extension";
Keun-young Park909546f2017-07-19 14:59:51 -070044 field public static final int VERSION = 3; // 0x3
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070045 }
46
Vitalii Tomkiv46371472016-05-23 16:55:22 -070047 public final class CarAppFocusManager {
Keun-young Park150d8de2016-10-07 15:48:11 -070048 method public void abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int);
49 method public void abandonAppFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback);
Jason Tholstrupd72b5352016-09-22 16:32:14 -070050 method public void addFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int) throws android.car.CarNotConnectedException;
Vitalii Tomkivd15d8872016-10-04 14:08:56 -070051 method public boolean isOwningFocus(android.car.CarAppFocusManager.OnAppFocusOwnershipCallback, int) throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -070052 method public void removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener, int);
53 method public void removeFocusListener(android.car.CarAppFocusManager.OnAppFocusChangedListener);
Vitalii Tomkivd15d8872016-10-04 14:08:56 -070054 method public int requestAppFocus(int, android.car.CarAppFocusManager.OnAppFocusOwnershipCallback) throws android.car.CarNotConnectedException, java.lang.SecurityException;
Vitalii Tomkiv46371472016-05-23 16:55:22 -070055 field public static final int APP_FOCUS_REQUEST_FAILED = 0; // 0x0
Vitalii Tomkivd15d8872016-10-04 14:08:56 -070056 field public static final int APP_FOCUS_REQUEST_SUCCEEDED = 1; // 0x1
Vitalii Tomkiv46371472016-05-23 16:55:22 -070057 field public static final int APP_FOCUS_TYPE_NAVIGATION = 1; // 0x1
58 field public static final int APP_FOCUS_TYPE_VOICE_COMMAND = 2; // 0x2
59 }
60
Jason Tholstrupd72b5352016-09-22 16:32:14 -070061 public static abstract interface CarAppFocusManager.OnAppFocusChangedListener {
62 method public abstract void onAppFocusChanged(int, boolean);
Vitalii Tomkiv46371472016-05-23 16:55:22 -070063 }
64
Vitalii Tomkivd15d8872016-10-04 14:08:56 -070065 public static abstract interface CarAppFocusManager.OnAppFocusOwnershipCallback {
66 method public abstract void onAppFocusOwnershipGranted(int);
Jason Tholstrupd72b5352016-09-22 16:32:14 -070067 method public abstract void onAppFocusOwnershipLost(int);
Vitalii Tomkiv46371472016-05-23 16:55:22 -070068 }
69
Keun-young Park67456352016-10-03 13:45:19 -070070 public final class CarInfoManager {
Keun-young Park07ddbbd2016-10-06 14:13:02 -070071 method public java.lang.String getManufacturer() throws android.car.CarNotConnectedException;
72 method public java.lang.String getModel() throws android.car.CarNotConnectedException;
73 method public java.lang.String getModelYear() throws android.car.CarNotConnectedException;
74 method public java.lang.String getVehicleId() throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070075 }
76
77 public class CarNotConnectedException extends java.lang.Exception {
78 ctor public CarNotConnectedException();
79 ctor public CarNotConnectedException(java.lang.String);
80 ctor public CarNotConnectedException(java.lang.String, java.lang.Throwable);
81 ctor public CarNotConnectedException(java.lang.Exception);
82 }
83
Keun-young Park4cf69112016-10-04 10:02:59 -070084 public final class CarProjectionManager {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070085 method public void onCarDisconnected();
Gene Karshenboymbeab1352017-06-22 15:58:31 -070086 method public void registerProjectionListener(android.car.CarProjectionManager.CarProjectionListener, int) throws android.car.CarNotConnectedException;
Enrico Granataae25b922017-07-07 11:28:15 -070087 method public void registerProjectionRunner(android.content.Intent) throws android.car.CarNotConnectedException;
Gene Karshenboymbeab1352017-06-22 15:58:31 -070088 method public void unregisterProjectionListener();
Enrico Granataae25b922017-07-07 11:28:15 -070089 method public void unregisterProjectionRunner(android.content.Intent);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -070090 field public static final int PROJECTION_LONG_PRESS_VOICE_SEARCH = 2; // 0x2
91 field public static final int PROJECTION_VOICE_SEARCH = 1; // 0x1
92 }
93
94 public static abstract interface CarProjectionManager.CarProjectionListener {
95 method public abstract void onVoiceAssistantRequest(boolean);
96 }
97
Keun-young Parkcd68cc72016-09-14 11:06:56 -070098 public final class VehicleAreaType {
Steve Paikfb5f6232016-03-28 10:31:25 -070099 field public static final int VEHICLE_AREA_TYPE_DOOR = 4; // 0x4
Vitalii Tomkiv5f537ee2016-10-11 14:26:44 -0700100 field public static final int VEHICLE_AREA_TYPE_MIRROR = 5; // 0x5
Steve Paikfb5f6232016-03-28 10:31:25 -0700101 field public static final int VEHICLE_AREA_TYPE_NONE = 0; // 0x0
102 field public static final int VEHICLE_AREA_TYPE_SEAT = 3; // 0x3
103 field public static final int VEHICLE_AREA_TYPE_WINDOW = 2; // 0x2
104 field public static final int VEHICLE_AREA_TYPE_ZONE = 1; // 0x1
105 }
106
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700107 public final class VehicleDoor {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700108 field public static final int DOOR_HOOD = 268435456; // 0x10000000
109 field public static final int DOOR_REAR = 536870912; // 0x20000000
110 field public static final int DOOR_ROW_1_LEFT = 1; // 0x1
111 field public static final int DOOR_ROW_1_RIGHT = 4; // 0x4
112 field public static final int DOOR_ROW_2_LEFT = 16; // 0x10
113 field public static final int DOOR_ROW_2_RIGHT = 64; // 0x40
114 field public static final int DOOR_ROW_3_LEFT = 256; // 0x100
115 field public static final int DOOR_ROW_3_RIGHT = 1024; // 0x400
116 }
117
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700118 public final class VehicleMirror {
Steve Paik43c04a72016-07-08 19:12:09 -0700119 field public static final int MIRROR_DRIVER_CENTER = 4; // 0x4
120 field public static final int MIRROR_DRIVER_LEFT = 1; // 0x1
121 field public static final int MIRROR_DRIVER_RIGHT = 2; // 0x2
122 }
123
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700124 public final class VehicleSeat {
Steve Paik8968e1d2016-10-06 20:29:37 -0700125 field public static final int SEAT_ROW_1_CENTER = 2; // 0x2
126 field public static final int SEAT_ROW_1_LEFT = 1; // 0x1
127 field public static final int SEAT_ROW_1_RIGHT = 4; // 0x4
128 field public static final int SEAT_ROW_2_CENTER = 32; // 0x20
129 field public static final int SEAT_ROW_2_LEFT = 16; // 0x10
130 field public static final int SEAT_ROW_2_RIGHT = 64; // 0x40
131 field public static final int SEAT_ROW_3_CENTER = 512; // 0x200
132 field public static final int SEAT_ROW_3_LEFT = 256; // 0x100
133 field public static final int SEAT_ROW_3_RIGHT = 1024; // 0x400
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700134 }
135
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700136 public final class VehicleWindow {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700137 field public static final int WINDOW_FRONT_WINDSHIELD = 1; // 0x1
138 field public static final int WINDOW_REAR_WINDSHIELD = 2; // 0x2
139 field public static final int WINDOW_ROOF_TOP = 4; // 0x4
140 field public static final int WINDOW_ROW_1_LEFT = 16; // 0x10
141 field public static final int WINDOW_ROW_1_RIGHT = 32; // 0x20
142 field public static final int WINDOW_ROW_2_LEFT = 256; // 0x100
143 field public static final int WINDOW_ROW_2_RIGHT = 512; // 0x200
144 field public static final int WINDOW_ROW_3_LEFT = 4096; // 0x1000
145 field public static final int WINDOW_ROW_3_RIGHT = 8192; // 0x2000
146 }
147
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700148 public final class VehicleZone {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700149 field public static final int ZONE_ALL = -2147483648; // 0x80000000
150 field public static final int ZONE_ROW_1_ALL = 8; // 0x8
151 field public static final int ZONE_ROW_1_CENTER = 2; // 0x2
152 field public static final int ZONE_ROW_1_LEFT = 1; // 0x1
153 field public static final int ZONE_ROW_1_RIGHT = 4; // 0x4
154 field public static final int ZONE_ROW_2_ALL = 128; // 0x80
155 field public static final int ZONE_ROW_2_CENTER = 32; // 0x20
156 field public static final int ZONE_ROW_2_LEFT = 16; // 0x10
157 field public static final int ZONE_ROW_2_RIGHT = 64; // 0x40
158 field public static final int ZONE_ROW_3_ALL = 2048; // 0x800
159 field public static final int ZONE_ROW_3_CENTER = 512; // 0x200
160 field public static final int ZONE_ROW_3_LEFT = 256; // 0x100
161 field public static final int ZONE_ROW_3_RIGHT = 1024; // 0x400
162 field public static final int ZONE_ROW_4_ALL = 32768; // 0x8000
163 field public static final int ZONE_ROW_4_CENTER = 8192; // 0x2000
164 field public static final int ZONE_ROW_4_LEFT = 4096; // 0x1000
165 field public static final int ZONE_ROW_4_RIGHT = 16384; // 0x4000
166 }
167
Keun-young Parkcd68cc72016-09-14 11:06:56 -0700168 public final class VehicleZoneUtil {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700169 method public static int getFirstZone(int);
Keun-young Parkcc487492016-03-17 10:14:23 -0700170 method public static int getNextZone(int, int) throws java.lang.IllegalArgumentException;
171 method public static int getNumberOfZones(int);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700172 method public static int[] listAllZones(int);
Keun-young Parkcc487492016-03-17 10:14:23 -0700173 method public static int zoneToIndex(int, int) throws java.lang.IllegalArgumentException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700174 }
175
176}
177
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700178package android.car.app.menu {
179
180 public abstract class CarMenuCallbacks {
181 ctor public CarMenuCallbacks();
182 method public abstract android.car.app.menu.RootMenu getRootMenu(android.os.Bundle);
183 method public abstract void onCarMenuClosed();
184 method public abstract void onCarMenuClosing();
185 method public abstract void onCarMenuOpened();
186 method public abstract void onCarMenuOpening();
187 method public abstract void onItemClicked(java.lang.String);
188 method public abstract boolean onItemLongClicked(java.lang.String);
189 method public abstract boolean onMenuClicked();
190 method public abstract void subscribe(java.lang.String, android.car.app.menu.SubscriptionCallbacks);
191 method public abstract void unsubscribe(java.lang.String, android.car.app.menu.SubscriptionCallbacks);
192 }
193
194 public class CarMenuConstants {
195 ctor public CarMenuConstants();
196 }
197
198 public static class CarMenuConstants.MenuItemConstants {
199 ctor public CarMenuConstants.MenuItemConstants();
200 field public static final int FLAG_BROWSABLE = 1; // 0x1
201 field public static final int FLAG_FIRSTITEM = 2; // 0x2
202 field public static final java.lang.String KEY_EMPTY_PLACEHOLDER = "android.car.app.menu.empty_placeholder";
203 field public static final java.lang.String KEY_FLAGS = "android.car.app.menu.flags";
204 field public static final java.lang.String KEY_ID = "android.car.app.menu.id";
205 field public static final java.lang.String KEY_LEFTICON = "android.car.app.menu.leftIcon";
206 field public static final java.lang.String KEY_REMOTEVIEWS = "android.car.app.menu.remoteViews";
207 field public static final java.lang.String KEY_RIGHTICON = "android.car.app.menu.rightIcon";
208 field public static final java.lang.String KEY_RIGHTTEXT = "android.car.app.menu.rightText";
209 field public static final java.lang.String KEY_TEXT = "android.car.app.menu.text";
210 field public static final java.lang.String KEY_TITLE = "android.car.app.menu.title";
211 field public static final java.lang.String KEY_WIDGET = "android.car.app.menu.widget";
212 field public static final java.lang.String KEY_WIDGET_STATE = "android.car.app.menu.widget_state";
213 field public static final int WIDGET_CHECKBOX = 1; // 0x1
214 field public static final int WIDGET_TEXT_VIEW = 2; // 0x2
215 }
216
217 public static abstract class CarMenuConstants.MenuItemConstants.MenuItemFlags implements java.lang.annotation.Annotation {
218 }
219
220 public static abstract class CarMenuConstants.MenuItemConstants.WidgetTypes implements java.lang.annotation.Annotation {
221 }
222
223 public abstract class CarUiEntry {
224 ctor public CarUiEntry(android.content.Context, android.content.Context);
225 method public abstract void closeDrawer();
226 method public abstract android.view.View getContentView();
227 method public abstract int getFragmentContainerId();
228 method public abstract java.lang.CharSequence getSearchBoxText();
229 method public abstract void hideMenuButton();
230 method public abstract void hideTitle();
231 method public abstract void onPause();
232 method public abstract void onRestoreInstanceState(android.os.Bundle);
233 method public abstract void onResume();
234 method public abstract void onSaveInstanceState(android.os.Bundle);
235 method public abstract void onStart();
236 method public abstract void onStop();
237 method public abstract void openDrawer();
238 method public abstract void restoreMenuDrawable();
239 method public abstract void setAutoLightDarkMode();
240 method public abstract void setBackground(android.graphics.Bitmap);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700241 method public abstract void setCarMenuCallbacks(android.car.app.menu.CarMenuCallbacks);
242 method public abstract void setDarkMode();
243 method public abstract void setLightMode();
244 method public abstract void setMenuButtonBitmap(android.graphics.Bitmap);
245 method public abstract void setMenuButtonColor(int);
246 method public abstract void setScrimColor(int);
247 method public abstract void setSearchBoxColors(int, int, int, int);
248 method public abstract void setSearchBoxEditListener(android.car.app.menu.SearchBoxEditListener);
249 method public abstract void setSearchBoxEndView(android.view.View);
250 method public abstract void setTitle(java.lang.CharSequence);
251 method public abstract void showMenu(java.lang.String, java.lang.String);
252 method public abstract void showSearchBox(android.view.View.OnClickListener);
253 method public abstract void showTitle();
254 method public abstract void showToast(java.lang.String, long);
255 method public abstract android.widget.EditText startInput(java.lang.String, android.view.View.OnClickListener);
256 method public abstract void stopInput();
257 field protected final android.content.Context mAppContext;
258 field protected final android.content.Context mUiLibContext;
259 }
260
261 public class RootMenu {
262 ctor public RootMenu(java.lang.String);
263 ctor public RootMenu(java.lang.String, android.os.Bundle);
264 method public android.os.Bundle getBundle();
265 method public java.lang.String getId();
266 }
267
268 public abstract class SearchBoxEditListener {
269 ctor public SearchBoxEditListener();
270 method public abstract void onEdit(java.lang.String);
271 method public abstract void onSearch(java.lang.String);
272 }
273
274 public abstract class SubscriptionCallbacks {
275 ctor public SubscriptionCallbacks();
276 method public abstract void onChildChanged(java.lang.String, android.os.Bundle);
277 method public abstract void onChildrenLoaded(java.lang.String, java.util.List<android.os.Bundle>);
278 method public abstract void onError(java.lang.String);
279 }
280
281}
282
283package android.car.cluster.renderer {
284
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700285 public abstract class InstrumentClusterRenderer {
286 ctor public InstrumentClusterRenderer();
287 method protected abstract android.car.cluster.renderer.NavigationRenderer createNavigationRenderer();
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700288 method public synchronized android.car.cluster.renderer.NavigationRenderer getNavigationRenderer();
289 method public final synchronized void initialize();
290 method public abstract void onCreate(android.content.Context);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700291 method public abstract void onStart();
292 method public abstract void onStop();
293 }
294
Pavel Maltsev0477e292016-05-27 12:22:36 -0700295 public abstract class InstrumentClusterRenderingService extends android.app.Service {
296 ctor public InstrumentClusterRenderingService();
297 method protected abstract android.car.cluster.renderer.NavigationRenderer getNavigationRenderer();
298 method public android.os.IBinder onBind(android.content.Intent);
Pavel Maltsev03cf60c2016-06-27 15:11:51 -0700299 method protected void onKeyEvent(android.view.KeyEvent);
Pavel Maltsev0477e292016-05-27 12:22:36 -0700300 }
301
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700302 public abstract class NavigationRenderer {
303 ctor public NavigationRenderer();
Pavel Maltsev8cf86912016-04-01 18:01:51 -0700304 method public abstract android.car.navigation.CarNavigationInstrumentCluster getNavigationProperties();
Keun-young Park3388e782016-10-05 16:28:32 -0700305 method public abstract void onNextTurnChanged(int, java.lang.CharSequence, int, int, android.graphics.Bitmap, int);
Pavel Maltseva928f132016-08-01 16:46:10 -0700306 method public abstract void onNextTurnDistanceChanged(int, int, int, int);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700307 method public abstract void onStartNavigation();
308 method public abstract void onStopNavigation();
309 }
310
311}
312
313package android.car.content.pm {
314
315 public class AppBlockingPackageInfo implements android.os.Parcelable {
316 ctor public AppBlockingPackageInfo(java.lang.String, int, int, int, android.content.pm.Signature[], java.lang.String[]);
317 ctor public AppBlockingPackageInfo(android.os.Parcel);
318 method public int describeContents();
319 method public void writeToParcel(android.os.Parcel, int);
320 field public static final android.os.Parcelable.Creator<android.car.content.pm.AppBlockingPackageInfo> CREATOR;
321 field public static final int FLAG_SYSTEM_APP = 1; // 0x1
322 field public static final int FLAG_WHOLE_ACTIVITY = 2; // 0x2
323 field public final java.lang.String[] activities;
324 field public final int flags;
325 field public final int maxRevisionCode;
326 field public final int minRevisionCode;
327 field public final java.lang.String packageName;
328 field public final android.content.pm.Signature[] signatures;
329 }
330
331 public class CarAppBlockingPolicy implements android.os.Parcelable {
332 ctor public CarAppBlockingPolicy(android.car.content.pm.AppBlockingPackageInfo[], android.car.content.pm.AppBlockingPackageInfo[]);
333 ctor public CarAppBlockingPolicy(android.os.Parcel);
334 method public int describeContents();
335 method public void writeToParcel(android.os.Parcel, int);
336 field public static final android.os.Parcelable.Creator<android.car.content.pm.CarAppBlockingPolicy> CREATOR;
337 field public final android.car.content.pm.AppBlockingPackageInfo[] blacklists;
338 field public final android.car.content.pm.AppBlockingPackageInfo[] whitelists;
339 }
340
341 public abstract class CarAppBlockingPolicyService extends android.app.Service {
342 ctor public CarAppBlockingPolicyService();
343 method protected abstract android.car.content.pm.CarAppBlockingPolicy getAppBlockingPolicy();
344 method public android.os.IBinder onBind(android.content.Intent);
345 field public static final java.lang.String SERVICE_INTERFACE = "android.car.content.pm.CarAppBlockingPolicyService";
346 }
347
Keun-young Park4cf69112016-10-04 10:02:59 -0700348 public final class CarPackageManager {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700349 method public boolean isActivityAllowedWhileDriving(java.lang.String, java.lang.String) throws android.car.CarNotConnectedException;
Keun-young Park4727da32016-05-31 10:00:51 -0700350 method public boolean isActivityBackedBySafeActivity(android.content.ComponentName) throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700351 method public boolean isServiceAllowedWhileDriving(java.lang.String, java.lang.String) throws android.car.CarNotConnectedException;
352 method public void setAppBlockingPolicy(java.lang.String, android.car.content.pm.CarAppBlockingPolicy, int) throws android.car.CarNotConnectedException, java.lang.IllegalArgumentException, java.lang.SecurityException;
353 field public static final int FLAG_SET_POLICY_ADD = 2; // 0x2
354 field public static final int FLAG_SET_POLICY_REMOVE = 4; // 0x4
355 field public static final int FLAG_SET_POLICY_WAIT_FOR_CHANGE = 1; // 0x1
356 }
357
358}
359
Enrico Granata25e89462017-08-02 11:41:31 -0700360package android.car.diagnostic {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700361
Enrico Granataae25b922017-07-07 11:28:15 -0700362 public class CarDiagnosticEvent implements android.os.Parcelable {
363 ctor public CarDiagnosticEvent(android.os.Parcel);
364 method public int describeContents();
365 method public java.lang.Integer getFuelSystemStatus();
366 method public java.lang.Integer getFuelType();
Enrico Granata25e89462017-08-02 11:41:31 -0700367 method public android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors getIgnitionMonitors();
Enrico Granataae25b922017-07-07 11:28:15 -0700368 method public java.lang.Integer getSecondaryAirStatus();
369 method public float getSystemFloatSensor(int, float);
370 method public java.lang.Float getSystemFloatSensor(int);
371 method public int getSystemIntegerSensor(int, int);
372 method public java.lang.Integer getSystemIntegerSensor(int);
373 method public float getVendorFloatSensor(int, float);
374 method public java.lang.Float getVendorFloatSensor(int);
375 method public int getVendorIntegerSensor(int, int);
376 method public java.lang.Integer getVendorIntegerSensor(int);
Enrico Granataae25b922017-07-07 11:28:15 -0700377 method public boolean isFreezeFrame();
378 method public boolean isLiveFrame();
379 method public void writeToJson(android.util.JsonWriter) throws java.io.IOException;
380 method public void writeToParcel(android.os.Parcel, int);
Enrico Granata25e89462017-08-02 11:41:31 -0700381 field public static final android.os.Parcelable.Creator<android.car.diagnostic.CarDiagnosticEvent> CREATOR;
Enrico Granataae25b922017-07-07 11:28:15 -0700382 field public final java.lang.String dtc;
383 field public final int frameType;
384 field public final long timestamp;
385 }
386
387 public static class CarDiagnosticEvent.Builder {
Enrico Granata25e89462017-08-02 11:41:31 -0700388 method public android.car.diagnostic.CarDiagnosticEvent.Builder atTimestamp(long);
389 method public android.car.diagnostic.CarDiagnosticEvent build();
390 method public static android.car.diagnostic.CarDiagnosticEvent.Builder newFreezeFrameBuilder();
391 method public static android.car.diagnostic.CarDiagnosticEvent.Builder newLiveFrameBuilder();
392 method public android.car.diagnostic.CarDiagnosticEvent.Builder withDtc(java.lang.String);
393 method public android.car.diagnostic.CarDiagnosticEvent.Builder withFloatValue(int, float);
394 method public android.car.diagnostic.CarDiagnosticEvent.Builder withIntValue(int, int);
Enrico Granataae25b922017-07-07 11:28:15 -0700395 }
396
Enrico Granataf8747712017-07-28 15:25:27 -0700397 public static class CarDiagnosticEvent.CommonIgnitionMonitors {
Enrico Granata25e89462017-08-02 11:41:31 -0700398 method public android.car.diagnostic.CarDiagnosticEvent.CompressionIgnitionMonitors asCompressionIgnitionMonitors();
399 method public android.car.diagnostic.CarDiagnosticEvent.SparkIgnitionMonitors asSparkIgnitionMonitors();
400 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor components;
401 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor fuelSystem;
402 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor misfire;
Enrico Granataf8747712017-07-28 15:25:27 -0700403 }
404
Enrico Granata25e89462017-08-02 11:41:31 -0700405 public static final class CarDiagnosticEvent.CompressionIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors {
406 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGROrVVT;
407 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NMHCCatalyst;
408 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor NOxSCR;
409 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor PMFilter;
410 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor boostPressure;
411 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor exhaustGasSensor;
Enrico Granataf8747712017-07-28 15:25:27 -0700412 }
413
Enrico Granataae25b922017-07-07 11:28:15 -0700414 public static final class CarDiagnosticEvent.FuelSystemStatus {
415 field public static final int CLOSED_LOOP = 2; // 0x2
416 field public static final int CLOSED_LOOP_BUT_FEEDBACK_FAULT = 16; // 0x10
417 field public static final int OPEN_ENGINE_LOAD_OR_DECELERATION = 4; // 0x4
418 field public static final int OPEN_INSUFFICIENT_ENGINE_TEMPERATURE = 1; // 0x1
419 field public static final int OPEN_SYSTEM_FAILURE = 8; // 0x8
420 }
421
422 public static abstract class CarDiagnosticEvent.FuelSystemStatus.Status implements java.lang.annotation.Annotation {
423 }
424
425 public static final class CarDiagnosticEvent.FuelType {
426 field public static final int BIFUEL_RUNNING_CNG = 13; // 0xd
427 field public static final int BIFUEL_RUNNING_DIESEL = 23; // 0x17
428 field public static final int BIFUEL_RUNNING_ELECTRIC = 15; // 0xf
429 field public static final int BIFUEL_RUNNING_ELECTRIC_AND_COMBUSTION = 16; // 0x10
430 field public static final int BIFUEL_RUNNING_ETHANOL = 11; // 0xb
431 field public static final int BIFUEL_RUNNING_GASOLINE = 9; // 0x9
432 field public static final int BIFUEL_RUNNING_LPG = 12; // 0xc
433 field public static final int BIFUEL_RUNNING_METHANOL = 10; // 0xa
434 field public static final int BIFUEL_RUNNING_PROPANE = 14; // 0xe
435 field public static final int CNG = 6; // 0x6
436 field public static final int DIESEL = 4; // 0x4
437 field public static final int ELECTRIC = 8; // 0x8
438 field public static final int ETHANOL = 3; // 0x3
439 field public static final int GASOLINE = 1; // 0x1
440 field public static final int HYBRID_DIESEL = 19; // 0x13
441 field public static final int HYBRID_ELECTRIC = 20; // 0x14
442 field public static final int HYBRID_ETHANOL = 18; // 0x12
443 field public static final int HYBRID_GASOLINE = 17; // 0x11
444 field public static final int HYBRID_REGENERATIVE = 22; // 0x16
445 field public static final int HYBRID_RUNNING_ELECTRIC_AND_COMBUSTION = 21; // 0x15
446 field public static final int LPG = 5; // 0x5
447 field public static final int METHANOL = 2; // 0x2
448 field public static final int NOT_AVAILABLE = 0; // 0x0
449 field public static final int PROPANE = 7; // 0x7
450 }
451
452 public static abstract class CarDiagnosticEvent.FuelType.Type implements java.lang.annotation.Annotation {
453 }
454
Enrico Granataf8747712017-07-28 15:25:27 -0700455 public static final class CarDiagnosticEvent.IgnitionMonitor {
Enrico Granataae25b922017-07-07 11:28:15 -0700456 field public final boolean available;
457 field public final boolean incomplete;
458 }
459
Enrico Granataae25b922017-07-07 11:28:15 -0700460 public static final class CarDiagnosticEvent.SecondaryAirStatus {
461 field public static final int DOWNSTREAM_OF_CATALYCIC_CONVERTER = 2; // 0x2
462 field public static final int FROM_OUTSIDE_OR_OFF = 4; // 0x4
463 field public static final int PUMP_ON_FOR_DIAGNOSTICS = 8; // 0x8
464 field public static final int UPSTREAM = 1; // 0x1
465 }
466
467 public static abstract class CarDiagnosticEvent.SecondaryAirStatus.Status implements java.lang.annotation.Annotation {
468 }
469
Enrico Granata25e89462017-08-02 11:41:31 -0700470 public static final class CarDiagnosticEvent.SparkIgnitionMonitors extends android.car.diagnostic.CarDiagnosticEvent.CommonIgnitionMonitors {
471 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor ACRefrigerant;
472 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor EGR;
473 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor catalyst;
474 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor evaporativeSystem;
475 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor heatedCatalyst;
476 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensor;
477 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor oxygenSensorHeater;
478 field public final android.car.diagnostic.CarDiagnosticEvent.IgnitionMonitor secondaryAirSystem;
Enrico Granataf8747712017-07-28 15:25:27 -0700479 }
480
Enrico Granataae25b922017-07-07 11:28:15 -0700481 public final class CarDiagnosticManager {
Enrico Granataae25b922017-07-07 11:28:15 -0700482 method public boolean clearFreezeFrames(long...) throws android.car.CarNotConnectedException;
Enrico Granata25e89462017-08-02 11:41:31 -0700483 method public android.car.diagnostic.CarDiagnosticEvent getFreezeFrame(long) throws android.car.CarNotConnectedException;
Enrico Granataae25b922017-07-07 11:28:15 -0700484 method public long[] getFreezeFrameTimestamps() throws android.car.CarNotConnectedException;
Enrico Granata25e89462017-08-02 11:41:31 -0700485 method public android.car.diagnostic.CarDiagnosticEvent getLatestLiveFrame() throws android.car.CarNotConnectedException;
Enrico Granata2e3b49a2017-07-27 14:51:52 -0700486 method public boolean isClearFreezeFramesSupported() throws android.car.CarNotConnectedException;
487 method public boolean isFreezeFrameNotificationSupported() throws android.car.CarNotConnectedException;
488 method public boolean isGetFreezeFrameSupported() throws android.car.CarNotConnectedException;
Enrico Granataae25b922017-07-07 11:28:15 -0700489 method public boolean isLiveFrameSupported() throws android.car.CarNotConnectedException;
Enrico Granata57ec2702017-08-11 11:06:35 -0700490 method public boolean isSelectiveClearFreezeFramesSupported() throws android.car.CarNotConnectedException;
Enrico Granataae25b922017-07-07 11:28:15 -0700491 method public void onCarDisconnected();
Enrico Granata25e89462017-08-02 11:41:31 -0700492 method public boolean registerListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener, int, int) throws android.car.CarNotConnectedException, java.lang.IllegalArgumentException;
493 method public void unregisterListener(android.car.diagnostic.CarDiagnosticManager.OnDiagnosticEventListener);
Enrico Granataae25b922017-07-07 11:28:15 -0700494 field public static final int FRAME_TYPE_FREEZE = 1; // 0x1
495 field public static final int FRAME_TYPE_LIVE = 0; // 0x0
496 }
497
498 public static abstract class CarDiagnosticManager.FrameType implements java.lang.annotation.Annotation {
499 }
500
501 public static abstract interface CarDiagnosticManager.OnDiagnosticEventListener {
Enrico Granata25e89462017-08-02 11:41:31 -0700502 method public abstract void onDiagnosticEvent(android.car.diagnostic.CarDiagnosticEvent);
Enrico Granataae25b922017-07-07 11:28:15 -0700503 }
504
Enrico Granata25e89462017-08-02 11:41:31 -0700505 public final class FloatSensorIndex {
506 field public static final int ABSOLUTE_EVAPORATION_SYSTEM_VAPOR_PRESSURE = 58; // 0x3a
507 field public static final int ABSOLUTE_LOAD_VALUE = 48; // 0x30
508 field public static final int ABSOLUTE_THROTTLE_POSITION_B = 51; // 0x33
509 field public static final int ABSOLUTE_THROTTLE_POSITION_C = 52; // 0x34
510 field public static final int ACCELERATOR_PEDAL_POSITION_D = 53; // 0x35
511 field public static final int ACCELERATOR_PEDAL_POSITION_E = 54; // 0x36
512 field public static final int ACCELERATOR_PEDAL_POSITION_F = 55; // 0x37
513 field public static final int CALCULATED_ENGINE_LOAD = 0; // 0x0
514 field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR1 = 44; // 0x2c
515 field public static final int CATALYST_TEMPERATURE_BANK1_SENSOR2 = 46; // 0x2e
516 field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR1 = 45; // 0x2d
517 field public static final int CATALYST_TEMPERATURE_BANK2_SENSOR2 = 47; // 0x2f
518 field public static final int COMMANDED_EVAPORATIVE_PURGE = 41; // 0x29
519 field public static final int COMMANDED_EXHAUST_GAS_RECIRCULATION = 39; // 0x27
520 field public static final int COMMANDED_THROTTLE_ACTUATOR = 56; // 0x38
521 field public static final int ENGINE_COOLANT_TEMPERATURE = 1; // 0x1
522 field public static final int ENGINE_FUEL_RATE = 70; // 0x46
523 field public static final int ENGINE_RPM = 8; // 0x8
524 field public static final int ETHANOL_FUEL_PERCENTAGE = 57; // 0x39
525 field public static final int EVAPORATION_SYSTEM_VAPOR_PRESSURE = 43; // 0x2b
526 field public static final int EXHAUST_GAS_RECIRCULATION_ERROR = 40; // 0x28
527 field public static final int FUEL_AIR_COMMANDED_EQUIVALENCE_RATIO = 49; // 0x31
528 field public static final int FUEL_INJECTION_TIMING = 69; // 0x45
529 field public static final int FUEL_PRESSURE = 6; // 0x6
530 field public static final int FUEL_RAIL_GAUGE_PRESSURE = 38; // 0x26
531 field public static final int FUEL_RAIL_PRESSURE = 37; // 0x25
532 field public static final int FUEL_TANK_LEVEL_INPUT = 42; // 0x2a
533 field public static final int HYBRID_BATTERY_PACK_REMAINING_LIFE = 68; // 0x44
534 field public static final int INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 7; // 0x7
535 field public static final int LAST_SYSTEM = 70; // 0x46
536 field public static final int LONG_TERM_FUEL_TRIM_BANK1 = 3; // 0x3
537 field public static final int LONG_TERM_FUEL_TRIM_BANK2 = 5; // 0x5
538 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 63; // 0x3f
539 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 64; // 0x40
540 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 65; // 0x41
541 field public static final int LONG_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 66; // 0x42
542 field public static final int MAF_AIR_FLOW_RATE = 11; // 0xb
543 field public static final int OXYGEN_SENSOR1_FUEL_AIR_EQUIVALENCE_RATIO = 15; // 0xf
544 field public static final int OXYGEN_SENSOR1_SHORT_TERM_FUEL_TRIM = 14; // 0xe
545 field public static final int OXYGEN_SENSOR1_VOLTAGE = 13; // 0xd
546 field public static final int OXYGEN_SENSOR2_FUEL_AIR_EQUIVALENCE_RATIO = 18; // 0x12
547 field public static final int OXYGEN_SENSOR2_SHORT_TERM_FUEL_TRIM = 17; // 0x11
548 field public static final int OXYGEN_SENSOR2_VOLTAGE = 16; // 0x10
549 field public static final int OXYGEN_SENSOR3_FUEL_AIR_EQUIVALENCE_RATIO = 21; // 0x15
550 field public static final int OXYGEN_SENSOR3_SHORT_TERM_FUEL_TRIM = 20; // 0x14
551 field public static final int OXYGEN_SENSOR3_VOLTAGE = 19; // 0x13
552 field public static final int OXYGEN_SENSOR4_FUEL_AIR_EQUIVALENCE_RATIO = 24; // 0x18
553 field public static final int OXYGEN_SENSOR4_SHORT_TERM_FUEL_TRIM = 23; // 0x17
554 field public static final int OXYGEN_SENSOR4_VOLTAGE = 22; // 0x16
555 field public static final int OXYGEN_SENSOR5_FUEL_AIR_EQUIVALENCE_RATIO = 27; // 0x1b
556 field public static final int OXYGEN_SENSOR5_SHORT_TERM_FUEL_TRIM = 26; // 0x1a
557 field public static final int OXYGEN_SENSOR5_VOLTAGE = 25; // 0x19
558 field public static final int OXYGEN_SENSOR6_FUEL_AIR_EQUIVALENCE_RATIO = 30; // 0x1e
559 field public static final int OXYGEN_SENSOR6_SHORT_TERM_FUEL_TRIM = 29; // 0x1d
560 field public static final int OXYGEN_SENSOR6_VOLTAGE = 28; // 0x1c
561 field public static final int OXYGEN_SENSOR7_FUEL_AIR_EQUIVALENCE_RATIO = 33; // 0x21
562 field public static final int OXYGEN_SENSOR7_SHORT_TERM_FUEL_TRIM = 32; // 0x20
563 field public static final int OXYGEN_SENSOR7_VOLTAGE = 31; // 0x1f
564 field public static final int OXYGEN_SENSOR8_FUEL_AIR_EQUIVALENCE_RATIO = 36; // 0x24
565 field public static final int OXYGEN_SENSOR8_SHORT_TERM_FUEL_TRIM = 35; // 0x23
566 field public static final int OXYGEN_SENSOR8_VOLTAGE = 34; // 0x22
567 field public static final int RELATIVE_ACCELERATOR_PEDAL_POSITION = 67; // 0x43
568 field public static final int RELATIVE_THROTTLE_POSITION = 50; // 0x32
569 field public static final int SHORT_TERM_FUEL_TRIM_BANK1 = 2; // 0x2
570 field public static final int SHORT_TERM_FUEL_TRIM_BANK2 = 4; // 0x4
571 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK1 = 59; // 0x3b
572 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK2 = 60; // 0x3c
573 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK3 = 61; // 0x3d
574 field public static final int SHORT_TERM_SECONDARY_OXYGEN_SENSOR_TRIM_BANK4 = 62; // 0x3e
575 field public static final int THROTTLE_POSITION = 12; // 0xc
576 field public static final int TIMING_ADVANCE = 10; // 0xa
577 field public static final int VEHICLE_SPEED = 9; // 0x9
578 field public static final int VENDOR_START = 71; // 0x47
579 }
580
581 public final class IntegerSensorIndex {
582 field public static final int ABSOLUTE_BAROMETRIC_PRESSURE = 11; // 0xb
583 field public static final int AMBIENT_AIR_TEMPERATURE = 13; // 0xd
584 field public static final int COMMANDED_SECONDARY_AIR_STATUS = 5; // 0x5
585 field public static final int CONTROL_MODULE_VOLTAGE = 12; // 0xc
586 field public static final int DISTANCE_TRAVELED_SINCE_CODES_CLEARED = 10; // 0xa
587 field public static final int DISTANCE_TRAVELED_WITH_MALFUNCTION_INDICATOR_LIGHT_ON = 8; // 0x8
588 field public static final int DRIVER_DEMAND_PERCENT_TORQUE = 24; // 0x18
589 field public static final int ENGINE_ACTUAL_PERCENT_TORQUE = 25; // 0x19
590 field public static final int ENGINE_OIL_TEMPERATURE = 23; // 0x17
591 field public static final int ENGINE_PERCENT_TORQUE_DATA_IDLE = 27; // 0x1b
592 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT1 = 28; // 0x1c
593 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT2 = 29; // 0x1d
594 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT3 = 30; // 0x1e
595 field public static final int ENGINE_PERCENT_TORQUE_DATA_POINT4 = 31; // 0x1f
596 field public static final int ENGINE_REFERENCE_PERCENT_TORQUE = 26; // 0x1a
597 field public static final int FUEL_RAIL_ABSOLUTE_PRESSURE = 22; // 0x16
598 field public static final int FUEL_SYSTEM_STATUS = 0; // 0x0
599 field public static final int FUEL_TYPE = 21; // 0x15
600 field public static final int IGNITION_MONITORS_SUPPORTED = 2; // 0x2
601 field public static final int IGNITION_SPECIFIC_MONITORS = 3; // 0x3
602 field public static final int INTAKE_AIR_TEMPERATURE = 4; // 0x4
603 field public static final int LAST_SYSTEM = 31; // 0x1f
604 field public static final int MALFUNCTION_INDICATOR_LIGHT_ON = 1; // 0x1
605 field public static final int MAX_AIR_FLOW_RATE_FROM_MASS_AIR_FLOW_SENSOR = 20; // 0x14
606 field public static final int MAX_FUEL_AIR_EQUIVALENCE_RATIO = 16; // 0x10
607 field public static final int MAX_INTAKE_MANIFOLD_ABSOLUTE_PRESSURE = 19; // 0x13
608 field public static final int MAX_OXYGEN_SENSOR_CURRENT = 18; // 0x12
609 field public static final int MAX_OXYGEN_SENSOR_VOLTAGE = 17; // 0x11
610 field public static final int NUM_OXYGEN_SENSORS_PRESENT = 6; // 0x6
611 field public static final int RUNTIME_SINCE_ENGINE_START = 7; // 0x7
612 field public static final int TIME_SINCE_TROUBLE_CODES_CLEARED = 15; // 0xf
613 field public static final int TIME_WITH_MALFUNCTION_LIGHT_ON = 14; // 0xe
614 field public static final int VENDOR_START = 32; // 0x20
615 field public static final int WARMUPS_SINCE_CODES_CLEARED = 9; // 0x9
616 }
617
618}
619
620package android.car.hardware {
621
Keun-young Park60891562016-09-28 11:16:02 -0700622 public class CarPropertyConfig<T> implements android.os.Parcelable {
Steve Paikfb5f6232016-03-28 10:31:25 -0700623 method public int describeContents();
624 method public int getAreaCount();
625 method public int[] getAreaIds();
626 method public int getAreaType();
627 method public int getFirstAndOnlyAreaId();
628 method public T getMaxValue(int);
629 method public T getMaxValue();
630 method public T getMinValue(int);
631 method public T getMinValue();
632 method public int getPropertyId();
633 method public java.lang.Class<T> getPropertyType();
634 method public boolean hasArea(int);
635 method public boolean isGlobalProperty();
Keun-young Park60891562016-09-28 11:16:02 -0700636 method public static <T> android.car.hardware.CarPropertyConfig.Builder<T> newBuilder(java.lang.Class<T>, int, int, int);
637 method public static <T> android.car.hardware.CarPropertyConfig.Builder<T> newBuilder(java.lang.Class<T>, int, int);
Steve Paikfb5f6232016-03-28 10:31:25 -0700638 method public void writeToParcel(android.os.Parcel, int);
639 field public static final android.os.Parcelable.Creator<android.car.hardware.CarPropertyConfig> CREATOR;
640 }
641
Keun-young Park60891562016-09-28 11:16:02 -0700642 public static class CarPropertyConfig.AreaConfig<T> implements android.os.Parcelable {
Steve Paikfb5f6232016-03-28 10:31:25 -0700643 method public int describeContents();
644 method public T getMaxValue();
645 method public T getMinValue();
646 method public void writeToParcel(android.os.Parcel, int);
647 field public static final android.os.Parcelable.Creator<android.car.hardware.CarPropertyConfig.AreaConfig<java.lang.Object>> CREATOR;
648 }
649
Keun-young Park60891562016-09-28 11:16:02 -0700650 public static class CarPropertyConfig.Builder<T> {
Steve Paikfb5f6232016-03-28 10:31:25 -0700651 method public android.car.hardware.CarPropertyConfig.Builder<T> addArea(int);
652 method public android.car.hardware.CarPropertyConfig.Builder<T> addAreaConfig(int, T, T);
653 method public android.car.hardware.CarPropertyConfig.Builder<T> addAreas(int[]);
654 method public android.car.hardware.CarPropertyConfig<T> build();
655 }
656
Keun-young Park60891562016-09-28 11:16:02 -0700657 public class CarPropertyValue<T> implements android.os.Parcelable {
Steve Paikfb5f6232016-03-28 10:31:25 -0700658 ctor public CarPropertyValue(int, T);
659 ctor public CarPropertyValue(int, int, T);
660 ctor public CarPropertyValue(android.os.Parcel);
661 method public int describeContents();
662 method public int getAreaId();
663 method public int getPropertyId();
664 method public T getValue();
665 method public void writeToParcel(android.os.Parcel, int);
666 field public static final android.os.Parcelable.Creator<android.car.hardware.CarPropertyValue> CREATOR;
667 }
668
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700669 public class CarSensorEvent implements android.os.Parcelable {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700670 method public int describeContents();
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700671 method public void writeToParcel(android.os.Parcel, int);
672 field public static final android.os.Parcelable.Creator<android.car.hardware.CarSensorEvent> CREATOR;
673 field public static final int DRIVE_STATUS_FULLY_RESTRICTED = 31; // 0x1f
674 field public static final int DRIVE_STATUS_LIMIT_MESSAGE_LEN = 16; // 0x10
675 field public static final int DRIVE_STATUS_NO_CONFIG = 8; // 0x8
676 field public static final int DRIVE_STATUS_NO_KEYBOARD_INPUT = 2; // 0x2
677 field public static final int DRIVE_STATUS_NO_VIDEO = 1; // 0x1
678 field public static final int DRIVE_STATUS_NO_VOICE_INPUT = 4; // 0x4
679 field public static final int DRIVE_STATUS_UNRESTRICTED = 0; // 0x0
680 field public static final int GEAR_DRIVE = 100; // 0x64
681 field public static final int GEAR_EIGHTH = 8; // 0x8
682 field public static final int GEAR_FIFTH = 5; // 0x5
683 field public static final int GEAR_FIRST = 1; // 0x1
684 field public static final int GEAR_FOURTH = 4; // 0x4
685 field public static final int GEAR_NEUTRAL = 0; // 0x0
686 field public static final int GEAR_NINTH = 9; // 0x9
687 field public static final int GEAR_PARK = 101; // 0x65
688 field public static final int GEAR_REVERSE = 102; // 0x66
689 field public static final int GEAR_SECOND = 2; // 0x2
690 field public static final int GEAR_SEVENTH = 7; // 0x7
691 field public static final int GEAR_SIXTH = 6; // 0x6
692 field public static final int GEAR_TENTH = 10; // 0xa
693 field public static final int GEAR_THIRD = 3; // 0x3
Pavel Maltsev1e5a88b2016-12-15 17:51:29 -0800694 field public static final int IGNITION_STATE_ACC = 3; // 0x3
695 field public static final int IGNITION_STATE_LOCK = 1; // 0x1
696 field public static final int IGNITION_STATE_OFF = 2; // 0x2
697 field public static final int IGNITION_STATE_ON = 4; // 0x4
698 field public static final int IGNITION_STATE_START = 5; // 0x5
699 field public static final int IGNITION_STATE_UNDEFINED = 0; // 0x0
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700700 field public static final int INDEX_ENVIRONMENT_PRESSURE = 1; // 0x1
701 field public static final int INDEX_ENVIRONMENT_TEMPERATURE = 0; // 0x0
702 field public static final int INDEX_FUEL_LEVEL_IN_DISTANCE = 1; // 0x1
703 field public static final int INDEX_FUEL_LEVEL_IN_PERCENTILE = 0; // 0x0
704 field public static final int INDEX_FUEL_LOW_WARNING = 0; // 0x0
Steve Paik289ab992017-07-11 22:40:57 -0700705 field public static final int INDEX_WHEEL_DISTANCE_FRONT_LEFT = 1; // 0x1
706 field public static final int INDEX_WHEEL_DISTANCE_FRONT_RIGHT = 2; // 0x2
707 field public static final int INDEX_WHEEL_DISTANCE_REAR_LEFT = 4; // 0x4
708 field public static final int INDEX_WHEEL_DISTANCE_REAR_RIGHT = 3; // 0x3
709 field public static final int INDEX_WHEEL_DISTANCE_RESET_COUNT = 0; // 0x0
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700710 field public final float[] floatValues;
711 field public final int[] intValues;
Steve Paik289ab992017-07-11 22:40:57 -0700712 field public final long[] longValues;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700713 field public int sensorType;
Jason Tholstrupd72b5352016-09-22 16:32:14 -0700714 field public long timestamp;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700715 }
716
717 public static class CarSensorEvent.EnvironmentData {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700718 field public float pressure;
719 field public float temperature;
Jason Tholstrupd72b5352016-09-22 16:32:14 -0700720 field public long timestamp;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700721 }
722
Keun-young Park4cf69112016-10-04 10:02:59 -0700723 public final class CarSensorManager {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700724 method public android.car.hardware.CarSensorEvent getLatestSensorEvent(int) throws android.car.CarNotConnectedException;
725 method public int[] getSupportedSensors() throws android.car.CarNotConnectedException;
726 method public boolean isSensorSupported(int) throws android.car.CarNotConnectedException;
727 method public static boolean isSensorSupported(int[], int);
Jason Tholstrupd72b5352016-09-22 16:32:14 -0700728 method public boolean registerListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int, int) throws android.car.CarNotConnectedException, java.lang.IllegalArgumentException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700729 method public void unregisterListener(android.car.hardware.CarSensorManager.OnSensorChangedListener);
730 method public void unregisterListener(android.car.hardware.CarSensorManager.OnSensorChangedListener, int);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700731 field public static final int SENSOR_RATE_FAST = 1; // 0x1
732 field public static final int SENSOR_RATE_FASTEST = 0; // 0x0
733 field public static final int SENSOR_RATE_NORMAL = 3; // 0x3
734 field public static final int SENSOR_RATE_UI = 2; // 0x2
Steve Paik289ab992017-07-11 22:40:57 -0700735 field public static final int SENSOR_TYPE_ABS_ACTIVE = 24; // 0x18
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700736 field public static final int SENSOR_TYPE_CAR_SPEED = 2; // 0x2
Jason Tholstrup9eae32f2016-05-10 14:39:05 -0700737 field public static final int SENSOR_TYPE_DRIVING_STATUS = 11; // 0xb
738 field public static final int SENSOR_TYPE_ENVIRONMENT = 12; // 0xc
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700739 field public static final int SENSOR_TYPE_FUEL_LEVEL = 5; // 0x5
740 field public static final int SENSOR_TYPE_GEAR = 7; // 0x7
Pavel Maltsev1e5a88b2016-12-15 17:51:29 -0800741 field public static final int SENSOR_TYPE_IGNITION_STATE = 22; // 0x16
Jason Tholstrup9eae32f2016-05-10 14:39:05 -0700742 field public static final int SENSOR_TYPE_NIGHT = 9; // 0x9
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700743 field public static final int SENSOR_TYPE_ODOMETER = 4; // 0x4
744 field public static final int SENSOR_TYPE_PARKING_BRAKE = 6; // 0x6
745 field public static final int SENSOR_TYPE_RPM = 3; // 0x3
Steve Paik289ab992017-07-11 22:40:57 -0700746 field public static final int SENSOR_TYPE_TRACTION_CONTROL_ACTIVE = 25; // 0x19
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700747 field public static final int SENSOR_TYPE_VENDOR_EXTENSION_END = 1879048191; // 0x6fffffff
Steve Paik289ab992017-07-11 22:40:57 -0700748 field public static final int SENSOR_TYPE_WHEEL_TICK_DISTANCE = 23; // 0x17
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700749 }
750
Jason Tholstrupd72b5352016-09-22 16:32:14 -0700751 public static abstract interface CarSensorManager.OnSensorChangedListener {
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700752 method public abstract void onSensorChanged(android.car.hardware.CarSensorEvent);
753 }
754
Keun-young Park4cf69112016-10-04 10:02:59 -0700755 public final class CarVendorExtensionManager {
Keun-young Park60891562016-09-28 11:16:02 -0700756 method public <E> E getGlobalProperty(java.lang.Class<E>, int) throws android.car.CarNotConnectedException;
Pavel Maltsev634e1ff2016-07-14 15:41:26 -0700757 method public java.util.List<android.car.hardware.CarPropertyConfig> getProperties() throws android.car.CarNotConnectedException;
Keun-young Park60891562016-09-28 11:16:02 -0700758 method public <E> E getProperty(java.lang.Class<E>, int, int) throws android.car.CarNotConnectedException;
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700759 method public void registerCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback) throws android.car.CarNotConnectedException;
Keun-young Park60891562016-09-28 11:16:02 -0700760 method public <E> void setGlobalProperty(java.lang.Class<E>, int, E) throws android.car.CarNotConnectedException;
761 method public <E> void setProperty(java.lang.Class<E>, int, int, E) throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700762 method public void unregisterCallback(android.car.hardware.CarVendorExtensionManager.CarVendorExtensionCallback);
Pavel Maltsev634e1ff2016-07-14 15:41:26 -0700763 }
764
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700765 public static abstract interface CarVendorExtensionManager.CarVendorExtensionCallback {
Pavel Maltsev634e1ff2016-07-14 15:41:26 -0700766 method public abstract void onChangeEvent(android.car.hardware.CarPropertyValue);
767 method public abstract void onErrorEvent(int, int);
768 }
769
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700770}
771
Steve Paik43c04a72016-07-08 19:12:09 -0700772package android.car.hardware.cabin {
773
Keun-young Park4cf69112016-10-04 10:02:59 -0700774 public final class CarCabinManager {
Steve Paik43c04a72016-07-08 19:12:09 -0700775 method public boolean getBooleanProperty(int, int) throws android.car.CarNotConnectedException;
776 method public float getFloatProperty(int, int) throws android.car.CarNotConnectedException;
777 method public int getIntProperty(int, int) throws android.car.CarNotConnectedException;
778 method public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList() throws android.car.CarNotConnectedException;
779 method public static boolean isZonedProperty(int);
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700780 method public synchronized void registerCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback) throws android.car.CarNotConnectedException;
Steve Paik43c04a72016-07-08 19:12:09 -0700781 method public void setBooleanProperty(int, int, boolean) throws android.car.CarNotConnectedException;
782 method public void setFloatProperty(int, int, float) throws android.car.CarNotConnectedException;
783 method public void setIntProperty(int, int, int) throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700784 method public synchronized void unregisterCallback(android.car.hardware.cabin.CarCabinManager.CarCabinEventCallback);
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700785 field public static final int ID_DOOR_LOCK = 3; // 0x3
786 field public static final int ID_DOOR_MOVE = 2; // 0x2
787 field public static final int ID_DOOR_POS = 1; // 0x1
788 field public static final int ID_MIRROR_FOLD = 4102; // 0x1006
789 field public static final int ID_MIRROR_LOCK = 4101; // 0x1005
790 field public static final int ID_MIRROR_Y_MOVE = 4100; // 0x1004
791 field public static final int ID_MIRROR_Y_POS = 4099; // 0x1003
792 field public static final int ID_MIRROR_Z_MOVE = 4098; // 0x1002
793 field public static final int ID_MIRROR_Z_POS = 4097; // 0x1001
794 field public static final int ID_SEAT_BACKREST_ANGLE_1_MOVE = 8201; // 0x2009
795 field public static final int ID_SEAT_BACKREST_ANGLE_1_POS = 8200; // 0x2008
796 field public static final int ID_SEAT_BACKREST_ANGLE_2_MOVE = 8203; // 0x200b
797 field public static final int ID_SEAT_BACKREST_ANGLE_2_POS = 8202; // 0x200a
798 field public static final int ID_SEAT_BELT_BUCKLED = 8195; // 0x2003
799 field public static final int ID_SEAT_BELT_HEIGHT_MOVE = 8197; // 0x2005
800 field public static final int ID_SEAT_BELT_HEIGHT_POS = 8196; // 0x2004
801 field public static final int ID_SEAT_DEPTH_MOVE = 8207; // 0x200f
802 field public static final int ID_SEAT_DEPTH_POS = 8206; // 0x200e
803 field public static final int ID_SEAT_FORE_AFT_MOVE = 8199; // 0x2007
804 field public static final int ID_SEAT_FORE_AFT_POS = 8198; // 0x2006
805 field public static final int ID_SEAT_HEADREST_ANGLE_MOVE = 8217; // 0x2019
806 field public static final int ID_SEAT_HEADREST_ANGLE_POS = 8216; // 0x2018
807 field public static final int ID_SEAT_HEADREST_FORE_AFT_MOVE = 8219; // 0x201b
808 field public static final int ID_SEAT_HEADREST_FORE_AFT_POS = 8218; // 0x201a
809 field public static final int ID_SEAT_HEADREST_HEIGHT_MOVE = 8215; // 0x2017
810 field public static final int ID_SEAT_HEADREST_HEIGHT_POS = 8214; // 0x2016
811 field public static final int ID_SEAT_HEIGHT_MOVE = 8205; // 0x200d
812 field public static final int ID_SEAT_HEIGHT_POS = 8204; // 0x200c
813 field public static final int ID_SEAT_LUMBAR_FORE_AFT_MOVE = 8211; // 0x2013
814 field public static final int ID_SEAT_LUMBAR_FORE_AFT_POS = 8210; // 0x2012
815 field public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_MOVE = 8213; // 0x2015
816 field public static final int ID_SEAT_LUMBAR_SIDE_SUPPORT_POS = 8212; // 0x2014
817 field public static final int ID_SEAT_MEMORY_SELECT = 8193; // 0x2001
818 field public static final int ID_SEAT_MEMORY_SET = 8194; // 0x2002
819 field public static final int ID_SEAT_TILT_MOVE = 8209; // 0x2011
820 field public static final int ID_SEAT_TILT_POS = 8208; // 0x2010
821 field public static final int ID_WINDOW_LOCK = 12293; // 0x3005
822 field public static final int ID_WINDOW_MOVE = 12290; // 0x3002
823 field public static final int ID_WINDOW_POS = 12289; // 0x3001
824 field public static final int ID_WINDOW_VENT_MOVE = 12292; // 0x3004
825 field public static final int ID_WINDOW_VENT_POS = 12291; // 0x3003
Steve Paik43c04a72016-07-08 19:12:09 -0700826 }
827
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700828 public static abstract interface CarCabinManager.CarCabinEventCallback {
Steve Paik43c04a72016-07-08 19:12:09 -0700829 method public abstract void onChangeEvent(android.car.hardware.CarPropertyValue);
830 method public abstract void onErrorEvent(int, int);
831 }
832
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700833}
834
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700835package android.car.hardware.hvac {
836
Keun-young Park4cf69112016-10-04 10:02:59 -0700837 public final class CarHvacManager {
Vitalii Tomkiv235f8ac2016-04-04 11:26:49 -0700838 method public boolean getBooleanProperty(int, int) throws android.car.CarNotConnectedException;
839 method public float getFloatProperty(int, int) throws android.car.CarNotConnectedException;
840 method public int getIntProperty(int, int) throws android.car.CarNotConnectedException;
Steve Paikfb5f6232016-03-28 10:31:25 -0700841 method public java.util.List<android.car.hardware.CarPropertyConfig> getPropertyList() throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700842 method public static boolean isZonedProperty(int);
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700843 method public synchronized void registerCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback) throws android.car.CarNotConnectedException;
Vitalii Tomkiv235f8ac2016-04-04 11:26:49 -0700844 method public void setBooleanProperty(int, int, boolean) throws android.car.CarNotConnectedException;
845 method public void setFloatProperty(int, int, float) throws android.car.CarNotConnectedException;
846 method public void setIntProperty(int, int, int) throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700847 method public synchronized void unregisterCallback(android.car.hardware.hvac.CarHvacManager.CarHvacEventCallback);
Pavel Maltsev5e9202e2017-01-10 14:34:22 -0800848 field public static final int FAN_POSITION_DEFROST = 4; // 0x4
849 field public static final int FAN_POSITION_DEFROST_AND_FLOOR = 5; // 0x5
850 field public static final int FAN_POSITION_FACE = 1; // 0x1
851 field public static final int FAN_POSITION_FACE_AND_FLOOR = 3; // 0x3
852 field public static final int FAN_POSITION_FLOOR = 2; // 0x2
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700853 field public static final int ID_MIRROR_DEFROSTER_ON = 1; // 0x1
854 field public static final int ID_OUTSIDE_AIR_TEMP = 3; // 0x3
855 field public static final int ID_STEERING_WHEEL_TEMP = 2; // 0x2
856 field public static final int ID_TEMPERATURE_UNITS = 4; // 0x4
857 field public static final int ID_WINDOW_DEFROSTER_ON = 20481; // 0x5001
858 field public static final int ID_ZONED_AC_ON = 16393; // 0x4009
859 field public static final int ID_ZONED_AIR_RECIRCULATION_ON = 16395; // 0x400b
860 field public static final int ID_ZONED_AUTOMATIC_MODE_ON = 16394; // 0x400a
861 field public static final int ID_ZONED_DUAL_ZONE_ON = 16397; // 0x400d
862 field public static final int ID_ZONED_FAN_POSITION = 16391; // 0x4007
863 field public static final int ID_ZONED_FAN_POSITION_AVAILABLE = 16390; // 0x4006
864 field public static final int ID_ZONED_FAN_SPEED_RPM = 16389; // 0x4005
865 field public static final int ID_ZONED_FAN_SPEED_SETPOINT = 16388; // 0x4004
Steve Paik595fc672017-06-28 15:49:58 -0700866 field public static final int ID_ZONED_HVAC_AUTO_RECIRC_ON = 16399; // 0x400f
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700867 field public static final int ID_ZONED_HVAC_POWER_ON = 16387; // 0x4003
868 field public static final int ID_ZONED_MAX_AC_ON = 16396; // 0x400c
869 field public static final int ID_ZONED_MAX_DEFROST_ON = 16398; // 0x400e
870 field public static final int ID_ZONED_SEAT_TEMP = 16392; // 0x4008
871 field public static final int ID_ZONED_TEMP_ACTUAL = 16386; // 0x4002
872 field public static final int ID_ZONED_TEMP_SETPOINT = 16385; // 0x4001
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700873 }
874
Keun-young Parkaf2cc992016-10-07 11:46:45 -0700875 public static abstract interface CarHvacManager.CarHvacEventCallback {
Steve Paikfb5f6232016-03-28 10:31:25 -0700876 method public abstract void onChangeEvent(android.car.hardware.CarPropertyValue);
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700877 method public abstract void onErrorEvent(int, int);
878 }
879
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700880}
881
882package android.car.hardware.radio {
883
884 public class CarRadioEvent implements android.os.Parcelable {
885 ctor public CarRadioEvent(int, android.car.hardware.radio.CarRadioPreset);
886 method public int describeContents();
887 method public int getEventType();
888 method public android.car.hardware.radio.CarRadioPreset getPreset();
889 method public void writeToParcel(android.os.Parcel, int);
890 field public static final android.os.Parcelable.Creator<android.car.hardware.radio.CarRadioEvent> CREATOR;
891 field public static final int RADIO_PRESET = 0; // 0x0
892 }
893
Keun-young Park4cf69112016-10-04 10:02:59 -0700894 public final class CarRadioManager {
Vitalii Tomkiv235f8ac2016-04-04 11:26:49 -0700895 method public android.car.hardware.radio.CarRadioPreset getPreset(int) throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700896 method public int getPresetCount() throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700897 method public synchronized void registerListener(android.car.hardware.radio.CarRadioManager.CarRadioEventListener) throws android.car.CarNotConnectedException;
Vitalii Tomkiv235f8ac2016-04-04 11:26:49 -0700898 method public boolean setPreset(android.car.hardware.radio.CarRadioPreset) throws android.car.CarNotConnectedException, java.lang.IllegalArgumentException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700899 method public synchronized void unregisterListener();
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700900 }
901
902 public static abstract interface CarRadioManager.CarRadioEventListener {
903 method public abstract void onEvent(android.car.hardware.radio.CarRadioEvent);
904 }
905
906 public class CarRadioPreset implements android.os.Parcelable {
907 ctor public CarRadioPreset(int, int, int, int);
908 method public int describeContents();
909 method public int getBand();
910 method public int getChannel();
911 method public int getPresetNumber();
912 method public int getSubChannel();
913 method public void writeToParcel(android.os.Parcel, int);
914 field public static final android.os.Parcelable.Creator<android.car.hardware.radio.CarRadioPreset> CREATOR;
915 }
916
917}
918
Vitalii Tomkiv2bd06922016-07-26 11:07:48 -0700919package android.car.input {
920
921 public abstract class CarInputHandlingService extends android.app.Service {
922 ctor protected CarInputHandlingService(android.car.input.CarInputHandlingService.InputFilter[]);
923 method public android.os.IBinder onBind(android.content.Intent);
924 method protected abstract void onKeyEvent(android.view.KeyEvent, int);
925 field public static final int INPUT_CALLBACK_BINDER_CODE = 1; // 0x1
926 field public static final java.lang.String INPUT_CALLBACK_BINDER_KEY = "callback_binder";
927 }
928
929 public static class CarInputHandlingService.InputFilter implements android.os.Parcelable {
930 ctor public CarInputHandlingService.InputFilter(int, int);
931 method public int describeContents();
932 method public void writeToParcel(android.os.Parcel, int);
933 field public static final android.os.Parcelable.Creator CREATOR;
934 field public final int mKeyCode;
935 field public final int mTargetDisplay;
936 }
937
938}
939
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700940package android.car.media {
941
Keun-young Park4cf69112016-10-04 10:02:59 -0700942 public final class CarAudioManager {
Keun-young Park150d8de2016-10-07 15:48:11 -0700943 method public void abandonAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes);
944 method public android.media.AudioAttributes getAudioAttributesForCarUsage(int) throws android.car.CarNotConnectedException;
Yao Chenc4d442f2016-04-08 11:33:47 -0700945 method public int getStreamMaxVolume(int) throws android.car.CarNotConnectedException;
946 method public int getStreamMinVolume(int) throws android.car.CarNotConnectedException;
947 method public int getStreamVolume(int) throws android.car.CarNotConnectedException;
Keun-young Park3cb89102016-05-05 13:16:03 -0700948 method public boolean isMediaMuted() throws android.car.CarNotConnectedException;
Keun-young Park150d8de2016-10-07 15:48:11 -0700949 method public int requestAudioFocus(android.media.AudioManager.OnAudioFocusChangeListener, android.media.AudioAttributes, int, int) throws android.car.CarNotConnectedException, java.lang.IllegalArgumentException;
Keun-young Park3cb89102016-05-05 13:16:03 -0700950 method public boolean setMediaMute(boolean) throws android.car.CarNotConnectedException;
Yao Chenc4d442f2016-04-08 11:33:47 -0700951 method public void setStreamVolume(int, int, int) throws android.car.CarNotConnectedException;
952 method public void setVolumeController(android.media.IVolumeController) throws android.car.CarNotConnectedException;
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700953 field public static final int CAR_AUDIO_USAGE_ALARM = 6; // 0x6
954 field public static final int CAR_AUDIO_USAGE_DEFAULT = 0; // 0x0
955 field public static final int CAR_AUDIO_USAGE_MUSIC = 1; // 0x1
956 field public static final int CAR_AUDIO_USAGE_NAVIGATION_GUIDANCE = 3; // 0x3
957 field public static final int CAR_AUDIO_USAGE_NOTIFICATION = 7; // 0x7
958 field public static final int CAR_AUDIO_USAGE_RADIO = 2; // 0x2
Scott Randolph962ba772017-08-03 20:15:10 -0700959 field public static final int CAR_AUDIO_USAGE_RINGTONE = 10; // 0xa
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700960 field public static final int CAR_AUDIO_USAGE_SYSTEM_SAFETY_ALERT = 9; // 0x9
961 field public static final int CAR_AUDIO_USAGE_SYSTEM_SOUND = 8; // 0x8
962 field public static final int CAR_AUDIO_USAGE_VOICE_CALL = 4; // 0x4
963 field public static final int CAR_AUDIO_USAGE_VOICE_COMMAND = 5; // 0x5
964 }
965
966}
967
968package android.car.navigation {
969
970 public class CarNavigationInstrumentCluster implements android.os.Parcelable {
971 ctor public CarNavigationInstrumentCluster(android.car.navigation.CarNavigationInstrumentCluster);
972 method public static android.car.navigation.CarNavigationInstrumentCluster createCluster(int);
973 method public static android.car.navigation.CarNavigationInstrumentCluster createCustomImageCluster(int, int, int, int);
974 method public int describeContents();
975 method public int getImageColorDepthBits();
976 method public int getImageHeight();
977 method public int getImageWidth();
Keun-young Park3388e782016-10-05 16:28:32 -0700978 method public int getMinIntervalMillis();
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700979 method public int getType();
980 method public boolean supportsCustomImages();
981 method public void writeToParcel(android.os.Parcel, int);
Keun-young Park3388e782016-10-05 16:28:32 -0700982 field public static final int CLUSTER_TYPE_CUSTOM_IMAGES_SUPPORTED = 1; // 0x1
983 field public static final int CLUSTER_TYPE_IMAGE_CODES_ONLY = 2; // 0x2
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700984 field public static final android.os.Parcelable.Creator<android.car.navigation.CarNavigationInstrumentCluster> CREATOR;
985 }
986
Vitalii Tomkiv280b5722016-03-17 16:17:21 -0700987}
988
Yao Chen94d47662016-07-28 14:03:28 -0700989package android.car.settings {
990
991 public class CarSettings {
992 ctor public CarSettings();
993 }
994
995 public static final class CarSettings.Global {
996 ctor public CarSettings.Global();
997 field public static final java.lang.String KEY_GARAGE_MODE_ENABLED = "android.car.GARAGE_MODE_ENABLED";
998 field public static final java.lang.String KEY_GARAGE_MODE_MAINTENANCE_WINDOW = "android.car.GARAGE_MODE_MAINTENANCE_WINDOW";
999 field public static final java.lang.String KEY_GARAGE_MODE_WAKE_UP_TIME = "android.car.GARAGE_MODE_WAKE_UP_TIME";
1000 }
1001
1002}
1003
Enrico Granata9a916d72017-09-19 14:33:08 -07001004package android.car.storagemonitoring {
1005
1006 public final class CarStorageMonitoringManager {
1007 method public int getPreEolIndicatorStatus() throws android.car.CarNotConnectedException;
Enrico Granata1172f882017-09-21 14:51:30 -07001008 method public android.car.storagemonitoring.WearEstimate getWearEstimate() throws android.car.CarNotConnectedException;
Enrico Granata9a916d72017-09-19 14:33:08 -07001009 field public static final int PRE_EOL_INFO_NORMAL = 1; // 0x1
1010 field public static final int PRE_EOL_INFO_UNKNOWN = 0; // 0x0
1011 field public static final int PRE_EOL_INFO_URGENT = 3; // 0x3
1012 field public static final int PRE_EOL_INFO_WARNING = 2; // 0x2
1013 }
1014
Enrico Granata671e68d2017-09-20 10:16:22 -07001015 public class WearEstimate implements android.os.Parcelable {
1016 ctor public WearEstimate(int, int);
1017 ctor public WearEstimate(android.os.Parcel);
1018 ctor public WearEstimate(android.util.JsonReader) throws java.io.IOException;
1019 method public int describeContents();
1020 method public void writeToJson(android.util.JsonWriter) throws java.io.IOException;
1021 method public void writeToParcel(android.os.Parcel, int);
1022 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimate> CREATOR;
1023 field public static final int UNKNOWN = -1; // 0xffffffff
1024 field public final int typeA;
1025 field public final int typeB;
1026 }
1027
1028 public class WearEstimateChange implements android.os.Parcelable {
1029 ctor public WearEstimateChange(android.car.storagemonitoring.WearEstimate, android.car.storagemonitoring.WearEstimate, long, Instant, boolean);
1030 ctor public WearEstimateChange(android.os.Parcel);
1031 method public int describeContents();
1032 method public void writeToParcel(android.os.Parcel, int);
1033 field public static final android.os.Parcelable.Creator<android.car.storagemonitoring.WearEstimateChange> CREATOR;
1034 field public final Instant dateAtChange;
1035 field public final boolean isAcceptableDegradation;
1036 field public final android.car.storagemonitoring.WearEstimate newEstimate;
1037 field public final android.car.storagemonitoring.WearEstimate oldEstimate;
1038 field public final long uptimeAtChange;
1039 }
1040
Enrico Granata9a916d72017-09-19 14:33:08 -07001041}
1042
Vitalii Tomkiv280b5722016-03-17 16:17:21 -07001043package android.car.test {
1044
1045 public class CarTestManagerBinderWrapper {
1046 ctor public CarTestManagerBinderWrapper(android.os.IBinder);
1047 method public void onCarDisconnected();
1048 field public final android.os.IBinder binder;
1049 }
1050
1051}
1052
Asaf Rosenfeld39e4f032017-09-16 11:33:50 -07001053package android.car.vms {
1054
1055 public final class VmsAssociatedLayer implements android.os.Parcelable {
1056 ctor public VmsAssociatedLayer(android.car.vms.VmsLayer, java.util.Set<java.lang.Integer>);
1057 method public int describeContents();
1058 method public java.util.Set<java.lang.Integer> getPublisherIds();
1059 method public android.car.vms.VmsLayer getVmsLayer();
1060 method public void writeToParcel(android.os.Parcel, int);
1061 field public static final android.os.Parcelable.Creator<android.car.vms.VmsAssociatedLayer> CREATOR;
1062 }
1063
1064 public final class VmsLayer implements android.os.Parcelable {
1065 ctor public VmsLayer(int, int, int);
1066 method public int describeContents();
1067 method public int getSubtype();
1068 method public int getType();
1069 method public int getVersion();
1070 method public void writeToParcel(android.os.Parcel, int);
1071 field public static final android.os.Parcelable.Creator<android.car.vms.VmsLayer> CREATOR;
1072 }
1073
1074 public final class VmsLayerDependency implements android.os.Parcelable {
1075 ctor public VmsLayerDependency(android.car.vms.VmsLayer, java.util.Set<android.car.vms.VmsLayer>);
1076 ctor public VmsLayerDependency(android.car.vms.VmsLayer);
1077 method public int describeContents();
1078 method public java.util.Set<android.car.vms.VmsLayer> getDependencies();
1079 method public android.car.vms.VmsLayer getLayer();
1080 method public void writeToParcel(android.os.Parcel, int);
1081 field public static final android.os.Parcelable.Creator<android.car.vms.VmsLayerDependency> CREATOR;
1082 }
1083
1084 public final class VmsLayersOffering implements android.os.Parcelable {
1085 ctor public VmsLayersOffering(java.util.Set<android.car.vms.VmsLayerDependency>, int);
1086 method public int describeContents();
1087 method public java.util.Set<android.car.vms.VmsLayerDependency> getDependencies();
1088 method public int getPublisherId();
1089 method public void writeToParcel(android.os.Parcel, int);
1090 field public static final android.os.Parcelable.Creator<android.car.vms.VmsLayersOffering> CREATOR;
1091 }
1092
1093 public final class VmsOperationRecorder {
1094 ctor public VmsOperationRecorder(android.car.vms.VmsOperationRecorder.Writer);
1095 method public void addHalSubscription(int, android.car.vms.VmsLayer);
1096 method public void addPromiscuousSubscription(int);
1097 method public void addSubscription(int, android.car.vms.VmsLayer);
1098 method public static android.car.vms.VmsOperationRecorder get();
1099 method public void getPublisherId(int);
1100 method public void removeHalSubscription(int, android.car.vms.VmsLayer);
1101 method public void removePromiscuousSubscription(int);
1102 method public void removeSubscription(int, android.car.vms.VmsLayer);
1103 method public void setHalPublisherLayersOffering(android.car.vms.VmsLayersOffering);
1104 method public void setLayersOffering(android.car.vms.VmsLayersOffering);
1105 method public void setPublisherLayersOffering(android.car.vms.VmsLayersOffering);
1106 method public void startMonitoring();
1107 method public void stopMonitoring();
1108 method public void subscribe(android.car.vms.VmsLayer);
1109 method public void subscribe(android.car.vms.VmsLayer, int);
1110 method public void unsubscribe(android.car.vms.VmsLayer);
1111 method public void unsubscribe(android.car.vms.VmsLayer, int);
1112 }
1113
1114 public static class VmsOperationRecorder.Writer {
1115 ctor public VmsOperationRecorder.Writer();
1116 method public boolean isEnabled();
1117 method public void write(java.lang.String);
1118 }
1119
1120 public abstract class VmsPublisherClientService extends android.app.Service {
1121 ctor public VmsPublisherClientService();
1122 method public final int getPublisherId(byte[]);
1123 method public final android.car.vms.VmsSubscriptionState getSubscriptions();
1124 method public final android.os.IBinder onBind(android.content.Intent);
1125 method public final boolean onUnbind(android.content.Intent);
1126 method protected abstract void onVmsPublisherServiceReady();
1127 method public abstract void onVmsSubscriptionChange(android.car.vms.VmsSubscriptionState);
1128 method public final void publish(android.car.vms.VmsLayer, int, byte[]);
1129 method public final void setLayersOffering(android.car.vms.VmsLayersOffering);
1130 }
1131
1132 public final class VmsSubscriberManager {
1133 ctor public VmsSubscriberManager(android.os.IBinder, android.os.Handler);
1134 method public byte[] getPublisherInfo(int) throws android.car.CarNotConnectedException, java.lang.IllegalStateException;
1135 method public void registerClientCallback(android.car.vms.VmsSubscriberManager.VmsSubscriberClientCallback) throws android.car.CarNotConnectedException;
1136 method public void startMonitoring() throws android.car.CarNotConnectedException;
1137 method public void stopMonitoring();
1138 method public void subscribe(android.car.vms.VmsLayer) throws android.car.CarNotConnectedException;
1139 method public void subscribe(android.car.vms.VmsLayer, int) throws android.car.CarNotConnectedException;
1140 method public void unregisterClientCallback() throws android.car.CarNotConnectedException;
1141 method public void unsubscribe(android.car.vms.VmsLayer);
1142 method public void unsubscribe(android.car.vms.VmsLayer, int);
1143 }
1144
1145 public static abstract interface VmsSubscriberManager.VmsSubscriberClientCallback {
1146 method public abstract void onLayersAvailabilityChanged(java.util.List<android.car.vms.VmsLayer>);
1147 method public abstract void onVmsMessageReceived(android.car.vms.VmsLayer, byte[]);
1148 }
1149
1150 public final class VmsSubscriptionState implements android.os.Parcelable {
1151 ctor public VmsSubscriptionState(int, java.util.Set<android.car.vms.VmsLayer>, java.util.Set<android.car.vms.VmsAssociatedLayer>);
1152 method public int describeContents();
1153 method public java.util.Set<android.car.vms.VmsAssociatedLayer> getAssociatedLayers();
1154 method public java.util.Set<android.car.vms.VmsLayer> getLayers();
1155 method public int getSequenceNumber();
1156 method public void writeToParcel(android.os.Parcel, int);
1157 field public static final android.os.Parcelable.Creator<android.car.vms.VmsSubscriptionState> CREATOR;
1158 }
1159
1160}
1161