温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

获取Wifi信息及注册Wifi改变信息

发布时间:2020-06-23 21:51:49 来源:网络 阅读:658 作者:yidinshi 栏目:开发技术

项目用到,标记记录一下方便下一次使用。

先获取系统服务

(ConnectivityManager) mContext
                .getSystemService(Context.CONNECTIVITY_SERVICE);

注册广播

IntentFilter ifilter = new IntentFilter(
                    WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
            ifilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
            ifilter.addAction(WifiManager.WIFI_STATE_CHANGED_ACTION);
            mContext.registerReceiver(mWifiStateReceiver, ifilter);

接收广播

public class WifiStateReceiver extends BroadcastReceiver {
        @Override
        public void onReceive(Context context, Intent intent) {
            try {
                AspLog.v(TAG,
                        "WifiStateReceiver onReceive:" + intent.getAction());
                if (intent.getAction().equals(
                        WifiManager.WIFI_STATE_CHANGED_ACTION)) {
                    if (dialog_loading != null) {
                        AspLog.v(TAG,
                                "WIFI_STATE_CHANGED_ACTION dialog_loading="
                                        + dialog_loading + ",showing="
                                        + dialog_loading.isShowing()
                                        + ",wifistate=" + getWIFIstate());
                    } else {
                        AspLog.v(TAG,
                                "WIFI_STATE_CHANGED_ACTION dialog_loading="
                                        + dialog_loading + ",showing=null"
                                        + ",wifistate=" + getWIFIstate());
                    }
                    if (dialog_loading != null && dialog_loading.isShowing()
                            && getWIFIstate() == State.CONNECTED) {
                        dialog_loading.dismiss();
                        finishAsOk(intent);
                    }
                }
                if (intent.getAction().equals(
                        WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {// 判断wifi
                                                                        // enable的事件
                    if (mWifiList == null || mWifiList.size() == 0) {
                        mWifiList = mWifiManager.getScanResults();
                        listScanResults();
                    }
                    handlerWIFIMessage(STATE_UPDATE_LIST);
                }
                if (intent.getAction().equals(
                        WifiManager.NETWORK_STATE_CHANGED_ACTION)) {// 判断wifi
                                                                    // enable的事件
                    mWifiList = mWifiManager.getScanResults();
                    listScanResults();
                    AspLog.v(TAG, "wifiList size:" + mWifiList.size());
                    handlerWIFIMessage(STATE_UPDATE_LIST);
                    if (dialog_loading != null) {
                        AspLog.v(TAG,
                                "NETWORK_STATE_CHANGED_ACTION dialog_loading="
                                        + dialog_loading + ",showing="
                                        + dialog_loading.isShowing()
                                        + ",wifistate=" + getWIFIstate());
                    } else {
                        AspLog.v(TAG,
                                "NETWORK_STATE_CHANGED_ACTION dialog_loading="
                                        + dialog_loading + ",showing= null"
                                        + ",wifistate=" + getWIFIstate());
                    }
                    if (dialog_loading != null && dialog_loading.isShowing()
                            && getWIFIstate() == State.CONNECTED) {
                        dialog_loading.dismiss();
                        finishAsOk(intent);
                    }
                }
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }

更多的移动互联网的发展趋势、app开发、移动互联网应用相关的资料请到互联网的一点事:www.yidin.net 留言

android QQ群:222392467

资料:

http://www.yidin.net/?p=8280

http://www.yidin.net/?p=9725


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI