首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查用户是否连接到wifi网络?

如何检查用户是否连接到wifi网络?
EN

Stack Overflow用户
提问于 2014-04-08 10:09:07
回答 5查看 182关注 0票数 1

我知道如何检查wifi是否启用。

代码:

代码语言:javascript
复制
WifiManager wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
if(wifi.isWifiEnabled())
{
    //Code execution comes here
}

但是,如何确定用户是否真的连接到附近的wifi网络(或任何wifi网络)?

编辑:我的意思是问,如果用户在输入密码后登录到wifi网络,那么只有他才能使用该wifi。那么,是否有检查是否已连接(登录)到任何wifi网络?

EN

回答 5

Stack Overflow用户

发布于 2014-04-08 10:17:40

您应该能够使用ConnectivityManager来获取Wifi适配器的状态。通过这个你可以检查如果它是连接的..。

检查wifi是否被合并的方法:

代码语言:javascript
复制
public static Boolean checkWIFI(Activity activity) {
    Log.d("checkWIFI", "checkWIFI");

    ConnectivityManager cm = (ConnectivityManager) activity
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();

    Log.d("NetworkInfo", "NetworkInfo" + netInfo);

    if (netInfo != null && netInfo.isConnectedOrConnecting()) {
        return true;
    } else if (netInfo != null
            && (netInfo.getState() == NetworkInfo.State.DISCONNECTED
                    || netInfo.getState() == NetworkInfo.State.DISCONNECTING
                    || netInfo.getState() == NetworkInfo.State.SUSPENDED || netInfo
                    .getState() == NetworkInfo.State.UNKNOWN)) {
        return false;

    } else {
        return false;
    }
}

您需要在清单中添加权限。

代码语言:javascript
复制
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET" />

好运!!

票数 1
EN

Stack Overflow用户

发布于 2014-04-08 10:15:32

试试这个:

代码语言:javascript
复制
ConnectivityManager connManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

if (mWifi.isConnected()) {
    // Do whatever
}

希望这有帮助..。:)

票数 0
EN

Stack Overflow用户

发布于 2014-04-08 10:16:26

尝尝这个

代码语言:javascript
复制
ConnectivityManager con=(ConnectivityManager)getSystemService(Activity.CONNECTIVITY_SERVICE);
boolean wifi=con.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();

    //check Internet connection
    if(wifi)
    {
        //do what you want
    }else{
    }

还添加了要求的权限

代码语言:javascript
复制
  <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

希望这能起作用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22933837

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档