1

Androidでラジオアプリケーションを作成しています。私は特有の問題に直面しています。これは簡単かもしれませんが、これを行う方法を理解することはできません。私は誰かが以前に同様の問題に直面したであろうと確信しています、そして私はここで解決策を得るでしょう

ステーションのリストを表示する最初のページがあります。これらのステーションのいずれかをクリックすると、再生、一時停止、停止の各コントロールを備えたビューを持つ新しいアクティビティが開始されます。このアクティビティが開始されると、startSevice()メソッドを使用して新しいサービスもすぐに呼び出します。すべてのメディアプレーヤーの処理は、このサービスで行われます。

現在、実際のメディア再生が開始される前に、進行状況ダイアログ(バッファリング)を表示する必要があります。サービスでProgressDialogを作成しようとしているが、渡されるコンテキストを要求していることを示すために、現在のコンテキストをに渡すときに、このサービスを呼び出したアクティビティのコンテキストを渡す必要があると思います。それ、それはエラーをスローします。

これを達成する方法は?サービスを開始したアクティビティのコンテキストを取得する方法はありますか?

そうでない場合、これを達成するための他の方法は何である可能性がありますか、それはメディアが再生を開始していない間にバッファリングステータスを表示することです

4

1 に答える 1

0

ブロードキャストインテントを使用します。サービスをアクティビティにバインドし、バッファリングの進行状況を1秒間隔でアクティビティにブロードキャストします。ブロードキャストを受信するアクティビティにレシーバーを作成し、それをアクティビティのプログレスバーに変換します。

私はあなたが答えることができるかもしれない質問があります:私はあなたと同じようにサービスを使用してストリーミングしていますが、バッファリングが最初に開始されたとき、オーディオの再生が開始されたときにキャプチャする方法がわかりません。 「バッファリング」通知。OnBufferingUpdateを試しましたが、オーディオが再生されているかどうかに関係なく、パーセンテージ値があります。ありがとう。

于 2011-04-27T16:02:09.987 に答える