Android获取当前连接的wifi网络的SSID

时间:2014-04-13 19:42:55

标签: android string wifi ssid

有几个人提出了有关获取SSID的问题,所有这些问题都只能分散工作。根据Android API,wifiInfo.getSSID()应该返回一个字符串,但无论我做什么,if语句都返回false。我想检查一下我的手机是否已连接到#34; DieKantankys"

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
    WifiInfo wifiInfo = wifiManager.getConnectionInfo();

    //Log.d("wifiInfo", wifiInfo.toString());
    //Log.d("NetworkId",wifiInfo.getNetworkId());

    if(wifiInfo.getSSID()=="DieKantankys"){
        setContentView(R.layout.group_choose_activity);
    }else{
        setContentView(R.layout.not_connected_to_scouting_wifi_error);
    }

}

我做错了什么?

1 个答案:

答案 0 :(得分:4)

  

但无论我做什么,if语句都会返回false。

首先,当您比较字符串时,您必须使用equals(),因为您想要比较值而不是引用:

if (wifiInfo.getSSID().equals("DieKantankys")) {
   // do your stuff
}

出于这个原因,它确实不适合你。您当前的方案将始终返回 false ,因为您正在将字符串引用与==

进行比较

注意:有时非常方便"使用equalsIgnoreCase() - 使用此方法,比较不区分大小写。