オーディオ アプリの概要
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
オーディオ アプリに推奨されるアーキテクチャは、クライアント / サーバー型設計です。この設計では、プレーヤーとそのメディア セッションは MediaBrowserService
内に実装され、UI とメディア コントローラは MediaBrowser
とともに Android アクティビティ内に置かれます。
MediaBrowserService
の主な機能は次の 2 つです。
MediaBrowserService
を使用すると、MediaBrowser
を備えた他のコンポーネントやアプリから、サービスの検出、固有のメディア コントローラの作成、メディア セッションへの接続、プレーヤーの制御が可能になります。Wear OS や Android Auto のアプリからメディアアプリへのアクセスには、この方法が使われます。
必要に応じて「ブラウジング API」 も利用できます。この機能のアプリでの使用は必須ではありません。ブラウジング API を使用すると、クライアントからサービスにクエリを行い、コンテンツ階層(再生リスト、メディア ライブラリ、その他のコレクションを含む)の構造を表示できます。
注: メディア セッションやメディア コントローラの場合と同様、メディア ブラウザ サービスとメディア ブラウザの推奨される実装は、media-compat サポート ライブラリ で定義されている MediaBrowserServiceCompat
クラスと MediaBrowserCompat
クラスです。これらは、API 21 で導入された旧バージョンの MediaBrowserService
クラスと MediaBrowser
クラスに置き換わるものです。ここでは簡単化のため、「MediaBrowserService」、「MediaBrowser」という用語は、それぞれ MediaBrowserServiceCompat
、MediaBrowserCompat
のインスタンスを指すものとします。
メディア ブラウザ サービスの作成
メディア ブラウザ サービスの作成方法を説明します。このサービスは、メディア セッションを含み、クライアント接続を管理し、音声再生中はフォアグラウンド サービスになるものです。
メディア ブラウザ クライアントの作成
メディア ブラウザ クライアント アクティビティの作成方法を説明します。これは、UI とメディア コントローラを含み、メディア ブラウザ サービスとの接続と通信を行うものです。
メディア セッション コールバック
メディア セッション コールバック メソッドで、メディア セッション、メディア ブラウザ サービス、その他のアプリ コンポーネント(通知やブロードキャスト レシーバなど)を管理する方法を説明します。
android-MediaBrowserService
この GitHub サンプルには、音声をバックグラウンドで再生でき、他のアプリに公開するメディア ライブラリを提供するメディアアプリの実装方法が示されています。
このページのコンテンツやコードサンプルは、コンテンツ ライセンス に記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2019-12-27 UTC。
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"必要な情報がない"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"複雑すぎる / 手順が多すぎる"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"最新ではない"
},{
"type": "thumb-down",
"id": "translationIssue",
"label":"翻訳に関する問題"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"サンプル / コードに問題がある"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"その他"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"わかりやすい"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"問題の解決に役立った"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"その他"
}]