android监听WIFI是否连接的广播每次都执行两次,怎么让它只发送一次广播
黄油奥特曼 2015-07-12 09:22:58 public class WifiReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
State wifiState=null;
State mobliState=null;
ConnectivityManager cm=(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
wifiState=cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
mobliState=cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
if(wifiState!=null&&mobliState!=null&&State.CONNECTED!=wifiState&&State.CONNECTED==mobliState){
//手机网络
Toast.makeText(context, "手机网络", 0).show();
}else if(wifiState!=null&&mobliState!=null&&State.CONNECTED!=wifiState&&State.CONNECTED!=mobliState){
//什么网络都没有
Toast.makeText(context, "什么网络都没有", 0).show();
}else if(wifiState!=null&&State.CONNECTED==wifiState){
//无线网络
Toast.makeText(context, "无线网络", 0).show();
}
}
}
上面的toast提示无线网络那个,每次都会执行两次,那么意味着在监听到无线网络的情况下,代码会执行两次,现在怎么做才能让它只执行一次呢???