【问题标题】:Wifi manager and wifi informationWifi 管理器和 wifi 信息
【发布时间】:2013-12-14 02:09:05
【问题描述】:

我想获取一些有关 Wifi 的信息,例如 SSID 名称、IP 地址和速度,所以我编写了这段代码

WifiManager wifiMgr = (WifiManager) getSystemService(WIFI_SERVICE);
WifiInfo wifiInfo = wifiMgr.getConnectionInfo();

int ip = wifiInfo.getIpAddress();
int speed = wifiInfo.getLinkSpeed();
speedString = Integer.toString(speed);
mac = wifiInfo.getMacAddress();
ssid = wifiInfo.getSSID();
ipAddress = Formatter.formatIpAddress(ip);

问题是如果启用了 WiFi 但手机没有连接到我显示的任何网络

SSID: 0x
Ip: 0.0.0.0
Speed: -1 mbps

我不想显示这种类型的信息,所以我尝试了

if(ipAddress=="0.0.0.0") {
    Ip.setSummary("Not connected");
}

但不工作,因为我看到相同的信息(ssid:0x,ip:0.0.0.0 ecc)。我该如何解决?

【问题讨论】:

    标签: java android xml wifi


    【解决方案1】:
    NetworkInfo networkInfo = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
    if (networkInfo.isConnected()) {
    WifiManager wifiMgr = (WifiManager) getSystemService(WIFI_SERVICE);
    WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
    
    int ip = wifiInfo.getIpAddress();
    int speed = wifiInfo.getLinkSpeed();
    speedString = Integer.toString(speed);
    mac = wifiInfo.getMacAddress();
    ssid = wifiInfo.getSSID();
    ipAddress = Formatter.formatIpAddress(ip);
    }
    

    试试这个

    【讨论】:

      猜你喜欢
      • 2012-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-26
      • 2012-06-15
      • 1970-01-01
      相关资源
      最近更新 更多