สร้าง CarAppService และเซสชันของคุณ

แอปของคุณต้องขยายคลาส CarAppService และใช้เมธอด onCreateSession ซึ่งจะแสดงผลอินสแตนซ์ Session ที่สอดคล้องกับการเชื่อมต่อปัจจุบันกับโฮสต์

Kotlin

class HelloWorldService : CarAppService() {
  ...
  override fun onCreateSession(): Session {
      return HelloWorldSession()
  }
  ...
}

Java

public final class HelloWorldService extends CarAppService {
  ...
  @Override
  @NonNull
  public Session onCreateSession() {
      return new HelloWorldSession();
  }
  ...
}

อินสแตนซ์ Session จะแสดงอินสแตนซ์ Screen ที่จะใช้เมื่อเริ่มแอปเป็นครั้งแรก ดังนี้

Kotlin

class HelloWorldSession : Session() {
  ...
  override fun onCreateScreen(intent: Intent): Screen {
      return HelloWorldScreen(carContext)
  }
  ...
}

Java

public final class HelloWorldSession extends Session {
  ...
  @Override
  @NonNull
  public Screen onCreateScreen(@NonNull Intent intent) {
      return new HelloWorldScreen(getCarContext());
  }
  ...
}

เมื่อแอปในรถยนต์ต้องเริ่มจากหน้าจอที่ไม่ใช่หน้าจอหน้าแรกหรือหน้า Landing เช่น เมื่อจัดการ Deep Link คุณสามารถใช้ ScreenManager.push ก่อนกลับจาก onCreateScreen เพื่อ ตั้งค่าล่วงหน้าสำหรับสแต็กย้อนกลับของหน้าจอ การกำหนดค่าเริ่มต้นช่วยให้ผู้ใช้กลับไปยังหน้าจอก่อนหน้าจากหน้าจอแรกที่แอปแสดงได้