以下是我检查Android设备是否连接到Wi-Fi网络的方法:
NetworkInfo info = ((ConnectivityManager) ctx.getSystemService(Context .CONNECTIVITY_SERVICE)).getNetworkInfo(ConnectivityManager.TYPE_WIFI);boolean isWifiConnected = info != null && info.isAvailable() && info.isConnected();
这适用于AndroID 6.0之前的所有版本.
但是,在AndroID 6.0上,如果设备连接到无法访问Internet的Wi-Fi,则info.isConnected()将返回false.
那么,我怎么能确定该设备已连接到AndroID 6.0上的Wi-Fi?
解决方法:
对于AndroID 5.0及更高版本,您需要使用其他API来检查设备是否已连接到WiFi网络.该设备也可能同时连接到移动网络.
ConnectivityManager connectivityManager = ((ConnectivityManager) ctx.getSystemService (Context.CONNECTIVITY_SERVICE)); boolean isWifiConnected = false; Network[] networks = connectivityManager.getAllNetworks(); if (networks == null) { isWifiConnected = false; } else { for (Network network : networks) { NetworkInfo info = connectivityManager.getNetworkInfo(network); if (info != null && info.getType() == ConnectivityManager.TYPE_WIFI) { if (info.isAvailable() && info.isConnected()) { isWifiConnected = true; break; } } } } return isWifiConnected;
总结 以上是内存溢出为你收集整理的Android 6.0检查是否连接到Wi-Fi(没有Internet)全部内容,希望文章能够帮你解决Android 6.0检查是否连接到Wi-Fi(没有Internet)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)