6

標準アクションandroid.intent.action.SET_WALLPAPERのブロードキャスト送信者と受信者であるアプリケーションがあります。別のアプリケーションがこのインテントをブロードキャストした場合にのみ、いくつかのことを実行したいと思います。

BroadcastReceiverのonReceiveメソッドで誰がブロードキャストを開始したかを判断する方法はありますか?

4

2 に答える 2

5

アプリから送信されたかどうかだけが気になる場合は、インテントを作成するたびにインテントに追加するだけです。例えば:

broadcastIntent.putExtra('com.android.app.EXTRA_APP_CREATED', true)

そして、放送を受信したら、確認することができます

if (intent.getExtra('com.android.app.EXTRA_APP_CREATED', false) { ... }

インテントを作成したかどうかを確認します。

于 2013-03-14T17:31:38.427 に答える
5

いいえ。

アクションが別のアプリ(つまり、自分のアプリではない)によってブロードキャストされたときにのみ何かを実行したい場合は、アプリがこのブロードキャストを送信しなかったため、他の誰かであると簡単に判断できるはずです。

于 2010-09-20T22:34:42.777 に答える