2011-07-12 11 views
1

私はReceiverを登録してConnectivityManager.CONNECTIVITY_ACTION をコードに登録します。つまり、アプリケーションマニフェストに登録しません。すべて正常に動作していますが、私は受信者を登録するとすぐにネットワークが既にオンになっているにもかかわらず、自動的にブロードキャストを受信することに気付きます。ConnectivityManager.CONNECTIVITY_ACTIONは、受信者の登録時に常にブロードキャストされますか?

私の質問では、この自動ブロードキャストを使用して、ネットワークが使用可能かどうかを確認することができます。

私は、ネットワークが変更されたときだけでなく、自分の受信者を登録していないときにだけブロードキャストを期待していましたが、ブロードキャストを受信したという事実は非常に便利ですが、これは文書化された行動ですか?

答えて

2

はい、これはsticky broadcastsと呼ばれています。スティッキーブロードキャストは、registerBroadcastが呼び出されるとすぐに受信者に送信されます。

+0

ありがとうございました。 – Kerry

+3

この特定のブロードキャストが固執しているという事実について、その人には言及していないと言えば正しいですか?それはおそらく、私たちがこれに頼るべきではないということを意味します。 – BoD

+0

BoDのコメントはどうですか(私はこの質問に出会って同じことを思い出しました)?たぶんgoogleで問題を記入してください。参照:http://stackoverflow.com/questions/16427812/broadcastreceiver-onreceive-triggered-when-registered –

関連する問題