In my app I have a BroadcastReceiver
that is launched as a component through a <receiver>
tag, filtering android.net.conn.CONNECTIVITY_CHANGE
intents.
My goal is simply to know when a Wifi connection was established, so what I am doing in onReceive()
is this:
NetworkInfo networkInfo = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
if(networkInfo.getType() == ConnectivityManager.TYPE_WIFI && networkInfo.isConnected()) {
// Wifi is connected
}
It works fine, but I always seem to get two identical intents within about one second when a Wifi connection is established. I tried to look at any info I could get from the intent, the ConnectivityManager
and WifiManager
, but I can't find anything that distinguishes the two intents.
Looking at the log, there is at least one other BroadcastReceiver
that also receives the two identical intents.
It is running on a HTC Desire with Android 2.2
Any idea why I seem to get a "duplicated" intent when Wifi connects or what the difference between the two might be?