본문으로 건너뛰기

Obtaining a domain object

Vehicle SDK API는 진입점 Vehicle에서 도메인 객체를 얻은 뒤, 그 객체에서 네 가지 타입(Get·Set·Callback·Capability)의 API를 호출하는 방식으로 사용합니다. 도메인 구조는 Introduction을 참조하세요. 퍼미션은 Permission을, 오류 처리는 Error code를 참조하세요.

Vehicle 인스턴스를 생성하고 initialize()로 차량 서비스에 연결한 뒤, getDoor()·getDisplay()와 같은 getXxx()로 도메인 객체를 얻습니다. 도메인 객체에서 Get·Set·Callback·Capability API를 호출하며, 사용이 끝나면 release()로 리소스를 해제합니다.

차량 통신은 IPC이므로 get·set·capability 결과는 즉시 반환되지 않고 onComplete·onFailed 콜백으로 비동기 전달됩니다. 비동기 콜백이 끝나기 전에 release()를 호출하지 않도록 주의하세요.

// Vehicle 인스턴스 생성 후 초기화
val vehicle = Vehicle(context)
vehicle.initialize()

// getXxx()로 도메인 객체 획득
val door = vehicle.getDoor()

// door 객체에서 Get / Set / Callback / Capability API 호출
// ...

// 사용 종료 후 리소스 해제
vehicle.release()

네 가지 API 타입

타입하는 일결과 전달문서
Capability기능 지원 여부·허용 범위 확인onComplete(config, areaMap) / onFailedCapability
Get현재 값 조회onComplete(값) / onFailedGet
Set값 설정onFailed(실패 시)Set
Callback상태 변화 구독리스너 onXxxUpdated / onFailedCallback