自定義媒體

媒體屬於一套系統應用程序(例如,撥號器和應用程序啟動器)。這些應用程序共享在 AOSP 結構中不同級別定義的通用樣式和資產。

  • framework/base.所有 Android 基本樣式都在此處定義。

  • packages/services/Car/car_product/overlay.包含修改標準框架/基礎資源的構建時疊加層,以生成 Android Automotive OS 的 AOSP 外觀。 OEM 可以選擇排除此覆蓋層並使用自己的覆蓋層。

  • packages/apps/Car/libs/car-ui-lib.該庫定義了系統應用程序和專為定製而設計的非捆綁應用程序通用的 AAOS 組件和資源。有關詳細信息,請參閱汽車UI庫集成指南

  • packages/apps/Car/libs/car_app_common 。汽車系統應用程序之間共享的通用顏色和样式。原始設備製造商可以使用疊加來定制這些元件(類似於car_product/overlay如上所述)。

  • packages/apps/Car/libs/car_media_common 。包含在媒體和其他媒體 UI 之間共享的元素(例如,主屏幕媒體小部件)。

  • packages/apps/Car/Media 。所有的系統應用程序使用自己的主題,從延伸Theme.CarUi (定義在car-ui-lib )。

Android Automotive AOSP 提供了兩種媒體演示。

  • 媒體界面。使用戶能夠登錄、瀏覽內容和使用詳細的播放控件。
  • 主屏幕媒體小部件。允許在主屏幕上使用核心媒體播放控制功能。

媒體用戶界面

下圖描述了媒體 UI 的結構:

媒體界面

圖1.媒體用戶界面

有關UX和UI準則以及媒體的不同組件的空間結構的詳細信息,請參閱空間模型

AppBarView:工具欄

Media UI 工具欄是與其他系統應用程序共享的組件,例如 Dialer 和 Radio。有關它的設計定制的說明,請參閱汽車UI庫集成指南

媒體最大圖稿尺寸

通知藝術品的最大尺寸的媒體應用程序獲取,也可以重疊media_items_bitmap_max_size_px在您的系統。要做到這一點,送EXTRA_MEDIA_ART_SIZE_HINT_PIXELS作為根提示。因此,您可以在下載圖像時節省帶寬。要了解更多信息,請參閱MediaConstants上developer.android.com。

瀏覽片段

瀏覽主要包括一個汽車UI RecyclerView (其手柄滾動條位置,箭頭和邊距)和不同類型的瀏覽項目,如標題,網格項目,圖標網格項目,列表項和圖標列表項。

最小化播放控制

當正在顯示瀏覽片段,並且當選擇一個媒體項目,則顯示一個最小化的播放控制圖。下圖說明了該視圖的結構:

最小化播放控制

圖2.最小化播放控制

瀏覽列表

開發人員可以使用一組風格提示(見應用的內容風格)定制的瀏覽媒體內容的呈現。原始設備製造商必須堅持這些風格,根據他們的設計系統調整展示。

支持的項目類型和相應的佈局如下:

播放畫面

要顯示此屏幕,請展開最小化的播放控件:

  • 當前正在播放媒體項元數據(包括標題和副標題)。
  • 完整的播放控制。
  • 播放隊列(用於顯示最近播放或下一個要播放的項目)。

播放屏幕的組件在下圖中標識。

播放畫面

圖3.播放畫面

播放屏幕不與應用程序的其餘部分共享工具欄。相反,屏幕頂部的元素由該屏幕單獨管理。

播放控制

播放畫面包括擴展集播放控制,在控制組織的行的。二次行(如下面在頂行顯示),如果第一行的空間是不夠的,顯示由從所述媒體應用程序返回的所有的動作時,才顯示PlaybackStateCompat#getActions()

播放控制

圖4.播放控制。

OEM 可以自定義標準操作的圖標,但他們必須呈現媒體應用程序提供的自定義操作圖標。

主屏幕媒體小部件

這個小工具被實現為在片段car-media-common 。該片段包括上述播放屏幕的最小化版本。所有相同的自定義規則和功能都適用。

主屏幕媒體小部件

圖5.主屏幕媒體插件

應用選擇按鈕上述用途dislayed中所描述的開關功能媒體源切換用戶流程

要使用應用選擇按鈕當前媒體來源的圖標,疊加use_media_source_logo_for_app_selector中定義的標誌platform/packages/apps/Car/libs/car-media-common/res/values/bools.xml並將其設置為true 。通過此更改,應用程序工具欄另一側的媒體源圖標將被隱藏。自定義也適用於 Media Center 應用程序和參考 Radio 應用程序。

媒體應用選擇按鈕

圖6. Media應用程序選擇按鈕

播放、暫停和停止按鈕佈局

可以為“正在播放”和最小化的播放控件視圖自定義播放/暫停/停止按鈕佈局。這兩種佈局中定義packages/apps/Car/libs/car-media-common/res/layout/

要自定義的按鈕佈局,應用構建時覆蓋到play_pause_stop_button_layout.xmlminimized_play_pause_stop_button_layout.xml

突出顯示播放隊列中的當前項目

當前播放隊列項的狀態設置為selected ,因此它可以利用國家資源,如顏色狀態列表(見定制顏色狀態列表資源)和狀態列表可繪製(見繪製資源)。採取必要的造型變化,可以覆蓋隊列項目佈局(包/應用/汽車/媒體/ RES /佈局/ queue_list_item.xml )。

您還可以在當前播放隊列項目旁邊顯示一個圖標:

在播放隊列圖7.突出顯示的當前項目