0

正常に動作するブロードキャストレシーバーがありますが、ステータスバーに送信通知を送信したいと思います。BroadcastReceiverは直接それを行うことができないので、それを正しく行うためのサービスを作成する必要があるように見えますか?

そこで、http://developer.android.com/reference/android/app/Service.htmlで提供されている例を使用してサービスを作成しました

いくつかの小さな調整を除いて、それはそのコードです。context.startService(new Intent(context、AlertUser.class));を使用してブロードキャストレシーバーからサービスを開始します。

何が起こったのかというと、ステータスバーにメッセージが表示されていたのです。次に、クリアを実行して新しいメッセージを生成させたときに、サービスコードが実行されませんでした。開始後、彼のサービスとは異なる方法でやり取りしますか?同じプロセスの一部である場合、私が読んだことから。

また、BroadcastReceiverからサービスに文字列などの情報を共有して、通知に表示する情報にする方法を教えてください。

ありがとう、

フランク

4

1 に答える 1

0

BroadcastReceiver は直接それを行うことができないため、それを行うにはサービスを作成する必要があるようです。

BroadcastReceiverを表示できますNotification

サービスが開始されると、別の方法でサービスと対話しますか?

あまり。経由でサービスにコマンドを送信している場合startService()、それらのコマンドは で受信されonStartCommand()ます。

BroadcastReceiverからサービスへの文字列のような情報を共有して、通知に表示する情報をどのように共有しますか?

に渡すときにエクストラでIntent渡し、 instartService()から取り出します。IntentonStartCommand()

于 2012-05-17T16:35:52.287 に答える