オーディオ アプリに推奨されるアーキテクチャは、クライアント / サーバー型設計です。この設計では、プレーヤーとそのメディア セッションは MediaBrowserService
内に実装され、UI とメディア コントローラは MediaBrowser
とともに Android アクティビティ内に置かれます。
MediaBrowserService
の主な機能は次の 2 つです。
MediaBrowserService
を使用すると、MediaBrowser
を備えた他のコンポーネントやアプリから、サービスの検出、固有のメディア コントローラの作成、メディア セッションへの接続、プレーヤーの制御が可能になります。Wear OS や Android Auto のアプリからメディアアプリへのアクセスには、この方法が使われます。- 必要に応じて「ブラウジング API」も利用できます。この機能のアプリでの使用は必須ではありません。ブラウジング API を使用すると、クライアントからサービスにクエリを行い、コンテンツ階層(再生リスト、メディア ライブラリ、その他のコレクションを含む)の構造を表示できます。
- メディア ブラウザ サービスの作成
- メディア ブラウザ サービスの作成方法を説明します。このサービスは、メディア セッションを含み、クライアント接続を管理し、音声再生中はフォアグラウンド サービスになるものです。
- メディア ブラウザ クライアントの作成
- メディア ブラウザ クライアント アクティビティの作成方法を説明します。これは、UI とメディア コントローラを含み、メディア ブラウザ サービスとの接続と通信を行うものです。
- メディア セッション コールバック
- メディア セッション コールバック メソッドで、メディア セッション、メディア ブラウザ サービス、その他のアプリ コンポーネント(通知やブロードキャスト レシーバなど)を管理する方法を説明します。
- android-MediaBrowserService
- この GitHub サンプルには、音声をバックグラウンドで再生でき、他のアプリに公開するメディア ライブラリを提供するメディアアプリの実装方法が示されています。