如果在android中没有wifi网络,如何通知用户

时间:2011-10-28 09:15:20

标签: android

如果在android中没有wifi网络,如android中的广播接收器,有人可以告诉我如何向用户发出通知吗?任何人都可以提供一个例子吗?

由于

2 个答案:

答案 0 :(得分:3)

Here is a tutorial to do this, it can do these things:

  • 设备上是否有WiFi
  • 启用WiFi是否为WiFi
  • 已连接到接入点

它的要点是:

private class ConnectionChangeReceiver extends BroadcastReceiver {
public void onReceive( Context context, Intent intent ) {
Log.d(tag, "Inside Broadcast Reciever");
CheckWifiStatus();
}
}

private void RegisterWifiWatcher()
{
    if(wifiWatcher == null)
    wifiWatcher = new ConnectionChangeReceiver();

    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
    intentFilter.addAction(WifiManager.SUPPLICANT_CONNECTION_CHANGE_ACTION);
    intentFilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
    intentFilter.addAction(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION);
    registerReceiver(wifiWatcher, intentFilter);
}

答案 1 :(得分:1)

您可以使用以下代码:

public final boolean isWiFiOn() {
    ConnectivityManager connec = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);

    if ((connec != null) && ((connec.getNetworkInfo(1) != null)
        && (connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTING
            || connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED || connec
            .getNetworkInfo(1).getState() == NetworkInfo.State.SUSPENDED)) {// To
        // check
        // WiFi
        // connection

        return true;
    } else {
        return false;
    }
    }

希望这会有所帮助。