Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る

メディアのカスタマイズ

メディアは一連のシステムアプリ(電話アプリ、アプリ ランチャーを含む)に属します。こうしたアプリは、AOSP 構造のさまざまなレベルで定義された共通のスタイルとアセットを共有します。

  • framework/base. Android のベーススタイルはすべて、ここで定義されています。

  • packages/services/Car/car_product/overlay. Android Automotive OS の AOSP のデザインを生成するために標準のフレームワーク / ベースリソースを変更するビルドタイム オーバーレイが含まれています。OEM はこのオーバーレイを除外し、独自のオーバーレイを使用することもできます。

  • packages/apps/Car/libs/car-ui-lib. このライブラリは、システムアプリとカスタマイズ用に設計されたバンドルされていないアプリに共通の、AAOS コンポーネントとリソースを定義します。詳細については、Car UI ライブラリ統合ガイドをご覧ください。

  • packages/apps/Car/libs/car_app_common Automotive システムアプリ間で共有される共通の色とスタイルです。OEM は、上記の car_product/overlay と同様に、オーバーレイを使用してこれらの要素をカスタマイズできます。

  • packages/apps/Car/libs/car_media_common メディアと他のメディア UI の間で共有される要素(ホーム画面のメディア ウィジェットなど)が含まれます。

  • packages/apps/Car/Media システムアプリはすべて、Theme.CarUi から拡張された独自のテーマを使用します(car-ui-lib で定義)。

Android Automotive AOSP では、メディアの 2 つのプレゼンテーションが提供されます。

  • メディア UI。ユーザーは、ログイン、コンテンツのブラウジング、詳細な再生コントロールの使用ができます。
  • ホーム画面のメディア ウィジェット。主要なメディア再生コントロール機能をホーム画面で使用できるようにします。

メディア UI

メディア UI の構造を下図に示します。

メディア UI

図 1. メディア UI

UX と UI のガイドラインや、メディアのさまざまなコンポーネントの空間構造について詳しくは、空間モデルをご覧ください。

AppBarView: ツールバー

メディア UI ツールバーは、電話アプリやラジオなどの他のシステムアプリと共有されるコンポーネントです。カスタマイズの詳細については、Car UI ライブラリ統合ガイドをご覧ください。

ブラウズ フラグメント

ブラウズは、主に Car UI RecyclerView(スクロールバーの位置、矢印、マージンを処理)で構成され、ヘッダー、グリッド アイテム、アイコン グリッド アイテム、リストアイテム、アイコン リストアイテムなど、さまざまなタイプのアイテムをブラウジングします。

最小化された再生コントロール

ブラウズ フラグメントを表示し、メディア アイテムを選択すると、最小化された再生コントロール ビューが表示されます。このビューの構造を下図に示します。

最小化された再生コントロール

図 2. 最小化された再生コントロール

ブラウズリスト

デベロッパーは、一連のスタイルヒントコンテンツ スタイルを適用するをご覧ください)を使用して、メディア ブラウズ コンテンツの表示をカスタマイズできます。OEM はこれらのスタイルを遵守し、デザイン システムに合わせてプレゼンテーションを調整する必要があります。

サポートされているアイテムタイプと、それぞれのレイアウトは次のとおりです。

  • LIST_ITEMmedia_browse_list_item.xml)。一般に、プレイリスト アイテムやお気に入りなど、ポッドキャストのエピソードに使用します。
  • ICON_LIST_ITEM media_browse_list_icons_item.xml)。メディア アイテムに含まれる画像が実際のアルバムアートではなくアイコンである、カテゴリまたはメニュー オプションに使用します。
  • GRID_ITEMmedia_browse_grid_item.xml)。一般に、曲やプレイリストなどの再生可能なアイテムに使用します。
  • ICON_GRID_ITEMmedia_browse_grid_icons_item.xml)。ICON_LIST_ITEM と同様に、カテゴリに使用します。
  • HEADERmedia_browse_header_item.xml)。メディア アイテムをセクションにまとめるために使用します。

再生画面

下記を表示するには、最小化された再生コントロールを展開します。

  • 現在再生中のメディア アイテムのメタデータ(タイトルとサブタイトルを含む)。
  • 完全な再生コントロール。
  • 再生キュー(最近再生したアイテムまたは次に再生するアイテムを表示するために使用)。

再生画面のコンポーネントは下図のとおりです。

再生画面

図 3. 再生画面

再生画面では、ツールバーはアプリの他の部分と共有されません。代わりに、画面の上部の要素が、この画面によって個別に管理されます。

再生コントロール

再生画面には再生コントロールの拡張セットが含まれ、コントロール行にまとめられています。第二の行(下図の最上部の行)は、最初の行のスペースが、PlaybackStateCompat#getActions() からメディアアプリによって返されたアクションをすべて表示するには不十分な場合にのみ表示されます。

再生コントロール

図 4. 再生コントロール

OEM は標準アクションのアイコンをカスタマイズできますが、メディアアプリによって提供されたとおりにカスタム アクションのアイコンを表示する必要があります。

ホーム画面のメディア ウィジェット

このウィジェットは、car-media-common のフラグメントとして実装されます。このフラグメントには、上記の再生画面の最小化版が含まれています。同じカスタマイズ ルールと機能が適用されます。

ホーム画面のメディア ウィジェット

図 5. ホーム画面のメディア ウィジェット

上記のアプリセレクタ ボタンは、メディアソース切り替えユーザーフローに記載されているスイッチ機能を使用します。

再生 / 一時停止 / 停止ボタンのレイアウト

再生 / 一時停止 / 停止ボタンのレイアウトは、「この曲なに?」と、最小化された再生コントロール ビュー用にカスタマイズできます。どちらのレイアウトも packages/apps/Car/libs/car-media-common/res/layout/ で定義されています。

ボタンのレイアウトをカスタマイズするには、ビルド時のオーバーレイを play_pause_stop_button_layout.xmlminimized_play_pause_stop_button_layout.xml に適用します。