Créer votre CarAppService et votre session

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 :

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

L'instance Session renvoie l'instance Screen à utiliser lorsque l'application est lancée pour la première fois :

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

Lorsque votre application pour voiture doit démarrer à partir d'un écran autre que l'écran Accueil ou Page de destination (par exemple, lors de la gestion de liens profonds), vous pouvez utiliser ScreenManager.push avant de revenir de onCreateScreen pour préremplir une pile "Retour" d'écrans. Le préremplissage permet aux utilisateurs de revenir aux écrans précédents à partir du premier écran affiché par votre application.