2016-10-18 8 views
1

私のサービスはMediaBrowserServiceクラスを拡張し、getMediaController().getTransportControls().onPlay()などの特定のMediaControllerアクションに応答します。しかし、MediaControllerクラスが利用できないため、ウィジェットからサービスを "制御"する方法が見つかりませんでした。私のサービスとどうやりとりできますか?ウィジェットでMediaBrowserServiceを使用するにはどうすればよいですか?

答えて

2

お勧めのアプローチは、あなたがしてドキュメントごとに、あなたのonStartCommandMediaButtonReceiver.handleIntent()への呼び出しを追加することによって、それらを処理することができ、あなたのMediaBrowserService、にコマンドを転送しますた、MediaButtonReceiverを使用することです。

あなたがそのような詳細な回答のためsetOnClickPendingIntent()

+0

のおかげで、あなたのウィジェットのボタンを設定することができます(たとえば、再生、一時停止、などなど)さまざまなメディアボタン、用PendingIntentを構築するためにbuildMediaButtonPendingIntent()を使用することができます。私はまだ1つの質問があります。アプリウィジェットからセッションの状態(現在の曲のメタデータ、再生状態)をトラッキングするにはどうすればよいですか? – MisterCereal

+0

その情報を取得するための同期方法はないので、サービスを使用してウィジェットを更新する必要があります。そのサービスは 'MediaBrowser'を介して接続し、セッショントークンから' MediaController'を作成することができます。 – ianhanniballake

+0

@ianhanniballakeどのようにしてサービスについて知ることができますか?ウィジェットを有効にしてサービスを開始し、無効にするとサービスを停止しますか? – Ishaan

関連する問題