車輛應用程式
| 最近更新時間 | 穩定版 | 候選版 | Beta 版 | Alpha 版 | 
|---|---|---|---|---|
| 2025 年 7 月 16 日 | 1.7.0 | - | - | 1.8.0-alpha02 | 
宣告依附元件
如要為車輛應用程式程式庫新增依附元件,您必須為專案新增 Google Maven 存放區。詳情請參閱 Google 的 Maven 存放區。
在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:
Groovy
dependencies { implementation "androidx.car.app:app:1.7.0" // For Android Auto specific functionality implementation "androidx.car.app:app-projected:1.7.0" // For Android Automotive specific functionality implementation "androidx.car.app:app-automotive:1.7.0" // For testing testImplementation "androidx.car.app:app-testing:1.7.0" }
Kotlin
dependencies { implementation("androidx.car.app:app:1.7.0") // For Android Auto specific functionality implementation("androidx.car.app:app-projected:1.7.0") // For Android Automotive specific functionality implementation("androidx.car.app:app-automotive:1.7.0") // For testing testImplementation("androidx.car.app:app-testing:1.7.0") }
如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。
意見回饋
您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。
詳情請參閱 Issue Tracker 說明文件。
1.8 版
1.8.0-alpha02 版
2025 年 6 月 18 日
發布 androidx.car.app:app-*:1.8.0-alpha02。1.8.0-alpha02 版包含這些修訂項目。
新功能
- 新增支援 Action.MEDIA_PLAYBACK,可根據媒體播放狀態顯示指標。
- 新增支援功能,可在 SectionedItemTemplate重新整理時控制使用者的捲動位置。
API 變更
- 新增支援功能,可在重新整理時儲存 SectionedItemTemplate內的使用者捲動位置。(Ia4c51)
- 更新 MEDIA_PLAYBACK動作,以便為資料列結尾動作啟用該動作 (I05cc4)
- 新增動作類型 (I6cc5a)
- 新增 CarAppExtender#addAction(Action),以便將任何類型的動作新增至CarAppExtender。(Idc4d7)
- 讓 API 8 以上版本可存取 SectionedItemTemplate。(I9a079)
1.8.0-alpha01 版
2025 年 5 月 20 日
發布 androidx.car.app:app-*:1.8.0-alpha01。1.8.0-alpha01 版包含這些修訂項目。
新功能
所有功能暫時僅適用於 Android Auto。AAOS 會使用相同的 API
- 新增「媒體」類別,可建立自訂應用程式,做為 MediaBrowse的替代方案
- 新增「播放範本」,可在媒體播放檢視畫面中控制頂端動作 (僅適用於媒體應用程式)
- 在 Android Auto 上新增對分段項目範本的完整支援,可組合由清單/格線組成的子區段。
- 為格狀項目新增超大尺寸。
API 變更
- 為格線項目新增額外大小選項 (I35b58)
- 在 Car App Library 中新增媒體應用程式的類別和權限 (I8e100)
- 新增 API,供應用程式偵測是否支援 CarAppLibrary媒體類別 (Ic4b08)
- 已將 OnItemVisibilityChangeListener新增至「區段」。(I2c2fd)
- 新增 Mileage#getOdometerKilometers並淘汰Mileage#getOdometerMeters(Ic91af)
修正錯誤
- 修正 CarIcon.setTintJavadoc 中的錯字 (Iabd72)
- 更新 Row.Builder#setNumericDecoration說明文件,說明系統不支援 1 個動作 + 數字裝飾,但支援 0 個或 2 個動作 + 數字裝飾。(Ic0b08)
- 為格線項目新增徽章圖示背景顏色欄位。(I2b6ae)
1.7 版
1.7.0 版
2025 年 7 月 16 日
發布 androidx.car.app:app-*:1.7.0。1.7.0 版包含這些修訂項目。
- 這是第一個穩定版本,包含在 beta03 中修補的 CVE-2024-10382 修正程式。如果使用低於 1.7-beta03 的版本,請更新至這個版本。
1.7.0-rc01 版
2025 年 1 月 15 日
「androidx.car.app:app-*:1.7.0-rc01」已發布,目前沒有任何重大異動。1.7.0-rc01 版包含這些修訂項目。
- 這是第一個 RC 版,包含 beta03 修補的 CVE-2024-10382 修正程式。如果使用低於 1.7-beta03 的版本,請更新至這個版本。
1.7.0-beta03 版
2024 年 11 月 13 日
修正安全漏洞和其他一般錯誤。如果使用較低版本,請更新至此版本。
發布 androidx.car.app:app-*:1.7.0-beta03。1.7.0-beta03 版包含這些修訂項目。
API 變更
- 更新 CAL 序列化 / 還原序列化程式碼,只處理已宣告 @CarProtocol註解的物件。(Ic730e)
- CarAppExtender現在可用於擴充架構- Notification.Builder,而不僅限於- NotificationCompat.Builder。(Id3ad7)
- 新增 KEY_EXCLUDE_MEDIA_ITEM_FROM_MIXED_APP_LIST額外項目。(I201f9)
- 淘汰 ConversationItem的空白 Builder 建構函式,並改用採用必要參數的建構函式。此外,還新增了檢查機制,可防範空值訊息。(Ic8221)
修正錯誤
- 確認 PlaceList對應使用字串 (僅限文字) 標頭標題。(Ic992f)
- 這個程式庫現在使用 JSpecify 空值註解,這些註解屬於型別用途。Kotlin 開發人員應使用下列編譯器引數,強制執行正確用法:-Xjspecify-annotations=strict(這是 Kotlin 編譯器 2.1.0 版的預設值)。(Ib5367、b/326456246)
1.7.0-beta02 版
2024 年 9 月 18 日
發布 androidx.car.app:app-*:1.7.0-beta02。1.7.0-beta02 版包含這些修訂項目。
API 變更
- 新增 KEY_ROOT_HINT_MEDIA_HOST_VERSION額外內容 (I8796b)
- 在 TabContents.Builder類別中,將TabContents.Api8Builder類別替換為@ExperimentalCarApi建構函式 (I26fbe)
- 為 CarMediaApp新增意圖動作和額外項目 (I50782)
- 將訊息 API 標示為非實驗性 (I0b070)
- 在 SectionedItemTemplate中新增遠端項目載入功能 (可載入長清單,不會導致當機) (I0d122)
- 在 API 8 的 TabTemplate中,將SectionedItemTemplate新增至支援的範本清單。(Idc5d6)
修正錯誤
- 移除手動列出新平台 API 存取權的步驟,因為使用 AGP 7.3 以上版本 (例如 R8 3.3 版) 的 R8 時,系統會透過 API 建模自動執行這項作業,而使用 AGP 8.1 以上版本 (例如 D8 8.1 版) 時,所有建構作業都會自動執行這項作業。如果用戶端未使用 AGP,建議更新至 D8 8.1 以上版本。詳情請參閱這篇文章。(I9496c、b/345472586)
1.7.0-beta01 版
2024 年 6 月 26 日
發布 androidx.car.app:app-*:1.7.0-beta01。1.7.0-beta01 版包含這些修訂項目。功能與 alpha01 中發布的功能相同,如下所示:
新功能
- 地圖與內容:新範本,包含地圖畫布和內容範本,目前可為清單 / 格線 / 窗格 / 訊息。
- RoutePreview、- PlaceListNavigation和- MapTemplate現已淘汰。範本仍會照常運作。
- 範例應用程式已更新,會顯示 MapWithContent用量,而非已淘汰的範本
 
- 對話項目:可顯示對話 (即時通訊、簡訊) 和車輛中 Google 助理朗讀內容的新 API。
- 車輛尺寸:可擷取車輛尺寸的新 API (目前僅適用於 AAOS)。
API 變更
- 在 MediaPlaybackTemplate.Builder中新增@ExperimentalCarApi標記。(Ic1957)
- 在實驗性功能中新增 SectionedItemTemplate。(I5958a)
- 推出 CarAppApiLevel 8(I3fa22)
- 新增 MediaPlaybackTemplate,以便在 Car App Library 中播放媒體時顯示內容。(I3c10d)
- 新增 API,供應用程式偵測系統是否支援在行車期間播放背景音訊 (I0f868)
修正錯誤
- 修正 CAL 用戶端程式碼和 CAL 導覽範例應用程式中的特定記憶體流失和當機問題。(I55e04)
- 在 BaseCarAppActivity的onDestroy方法中,以 if-null 檢查取代requireNotNull instances,以免發生當機情形。(Iec676)
1.7.0-alpha02 版
2024 年 4 月 17 日
發布 androidx.car.app:app-*:1.7.0-alpha02。1.7.0-alpha02 版包含這些修訂項目。
新功能
- 針對地圖型範本新增已淘汰的旗標,MapWithContent範本將在未來提供支援。
API 變更
- 淘汰舊版 MapTemplate、RoutePreviewNavigationTemplate、PlaceListNavigationTemplate,並鼓勵使用新版MapWithContentTemplate(Ib0a08)
1.7.0-alpha01 版
2024 年 4 月 3 日
發布 androidx.car.app:app-*:1.7.0-alpha01。我們已調整程式庫版本控管機制,與現行 CarApi 版本一致。根據開發人員的意見回饋,我們決定採用這項做法,以減少命名方式造成的混淆。因此,我們將直接跳過 1.5 / 1.6 版,推出 1.7 版。1.7.0-alpha01 版包含這些修訂項目。
新功能
- 地圖與內容:名為 MapWithContent的新範本,支援清單 / 格線 / 窗格 / 訊息做為地圖內的內容。- RoutePreview、- PlaceListNavigation和地圖範本已淘汰。
- 範例應用程式已更新,可使用 MapWithContent顯示已淘汰範本的功能。
 
- 對話項目:新增 API,可在車輛中顯示對話 (即時通訊、簡訊) 和 Google 助理朗讀內容。
- 車輛尺寸:全新 API,可擷取車輛測量值 (目前為 AAOS 資料)。
API 變更
- 將特小列圖片類型標示為實驗性質 (I5184b)
- 新增 CarInfo#fetchExteriorDimensionsAPI,可存取車輛外部尺寸資訊,例如高度、寬度等 (Ia40c5)
- 從 MapWithContentTemplate移除ExperimentalAPI標記 (I66db8)
- 將 GridItem#setTitle參數更新為可為空值。(I3d610)
- GetHeaderAPI 不需使用 API 7,因為可回溯相容 (I8c812)
- 在 ListTemplate中新增Header的支援功能,並淘汰headerAction、headerTitle、actionStrip(I7ae01)
- 淘汰 GridTemplate中的title、headerAction、actionStrip,並新增Header的支援 (I41a9c)
- 移除實驗性 API 的第 7 級別規定:徽章、GridTemplate項目大小和圖片形狀的 getter/setter、GridItem取得/設定徽章的方法。(Id71eb)
- 淘汰 PaneTemplate中的title、headerAction、actionStrip,新增Header支援 (I23154)
- 媒體中心遙測資料已從 BroadcastReceiver變更為「瀏覽自訂動作」。(I4185f)
- 在 MessageTemplate中新增Header屬性支援。已淘汰對ActionStrip、headerAction和title的支援。(Ie2de8)
- 修改快訊常數瀏覽權限 (Icf8a8)
- 從父項範本 (I651e6) 移除 isLoading屬性
- 新增額外項目,將主要 UI 參數告知媒體應用程式 (I85ca2)
- 在 MediaExtensions中新增媒體中心數據分析功能 (I7ce28)
- 新增資料列的超小圖片選項。(I72c03)
修正錯誤
- 更新 ConversationItem的 javadoc,說明訊息應按照從舊到新的順序排序。(I77a2a)
- 更新 ListTemplate截斷邏輯,從ConversationItem移除最舊的訊息 (Ie0a61)
1.4 版
1.4.0 版本
2024 年 5 月 29 日
發布 androidx.car.app:app-*:1.4.0。1.4.0 版是 1.4.0-rc02 版的升級版。
自 1.3.0 版以來的重要異動
- 導航應用程式的儀表板地圖轉譯
- 全新分頁範本,提升應用程式版面配置 / 可用性
- 支援適應性工作限制
- 清單元素的次要動作
1.4.0-rc02 版
2023 年 12 月 13 日
發布 androidx.car.app:app-*:1.4.0-rc02。1.4.0-rc02 版包含以下修訂項目。僅修正小錯誤
修正錯誤
- 更新 ConversationItem的 javadoc,說明訊息應依時間排序,從舊到新 (I77a2a)
- 更新 ListTemplate截斷邏輯,從ConversationItem移除最舊的訊息 (Ie0a61)
1.4.0-rc01 版本
2023 年 11 月 1 日
已發布「androidx.car.app:app-*:1.4.0-rc01」,目前沒有任何重大異動。1.4.0-rc01 版包含以下修訂項目。
1.4.0-beta02 版本
2023 年 9 月 20 日
發布 androidx.car.app:app-*:1.4.0-beta02。1.4.0-beta02 版包含以下修訂項目。這個版本與 Beta01 幾乎相同,但將 compileSdk 需求降至 33。
修正錯誤
- 修正錯誤:系統無法在分頁上正確顯示載入畫面。(cae860)
1.4.0-beta01 版本
2023 年 8 月 9 日
發布 androidx.car.app:app-*:1.4.0-beta01。1.4.0-beta01 版包含以下修訂項目。
注意:1.4-beta01 需要 compileSdk34,但該版本仍處於開發狀態。1.4-beta02 版會修正這個問題。或者,您也可以在專案的
settings.gradle檔案中新增android.suppressUnsupportedCompileSdk=34,暫時安全地停用警告。
新功能
API 變更
- 請參閱 alpha02
1.4.0-alpha02 版
2023 年 7 月 26 日
發布 androidx.car.app:app-*:1.4.0-alpha02。查看 1.4.0-alpha02 版的修訂項目。
- Alpha02 版的發布目的是為即將推出的 Beta01 版做準備。
新功能
- 支援在儀表板上顯示地圖的導航應用程式
- 新增應用程式分頁,提升版面配置體驗
- 新增清單 / 格狀範本的算繪選項
- 新增「天氣」和「通訊」類別
- 將多個 API 移至下一個 CarApi 7 版本
API 變更
- 在 CarMessage中新增多媒體欄位 (I5aaf6)
- 在 Car App Library 中新增自訂動作至 ConversationItem(Ie5ed6)
- 新增額外項目,指出媒體項目是以沉浸式音訊格式播放,並顯示內容格式標誌 (Icb5bb)
- 新增動作類型 ActionsConstraintsAPI,支援撰寫按鈕。(I31661)
- 將 set/getTemplate設為set/get ContentTemplate(Ica036)
- 範本參數現在會是 @NonNull。更新MapWithContentTemplateAPI 說明文件 (I0f8ed)
- 移除 ListTemplate中動作的@ExperimentalCarApi標記,以便在 CAL 1.4 中啟動 (I2cfcb)
- 移除 TabTemplate的@ExperimentalCarApi標記 (Ifcb82)
- 從資料列次要動作和裝飾中移除 @ExperimentalCarApi註解 (I8487e)
- 將有效分頁內容 ID 新增至 TabTemplate,並淘汰分頁上的有效狀態 (I96932)
- 在 GridTemplate中新增ItemImageShape屬性 (Ibf431)
- 將 ItemSize屬性新增至GridTemplate,根據相對小、中、大值區控制格線項目大小。(Icdb3b)
- 開放開發人員存取 API,取得目前畫面堆疊的副本。(I48107)
- 在 Car App Library 中新增天氣應用程式類別 (I2be44)
- 在 Car App Library 中新增通話應用程式類別 (Icab33)
- 已將「GridItem.Builder#setBadge()」替換為過載的「setImage()」方法 (Id2000)
- 在 Badge 中新增圖示屬性 (I629b2)
- 新增方法來設定圓點徽章背景顏色 (I6411c)
- 將 Badge 屬性新增至 GridItem,即可在GridItem圖片上方顯示徽章。(I95de7)
- 新增實驗性 Badge 物件,代表要顯示在圖片上的徽章。(I9878d)
1.4.0-alpha01 版
2023 年 2 月 22 日
發布 androidx.car.app:app-*:1.4.0-alpha01。查看 1.4.0-alpha01 版的修訂項目。
API 變更
- 在 Car App Library 中新增頂層動作至 GridTemplate(Id0191)
- 在 Car App Library 中新增頂層動作至 ListTemplate(I9efab)
- 新增額外項目,以連結媒體項目的字幕或其他媒體項目的說明 (Ic84bf)
- 將資料列動作的 API 級別更新為級別 6。(Ie0a69)
- 新增訊息回呼至 A4C (Ie3986)
修正錯誤
- 為 CarMessage新增缺少的 Java 文件參照。(I5db1c)
- 覆寫 ConversationItem和CarMessage的equals()和hashCode()(I6fd10)
- 改善 ConversationItem.mMessages驗證 (需要非空值、非空白) (Iafc51)
- 將 @Keep註解新增至ConversationItem欄位 (I5d250)
- 更新 java 文件以用於列裝飾和次要動作。(I000b6)
1.3 版本
1.3.0-rc01 版本
2022 年 12 月 7 日
發布 androidx.car.app:app-*:1.3.0-rc01。查看 1.3.0-rc01 版的修訂項。
- beta01 的小修正錯誤。沒有重大變更。
1.3.0-beta01 版本
2022 年 9 月 7 日
發布了 androidx.car.app:app:1.3.0-beta01、androidx.car.app:app-projected:1.3.0-beta01、androidx.car.app:app-automotive:1.3.0-beta01 和 androidx.car.app:app-testing:1.3.0-beta01。1.3.0-beta01 版包含以下修訂項目。
- 使用這個程式庫的車輛應用程式現在可以使用 API 級別 5 進入 Play 商店 (請參閱開發人員指南)。加上 API 級別 5 及以下註解的功能可相容於 Android Auto 8.1 以上版本和 Google Automotive App Host 1.4 以上版本。
新功能
除了 Car App Library 1.3.0-alpha01 中添加的功能外,下列功能已成為 Beta01 的一部分 (這裡的所有功能都涉及主機端變更,而不含任何 API 變更):
- 即使使用者位於 PlaceListNavigationTemplate、RoutePreviewNavigationTemplate和MapTemplate中的地圖式選取畫面中,浮動導覽列仍會繼續顯示。方法是透過NavigationManager.updateTrip()更新導航資訊。
- 啟用含有 FLAG_DEFAULT的動作按鈕,即可設定逾時動畫。逾時後,系統將根據預設點擊這個按鈕。([API 5 - All Templates])
- 當車輛停放時,Row的子文字不會遭到截斷,但開車時會截斷成 2 行。([API 5 - All Templates])
- 支援 Action、Toggle、Row([API 5 - All Templates]) 的停用狀態
API 變更
- 放寬 MapTemplate清單中的限制,以支援可選取的清單 (I961ed)
- 移除標頭動作的限制條件來允許自訂圖示。(Iad28f)
- 將限制 setOnClickListenerAllowed()新增至ActionsConstraints。允許Action將OnClickDelegate()設為標準圖示類型以外的動作。(TYPE_APP_ICON、TYPE_BACK和TYPE_PAN) (I3c745)
修正錯誤
- 新增了 Android Automotive Template Host 1.4 以上版本與曲線螢幕的相容性 ([Host change])
1.3.0-alpha01 版本
2022 年 7 月 27 日
發布了 androidx.car.app:app:1.3.0-alpha01、androidx.car.app:app-projected:1.3.0-alpha01、androidx.car.app:app-automotive:1.3.0-alpha01 和 androidx.car.app:app-testing:1.3.0-alpha01。1.3.0-alpha01 版包含以下修訂項目。
加上 API 級別 5 註解的功能可相容於 Android Auto 7.9 以上版本。
新功能
- API 級別 5:導航應用程式可以使用新的 MapTemplate在地圖旁顯示窗格或清單內容 (If5826、If44b8)
- API 級別 5:新的 CarAudioRecordAPI 可以透過主機車輛的麥克風錄製音訊輸入內容 (I5e71a)
- API 級別 5:新的 SuggestionManagerAPI 可讓應用程式為主機使用者提供建議事項 (I5c103)
- API 級別 5:新的 AlertAPI 可在NavigationTemplate按照內容顯示通知 (I163a7、I5ad70)
- API 級別 5:新的 Header和MapController元件可橫跨多範本重新使用內容 (If5826)
- 新增了 androidx.car.app.category.POI做為啟用搜尋點應用程式用的類別 (並淘汰androidx.car.app.category.PARKING和androidx.car.app.category.CHARGING) (I59da1)
API 變更
- API 級別 5:SurfaceCallback介面提供新的onClick方法,可讓使用者輕觸地圖進行互動 (Ia9777)
- API 級別 5:新的旗標 Action.FLAG_IS_PERSISTENT和Action.FLAG_DEFAULT可用來描述Action(I96318、I5ad70)
- API 級別 5:Action、Row和Toggle元件可使用新的啟用/停用狀態 (主機支援約可在 1.3.0-beta01 左右的程式庫版本提供) (ID8a09)
- API 級別 5:偏好使用 setHeader在PlaceListNavigationTemplate.Builder和RoutePreviewNavigationTemplate.Builder提供的新Header元件,並淘汰現有的setTitle及setHeaderAction方法 (I30e6a)
- API 級別 5:PlaceListMapTemplate.Builder和PlaceListNavigationTemplate.Builder上的新setOnContentRefreshListner方法可以搭配新的OnContentRefreshListner介面實作使用。
- API 級別 5:TravelEstimate.Builder新的setTripText和setTripIcon可用來自訂預估交通資訊卡片內容 (Idcc6d、Ic620d)
- 在 PaneTemplate名稱中加入CarIconSpan的支援 (Ia1ee0)
- 在 Row名稱及文字中加入CarIconSpan的支援 (Ic1e3c)
- 地圖 ActionStrip現在最多可以設定四個操作 (If3522)
- 更新車輛應用程式 API 級別至 5 (I26b8e)
- PlaceListMapTemplate、- PlaceListNavigationTemplate、- RoutePreviewNavigationTemplate、- GridTemplate、- ListTemplate、- LongMessageTemplate、- MessageTemplate、- PaneTemplate和- SignInTemplate的標頭/名稱已變為選填內容 (I2078d、Icadde)
修正錯誤
- 更新 PaneTemplate圖片大小規則為正方形定界框 (Idd72e)
- 修正在 State.DESTROYED之後修改畫面堆疊時發生的例外狀況 (I3c8eb)
- 新增了接收應用程式圖示的空值檢查 (I3f710)
- 更新 Car Hardware API,使其使用 STATUS_UNKNOWN而非預設的STATUS_UNAVAILABLE(Ic9444)
- 在建立途徑前檢查是否有螢幕 (Ice027a)
- 修正和 STATUS_UNIMPLEMENTED有關的CarValue.equals()錯誤 (I24451)
1.2 版本
1.2.0 版本
2022 年 11 月 9 日
發布 androidx.car.app:app-*:1.2.0。1.2.0 版包含此連結所列的修訂項目。
- 這是穩定版,與 v1.2.0-rc01 相比沒有任何異動。
1.2.0-rc01 版本
2022 年 3 月 23 日
發布 androidx.car.app:app-*:1.2.0-rc01。查看 1.2.0-rc01 版的修訂項目。
- 這是穩定版,與 v1.2.0-beta02相比沒有任何 API 變更。新增實驗功能 (API 級別 5),預計在 Android Auto 和 Android Automotive 的未來版本中推出。
修正錯誤
- 修正在 State.DESTROYED之後修改畫面堆疊時發生的例外狀況 (I3c8eb)
- 更新 CarSensorsAPI,表示 AAOS 並未導入這些 API (Idd57b)
- 更新 PlaceListMapTempalte.Builder#setCurrentLocationEnabled,表示 ACCESS_COARSE_LOCATION 已可滿足未來的需求 (I510c2)
- 讓有指定角度的環島路駕駛方式可自選出口號碼 (Ife7d1)
1.2.0-beta02 版
2022 年 1 月 26 日
發布 androidx.car.app:app-*:1.2.0-beta02。1.2.0-beta02 版包含此連結所列的修訂項目。
凡是使用這個程式庫版本建立並指定 Android Automotive OS 平台的車輛應用程式,現在都可以發布到 Play 商店公開測試管道了。詳情請參閱開發指南。
加上 API 級別 4 以下註解的功能可相容於 Android Auto 7.2 以上和新的 Android Automotive OS 平台。請參閱下方的 Known Issues 一節,瞭解注意事項。
API 變更
- 已將實驗性 setOnContentRefreshListenerAPI 新增到搜尋點範本 (I6bf22)
修正錯誤
- 修正了車輛主機解除繫結時,CarAppService中的記憶體流失問題。(I5c9ca、b/203594731)
- 更新 CarAppActivityjavadoc,為 singleTask 啟動模式納入相關規定 (Id2f95)
- 減少繼續使用時的視覺故障。(Iff7e0)
已知問題
- PlaceListNavigationTemplate和- RoutePreviewNavigateTemplate中的地圖- ActionStrip將於下一個- Android Auto和- Android Automotive OS版本中推出。
1.2.0-alpha02 版本
2021 年 12 月 15 日
發布 androidx.car.app:app-*:1.2.0-alpha02。1.2.0-alpha02 版包含此連結所列的修訂項目。
加上 API 級別 4 註解的功能已從實驗版升級為穩定版,包括 PlaceListNavigationTemplate 和 RoutePreviewNavigateTemplate 中的地圖 ActionStrip,Pane 中的 CarIcon 圖片、QRCodeSignInMethod 和在 Action 中設定算繪提示的功能 (例如旗標)。
新功能
- 在 Android Auto 7.1 以上版本中,Pane的項目上限已從 2 個增加到 4 個。
API 變更
- 已將實驗性的 toString()方法新增至CarUnit(I36a3b)
修正錯誤
1.2.0-alpha01 版本
2021 年 11 月 3 日
發布 androidx.car.app:app-*:1.2.0-alpha01。1.2.0-alpha01 版包含以下修訂項目。
所有新的 v1.2.0 功能 (API 4+) 目前都在實驗階段,目標是在未來的 Android Auto 和 Android Automotive OS 版本中推出。詳情請參閱開發指南。
API 變更
- AutomotiveCarInfoAPI 進入實驗階段 (Ia13e5)
- 新增了 Car App Library API 級別 4 (I2a2e7)
- API 級別 4:新增了在 Pane中設定CarIcon的支援功能 (Ifcc12)
- API 級別 4:新增了 QR 圖碼登入方法 (Ib623e)
- API 級別 4:在 Action中新增了設定/getFlags (Ic03ab)
- API 級別 4:新增了在 PlaceListNavigationTemplate和RoutePreviewNavigationTemplate中支援平移和縮放的功能 (I9d8a3)
修正錯誤
1.1.0 版本
1.1.0 版本
2021 年 12 月 15 日
發布 androidx.car.app:app-*:1.1.0。查看 1.1.0 版的修訂項。
這是穩定版,與 v1.1.0-rc01 相比沒有任何異動。另請參閱 v1.2.0-alpha02 的版本資訊,進一步瞭解車輛應用程式程式庫的新功能。
自 1.0.0 版以來的重要變更
- API 級別 2:車輛停放時可用於登入流程的 SignInTemplate和LongMessageTemplate
- API 級別 2:NavigationTemplate中的地圖互動支援
- API 級別 2:支援多重長度文字,讓應用程式能根據車輛螢幕尺寸提供多個版本的字串以供顯示。
- API 級別 3:可用來查詢車輛硬體資料 (例如型號和品牌、油量和其他感應器) 的 CarHardwareManager。
1.1.0-rc01 版本
2021 年 11 月 3 日
發布 androidx.car.app:app-*:1.1.0-rc01。1.1.0-rc01 版包含此連結所列的修訂項目。
這是穩定版,與 v1.1.0-beta01 相比沒有任何 API 變更。已新增實驗性功能 (API 級別 4),可望在 Android Auto 未來的版本中推出。如要進一步瞭解實驗性 API,請參閱 v1.2.0-alpha01 的版本資訊。
1.1.0-beta01 版本
2021 年 9 月 1 日
發布 androidx.car.app:app-*:1.1.0-beta01。1.1.0-beta01 版包含此連結所列的修訂項目。
所有 v1.1.0 功能 (API 2 以上) 都完全相容於 Android Auto 6.7 以上版本。詳情請參閱開發指南。
API 變更
- 不再以 Manager做為公開介面 (Ie381b)
- 新增了為權限要求設定自訂品牌背景的功能 (I74b76)
- 新增了 ScreenManager.getStackSize(I0b16a)
- 移除了會明確採用 TestCarContext的ScreenController建構函式 (Iefebc)
修正錯誤
- 新增了建立 CarHardwareManager時的 API 級別檢查 (I48f9b)
- 針對整個 API 的無效 CarSpan用途新增檢查作業 (I65ae6)
- 修正了以下問題:如果 Screen在建立期間標示為完成,會使堆疊處於損毀狀態 (I81b13)
- 修正以下問題:如果 CarAppExtender中有含圖示的動作,則CarNotificationManager.notify會為 AutomotiveOS 記錄一次錯誤 (I3633d)
- 為應用程式和主機新增握手方法,以建立 API 版本 (I7d6f8)
1.1.0-alpha02 版本
2021 年 7 月 21 日
發布 androidx.car.app:app-*:1.1.0-alpha02。查看 1.1.0-alpha02 版的修訂項。
新功能
- API 級別 3:新增了 CarHardwareManager,可用來查詢車輛硬體資料,例如型號和品牌、油量和其他感應器。這項功能目前只開放 Android Auto 6.7 以上版本在公開測試頻道中使用。如要在電腦環境中測試這項功能,則需要使用新版Desktop Head Unit(將另行發布)。請密切關注測試 Android 車輛應用程式網頁,掌握關於新版本推出時間的詳細資訊。
- 請參閱開發指南和程式庫參考資料瞭解詳情;設計指南則可協助您瞭解如何使用這些相容於 API 級別 3 的車輛主機中的功能。
API 變更
- 將 SessionController和ScreenController生命週期方法合併至單一moveToState方法 (I1ed00)
- 新增了 CarContext#getHostInfo()(I8977e)
- 移除已淘汰的欄位 (I67168)
- 更新 SessionController和ScreenController以直接顯示建構函式 (Iabf22)
- 移除 PinSignInMethod.Builder和ProviderSignInMethod.Builder(I9f0cb)
- 新增了「setCarAppResult()」,以啟用在 AAOS 中使用範本應用程式「for result」的功能 (I37741)
- 以 @MainThread為CarHardware介面加註。(Ib2f85)
- OnCarDataListener已重新命名為- OnCarDataAvailableListener(I518ca)
- 更新 CarInfo、Speed、Mileage方法名稱和 javadoc (I86672)
- Toll已重新命名為- TollCard(I3e7c8)
- 移除已淘汰的 PinSignInMethod.getPin,替換成PinSignInMethod.getPinCode(I996ce)
- 移除 OnInputCompletedListener,替換成InputCallback(Ib5be1)
- PinSignInMethod改為採用- CharSequence而非- String(I275d5)
修正錯誤
- 為車輛硬體修正 Javadoc (I2abbc)
外部貢獻
已知問題
- 在 SignInTemplate中,使用InputSignInMethod可能會在車輛主機中造成NullPointerException。我們會在下一個程式庫版本中解決這個問題。如要暫時繞過這個問題,請在您應用程式的 ProGuard 設定中納入這一行:-keep class androidx.car.app.model.signin.InputSignInMethod { *; }
1.1.0-alpha01 版本
2021 年 6 月 16 日
發布 androidx.car.app:app:1.1.0-alpha01、androidx.car.app:app-automotive:1.1.0-alpha01 和 androidx.car.app:app-testing:1.1.0-alpha01。1.1.0-alpha01 版包含此連結所列的修訂項目。
新功能
- API 級別 2:車輛停放時可用於登入流程的新 SignInTemplate和LongMessageTemplate
- API 級別 2:NavigationTemplate中的新地圖互動支援
- API 級別 2:支援新的多重長度文字,讓應用程式能根據車輛螢幕尺寸提供多個版本的字串以供顯示。
- 請參閱開發指南和程式庫 Javadoc 瞭解詳情;設計指南則可協助您瞭解如何使用這些相容於 API 級別 2 的車輛主機中的功能。
API 變更
- 將所有 *Callback介面方法設為預設,並將OnRequestPermissionsCallback重新命名為OnRequestPermissionsListener(Ib3ec9)
- 更新 androidx.car.app.hardware類別以移除不必要的建構工具和參數類別 (I67beb)
- 新增了 androidx.car.app.hardware類別以存取車輛專屬資料,例如燃料、電池和速度 (Iff3c9)
- 在 MessageTemplate上新增了ActionStrip支援 (Ida657)
- 將 setLoading新增至MessageTemplate(I2a4b5)
- ConnectionToCar已重新命名為- CarConnection(Ife9bd)
- 將 NavigationTemplate變更為會傳回明確的PanModeDelegate(I13877)
- 更新 CarContext.requestPermissions的參數順序 (Ib890a)
- 更新中繼資料金鑰,將最低車輛 API 級別定義為 androidx.car.api.minCarApiLevel(Ib0d41)
- 建立允許觀察車輛連線狀態的 API (Ifc935)
- 新增了可為 Action設定切換開關的功能,並新增了平移模式Action類型 (Ica6af)
- 建立了 CarNotificationManager以支援在車上傳送通知的功能 (I10d7a)
- 新增了 ConstraintManager以提供主機的清單限制 (I8690e)
- 在 NavigationTemplate中新增了平移模式和 Google 地圖動作清除 API (I77aa6)
- 在 SurfaceCallback中為導航應用程式新增了平移和縮放 API (Id5e9d)
- 將 CarAppApiLevel更新為 2 (Ic1540)
- 新增了可向 CarAppService要求權限的功能 (I5421e)
- 將 RequiresCarApi(2)註解新增至多重文字 API (Iacb62)
- 在半清單範本標題中允許多種文字變化版本 (Ib8df7)
- 新增了 LongMessageTemplate(需要 Car API 級別 2) (Ic5cee)
修正錯誤
- 更新圖片大小規定,以配合較大的車輛螢幕 (I116dc)
- 不允許在範本內文中加入超過 2 個動作 (I32157)
- 已確保車輛應用程式程式庫中所有的 PendingIntent建立作業都會設定旗標。(If84fe、b/186394900)
- 更新 javadoc,允許 Row的文字在重新整理時變更 (If3f9c)
- androidx.activity:activity:1.2.0現在是 API 依附元件 (Id1cb9)
- 將 SignInTemplate和LongMessageTemplate設為在內文中要求僅限停車狀態動作,並更新說明文件,指明只有在車子停好時,才會顯示這兩者 (Iddaa9)
- 修正了啟動期間彈出 Screen時發生的例外狀況 (Ifcf40、b/184664896)
- 允許在 ForegroundCarColorSpan中自訂文字顏色 (I69e59)
- 修正了在某個 Screen的ON_DESTROY之後,還會看到Session上的ON_DESTROY的問題 (I52e01、b/183696617)
- 更新 javadoc,說明何時允許將 TravelEstimate的剩餘時間設為不明的時間。(I99610、b/183632456)
- 更新 Action,以支援標題中的ForegroundColorSpan以及任何自訂背景色彩 (I578e4)
- 如果執行工具執行前已清除回呼,就不執行 NavigationManagerCallback#onStopNavigation(I7fc5e、b/181143772)
- 修正了以下問題:要求應用程式必須在 lifecycle-common-java8 上明確採用依附元件 (I8b8c8)
已知問題
- 在 SignInTemplate中,當使用者想要確認輸入內容時,螢幕小鍵盤會顯示「搜尋」圖示,而不是「輸入」圖示。輸入欄位成為焦點時,系統會啟動手機鍵盤,使用者可以存取這個鍵盤,當做暫時的因應方法。
- 在 Android Auto 6.5 版中,某些觸控手勢可能會錯誤叫用 SurfaceCallback中的平移和縮放回呼。
車輛應用程式 1.0.0 測試版
1.0.0-alpha01 版
2021 年 3 月 24 日
發布 androidx.car.app:app-testing:1.0.0-alpha01。1.0.0-alpha01 版本包含以下修訂項目。
這是先前關閉的原始碼測試程式庫的第一個 Jetpack 版本。請參閱範例,瞭解如何在測試中使用這個程式庫。
新功能
- 已移除模型類別的控制器。模型 getter 現已併入公用 API 介面,可供驗證在建構工具中設定的值。
- 先前的 CarAppServiceController已由新的SessionController取代,用來測試與熱點連線生命週期相關的邏輯。
1.0.0 版本
1.0.0 版本
2021 年 4 月 21 日
發布了 androidx.car.app:app:1.0.0。1.0.0 版包含此連結所列的修訂項目。
1.0.0 的主要功能
- 我們在 4 月初宣布過,應用程式可以開始使用 androidx.car.app:app:1.0.0-rc01發布到正式版頻道。車輛應用程式程式庫 v1.0.0 版現已穩定,與 Android Auto 6.1 以上版本完全相容。
- 請參閱開發指南,進一步瞭解如何使用程式庫為 Android Auto 建構導覽、停車位和充電應用程式。
修正錯誤
- 修正了啟動期間彈出 Screen時發生的例外狀況 (70aae1、b/184664896)
- 修正了在某個 Screen的ON_DESTROY之後,還會看到Session上的ON_DESTROY的問題 (0ceecb、b/183696617)
1.0.0-rc01 版
2021 年 3 月 24 日
發布 androidx.car.app:app:1.0.0-rc01。1.0.0-rc01 版包含以下修訂項目。
修正錯誤
- 修正了系統清除回呼後會呼叫 NavigationManagerCallback#onStopNavigation的競爭狀況錯誤。如果回呼在回呼執行工具實際運作之前已清除,就會發生這種情況 (I7fc5e、b/181143772)
- 修正了以下問題:要求應用程式必須在 lifecycle-common-java8上明確採用依附元件 (I8b8c8)
- 修正了以下問題:應用程式在已經移除回呼的情況下收到 stopNavigation時,系統擲回NullPointerException(Ib8b89、b/181143772)
- 改善以下狀況:如果應用程式生命週期未處於至少 CREATED狀態,就不調派呼叫給應用程式 (I86965,b/179800224、b/177921120)
- 修正了以下問題:系統會擲回應用程式的資訊清單中指定的無效最低 API,造成主機上發生 ANR (Iffedd、b/174231592)
1.0.0-beta01 版
2021 年 2 月 24 日
發布 androidx.car.app:app:1.0.0-beta01。1.0.0-beta01 版包含此連結所列的修訂項目。
這是先前關閉的原始碼程式庫的第一個 Jetpack 版本,相容於 Android Auto 6.1 以上版本。請參閱開發指南,進一步瞭解如何使用程式庫建構車輛應用程式。
新功能
- 推出 GridTemplate,讓您的應用程式可以在格狀版面配置中顯示 UI 元素清單。
- 推出 CarAppService.createHostValidator方法,可驗證主機連線是來自可信任的來源 (例如 Android Auto)。
- 新增了 CarAppExtender.Builder.setColorAPI (b/174231592)。
修正錯誤
- 修正了以下問題:連續彈出螢幕時,系統會恢復使用錯誤的 Screen(b/177590791)
