原始設備製造商應盡快改用最新版 car-ui-lib-plugin-apis
(1.2.0 以上版本)。理想情況下,OEM 應避免出貨使用舊版外掛程式的任何裝置。
異動原因
透過 Java 8+ API 脫糖支援,舊版 Android 支援 Java 8 以上版本 API。缺少 API 的實作項目會編譯到應用程式中,APK 的位元組碼也會重新編寫,以參照實作項目,而非平台上的程式庫。
如要從 Car UI 程式庫外掛程式載入 UI 元件的 OEM 實作項目,必須參照car-ui-lib-plugin-apis
介面定義的方法。這些方法參照是在執行階段從應用程式傳送至 Car UI 程式庫外掛程式,且預期應用程式和外掛程式實作中的方法簽章相同。
由於特定最低 SDK 級別的要求,部分建構系統會一律啟用 API 脫糖。car-ui-lib-plugin-apis
介面的去糖化方法簽章可能與未去糖化的原始設備製造商外掛程式實作項目不符,導致外掛程式無法載入。
因此,使用 Google 內部建構系統編譯的部分 GAS 應用程式,與 Car UI 程式庫外掛程式不相容。因此,我們已移除所有需要脫糖程序的 Java 8 (和更高版本) API 依附元件。這項變更需要更新 car-ui-lib-plugin-apis
定義的介面 API。
OEM 外掛程式的必要步驟
請按照下列步驟更新 API:
更新外掛程式實作項目,使用最新版
car-ui-lib-plugin-apis
。如要取得最新版本 (1.2.0 以上),請參閱「Google 的 Maven 存放區」。更新外掛程式實作項目,以實作
PluginFactoryOEMV4
介面。如果元件是由 OEM 外掛程式實作,這項變更需要執行下列步驟。更新下列項目的 OEM 實作內容:工具列,即可實作
ToolbarControllerOEMV2
。內容清單項目,用於擴充
ContentListItemOEMV2
。IME 搜尋結果處理,以擴充
ImeSearchInterfaceOEMV2
。
更新應用程式,使用最新版 Car UI 程式庫。
如果沒有套用這項更新,會發生什麼事?
如果未完成本頁面提供的 OEM 外掛程式步驟,系統就無法載入 Google 汽車服務 (GAS) 等去糖化應用程式的 Car UI Library 外掛程式實作項目,且不會透過外掛程式機制套用任何 OEM 自訂項目。
Car UI 程式庫的現有 RRO 自訂項目不受這個問題影響,可繼續正常運作。