本節會使用這些術語和概念。
CarAppServiceCarAppService是抽象Service類別,應用程式必須實作並匯出這個類別,主機才能探索及管理應用程式。應用程式的CarAppService會使用createHostValidator驗證主機連線是否可信任,然後使用onCreateSession為每個連線提供Session執行個體。- 舉辦派對
主機是後端元件,可實作程式庫 API 提供的功能,讓應用程式在車輛上執行。主機提供一系列服務,包括探索及管理應用程式生命週期、將模型轉換為檢視畫面,以及通知應用程式使用者互動。
在行動裝置上,這項主機是由 Android Auto 實作。在 Android Automotive OS 中,這個主機會以系統應用程式的形式安裝。
- 模型和範本
使用者介面是由模型物件的圖形表示,您可以根據所屬範本,以不同方式排列這些物件。範本是模型子集,可在圖表中做為根。
模型包含要向使用者顯示的文字和圖片資訊,以及設定這類資訊外觀的屬性。例如文字顏色或圖片大小。
主機將模型轉換為符合駕駛人分心標準的檢視畫面,並處理各種車輛螢幕因素和輸入模式等詳細資料。
ScreenScreen是程式庫提供的類別,應用程式會實作這個類別,管理使用者可見的使用者介面。Screen具有生命週期,應用程式會使用這個生命週期傳送範本,以便在畫面顯示時顯示範本。Screen執行個體也可以推送到Screen堆疊,並從中彈出,確認是否符合範本流程限制。SessionSession是抽象類別,應用程式必須實作這個類別,並使用CarAppService.onCreateSession傳回。Session是顯示車輛螢幕資訊的進入點。Session具有生命週期,可告知應用程式在車輛螢幕上的目前狀態,例如應用程式何時顯示或隱藏。啟動
Session時 (例如首次啟動應用程式時),主機會使用onCreateScreen方法詢問要顯示哪個初始Screen。- 範本限制
不同範本會對模型內容強制執行限制。舉例來說,清單範本會限制可向使用者顯示的項目數量。
範本在連結表單以形成工作流程時,也會受到限制。舉例來說,應用程式最多可將五個範本推送至畫面堆疊。詳情請參閱「範本限制」。