আপনার CarAppService এবং সেশন তৈরি করুন

আপনার অ্যাপকে অবশ্যই CarAppService ক্লাসটি এক্সটেন্ড করতে হবে এবং এর onCreateSession মেথডটি ইমপ্লিমেন্ট করতে হবে, যা হোস্টের সাথে বর্তমান সংযোগের অনুরূপ একটি Session ইনস্ট্যান্স রিটার্ন করে:

কোটলিন

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

জাভা

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

Session ইনস্ট্যান্সটি রিটার্ন করে যে অ্যাপটি প্রথমবার চালু করার সময় কোন Screen ইনস্ট্যান্সটি ব্যবহার করতে হবে:

কোটলিন

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

জাভা

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

যখন আপনার গাড়ির অ্যাপটিকে হোম বা ল্যান্ডিং স্ক্রিন ছাড়া অন্য কোনো স্ক্রিন থেকে শুরু করতে হয়, যেমন ডিপ লিঙ্ক ব্যবহারের ক্ষেত্রে, তখন আপনি onCreateScreen থেকে রিটার্ন করার আগে ScreenManager.push ব্যবহার করে কয়েকটি স্ক্রিনের একটি ব্যাক স্ট্যাক আগে থেকে প্রস্তুত (pre-seed) করতে পারেন। এই প্রি-সিডিং ব্যবহারকারীদের আপনার অ্যাপে প্রদর্শিত প্রথম স্ক্রিন থেকেই আগের স্ক্রিনগুলোতে ফিরে যাওয়ার সুযোগ দেয়।