Make the first API call
How to use Vehicle API
The Vehicle API can be used in three ways as shown below.
Please check the example code for each type.
Get Property API example
- Kotlin
- Java
// Create Vehicle instance
val vehicle = Vehicle(context)
// Start Vehicle
vehicle.initialize()
val door = vehicle.getDoor()
door.getCurrentDoorPosition(
area = DoorArea(DoorValue.ROW_1_LEFT),
onComplete = { pos: Int? ->
// do something
},
onFailed = { e: Exception ->
// do something
}
)
val display = vehicle.getDisplay()
display.getCurrentTemperatureDisplayUnit(
onComplete = { unit: TemperatureUnit? ->
// do something
},
onFailed = { e: Exception ->
// do something
}
)
// End Vehicle
vehicle.release()
// Create Vehicle instance
Vehicle vehicle = new Vehicle(context);
// Start Vehicle
vehicle.initialize();
Door door = vehicle.getDoor();
door.getCurrentDoorPosition(
new DoorArea(DoorValue.ROW_1_LEFT),
pos -> {
// do something
return Unit.INSTANCE;
},
e -> {
// do something
return Unit.INSTANCE;
}
);
Display display = vehicle.getDisplay();
display.getCurrentTemperatureDisplayUnit(
unit -> {
// do something
return Unit.INSTANCE;
},
e -> {
// do something
return Unit.INSTANCE;
}
);
// End Vehicle
vehicle.release();
Set Property API example
- Kotlin
- Java
// Create Vehicle instance
val vehicle = Vehicle(context)
// Start Vehicle
vehicle.initialize()
val door = vehicle.getDoor()
door.setDoorPosition(
area = DoorArea(DoorValue.ROW_1_LEFT),
value = 1, // Integer type
onFailed = { e: Exception ->
// do something
}
)
// End Vehicle
vehicle.release()
// Create Vehicle instance
Vehicle vehicle = new Vehicle(context);
// Start Vehicle
vehicle.initialize();
Door door = vehicle.getDoor();
door.setDoorPosition(
new DoorArea(DoorValue.ROW_1_LEFT),
1,
e -> {
// do something
return Unit.INSTANCE;
}
);
// End Vehicle
vehicle.release();
Callback API example
- Kotlin
- Java
// Create Vehicle instance
val vehicle = Vehicle(context)
// Start Vehicle
vehicle.initialize()
// Create callback listener
val callbackListener = object : DoorPositionListener {
override fun onPositionUpdated(pos: Int?) {
// do something
}
override fun onFailed(e: Exception) {
// do something
}
}
val door = vehicle.getDoor()
// register callback
door.registerDoorPosition(
doorPositionListener = callbackListener
)
// unregister callback
door.unregisterDoorPosition(
doorPositionListener = callbackListener
)
// End Vehicle
vehicle.release()
// Create Vehicle instance
Vehicle vehicle = new Vehicle(context);
// Start Vehicle
vehicle.initialize();
// Create callback listener
DoorPositionListener callbackListener = new DoorPositionListener() {
@Override
public void onPositionUpdated(@Nullable int pos) {
// do something
}
@Override
public void onFailed(@NonNull Exception e) {
// do something
}
};
Door door = vehicle.getDoor();
// register callback
door.registerDoorPosition(callbackListener);
// unregister callback
door.unregisterDoorPosition(callbackListener);
// End Vehicle
vehicle.release();
API scenario example
To develop an app that monitors vehicle door positions, implement the following scenarios.
- 1. Initialize
- 2. Obtain Door API object
- 3. Set area
- 4. Register Door event callback
- 5. Handle Door events
- 6. Unregister Door event callback
- 7. Release SDK resources
1. Initialize
After creating the Vehicle object, call the vehicle.initialize
function to initialize the SDK.
- Kotlin
- Java
val vehicle = Vehicle(context)
vehicle.initialize()
Vehicle vehicle = new Vehicle(context);
vehicle.initialize();
2. Obtain Door API object
To use the Door API, create a Vehicle object and then call the vehicle.getDoor
function to obtain the Door object.
- Kotlin
- Java
val door = vehicle.getDoor()
Door door = vehicle.getDoor();
3. Set area
Create a DoorArea object and set the DoorValue. The following is an example code that sets the HOOD area.
- Kotlin
- Java
val area = DoorArea(DoorValue.HOOD)
DoorArea area = new DoorArea(DoorValue.HOOD);
4. Register Door event callback
Implement the DoorPositionListener, then call the registerDoorPosition
function to register the event callback.
- Kotlin
- Java
val listener = object : DoorPositionListener {
override fun onFailed(e: Exception) {
// do something.
}
override fun onPositionUpdated(pos: Int?) {
// do something.
}
}
door.registerDoorPosition(area, listener)
DoorPositionListener listener = new DoorPositionListener {
@Override
public void onFailed(Exception e) {
// do something.
}
@Override
public void onPositionUpdated(@Nullable int pos) {
// do something.
}
};
door.registerDoorPosition(area, listener);
5. Handle Door events
Check the vehicle door position values when the onPositionUpdated event occurs.
6. Unregister Door event callback
Before exiting the app, call the unregisterDoorPosition
function to unsubscribe the registered event callback.
- Kotlin
- Java
door.unregisterDoorPosition(area, listener)
door.unregisterDoorPosition(area, listener);
7. Release SDK resources
Call the vehicle.release
function to release the resources used by the SDK.
- Kotlin
- Java
vehicle.release()
vehicle.release();