AEP ガイドライン: Media3

Jetpack Media3 ライブラリをメディア再生、セッション、編集、メタデータ、フレーム抽出の標準として統合し、アプリが Android フォーム ファクタ全体で複雑なメディア タスクを処理するための推奨 API を利用できるようにします。レガシー フレームワーク API(MediaPlayer、MediaMuxer、MediaExtractor など)から堅牢な Jetpack Media3 ライブラリに移行することで、メディア アーキテクチャを最新化すると、一貫したメディア エクスペリエンスを保証する、機能豊富な統合ツールキットが提供されます。

実装の要件

AEP の対象となるには、アプリが次の要件を満たしている必要があります。

  • MediaPlayer、MediaExtractor、MediaMuxer、MediaMetadataRetriever などの以前の Android フレームワーク API を使用してはなりません。
  • 再生がコア ユーザー ジャーニーである場合、アプリは OS 認識とクロスデバイス統合のためにメディア セッションを統合する必要があります。
  • アプリに音声コンテンツ ライブラリがある場合、MediaLibraryService を通じてコンテンツを公開し、メディアの再開のサポートを実装しなければなりません。

ガイドラインの適用範囲

このガイドラインは、以下に適用されます。

  • メディア(動画または音声)の再生または動画編集をサポートするアプリ。
  • アプリが利用可能なすべてのフォーム ファクタ。

除外

アプリは、エコシステム全体で同様の品質、ユーザー機能、安定性、互換性を提供する同等の代替フレームワークを使用できます。検討に適したフレームワークをお持ちの場合は、サポートにお問い合わせください。代替実装が対象となるには、次のベンチマークを満たす必要があります。

  • 高速ネットワークでは、最初の動画フレームはユーザーの開始から 500 ミリ秒以内に表示される必要があります。
  • 30 秒間のウィンドウで、フレーム落ちや音声のアンダーランが目に見える形で発生することなく、再生がスムーズに継続される必要があります。
  • アプリは 音声フォーカスを適切に管理する必要があります。
  • アプリは、バックグラウンドで実行されている場合でも、ハードウェア メディアキーに応答する必要があります。
  • バックグラウンド再生がサポートされている場合、アプリはメディア スタイルの通知を投稿し、フォアグラウンド サービスを使用する必要があります。
  • アプリが再生の再開をサポートする場合、メディアの再開を実装する必要があります。
  • ヘッドフォンの接続解除は適切に処理する必要があります。たとえば、スピーカーに切り替えるのではなく、再生を一時停止します。
  • デバイスの向きを切り替えたときに、フレーム落ちせずに再生を継続しなければなりません。

機能のドキュメントとリソース

以下のリソースでは、Media3 機能の実装ガイダンスと技術的な詳細について説明します。これらのリソースは参考用であり、追加のプログラム要件は含まれていません。