2010-12-01 24 views
0

常に実行され、いくつかのイベントを待ち受けるサービスがあり、いつかそれらをログにプッシュします。それらのイベントを実行中のメインアクティビティに表示したいのですが、そのイベントの詳細をアクティビティに送信する方法はありますか?あなたはContext.startActivity()でアクティビティに送信するときにインテント自体を受信しないので、Intent.getXxxExtra()でデータを取得することはできません。
(フォアグラウンドでない場合、アクティビティがアクティビティをオープンしないように、アクティビティはonStart()およびonStop()のイベントに「サブスクライブ」および「スクリプト解除」する予定です)
または、サービスからインテントにデータ(20〜30文字の長さの文字列)を送信する他の方法はありますか?アクティビティにインテントを送信し、アクティビティからエクストラを読み取るにはどうすればよいですか?

答えて

1

あなたのサービスからブロードキャストを発行し、自分のアクティビティにプライベートBroadcastReceiverを実装してください。

0

はい、Handlerクラスを使用して、サービスとメインアクティビティの間でメッセージを受け渡しすることができます。

+0

私は多かれ少なかれインテントに精通しているため、十分に見えるが、決してメッセージとハンドラを使用していないので、今はBroadcastReceiversと一緒に行くだろう。 –

関連する問題