Votre application doit étendre la classe CarAppService et implémenter sa méthode onCreateSession, qui renvoie une instance Session correspondant à la connexion actuelle à l'hôte :
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();
}
...
}
L'instance Session renvoie l'instance Screen à utiliser lorsque l'application est lancée pour la première fois :
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());
}
...
}
Lorsque votre application automobile doit démarrer à partir d'un écran autre que l'écran Accueil ou Page de destination, par exemple lors de la gestion des liens profonds, vous pouvez utiliser ScreenManager.push avant de revenir de onCreateScreen pour préremplir une pile "Retour" d'écrans. Le pré-seeding permet aux utilisateurs de revenir aux écrans précédents à partir du premier écran affiché par votre application.