【Android开发—智能家居系列】(三):手机连接WIFI模块

简介:

目录(?)[+]

概述

  实现连接WIFI的功能会用到一个工具类,源码可以点击链接下载。网上这些类似的工具类里的代码差不多是一样的。连接无线网主要有两个方法: 
其中有一个Connect方法,还有一个connectSpecificAP方法,对于不需要密码就能链接的WIFI模块,我使用的是后者。

主要步骤

连接WIFI大致分为一下几个步骤: 
【1】打开WIFI 
openWifi 
【2】配置网络信息 
createWifiInfo返回WIFiConfig 
【3】添加配置好的网络并连接 
int netID = mWifiManager.addNetwork(wifiConfig); 
boolean bRet = mWifiManager.enableNetwork(netID, false); 
【4】判断连接是否成功 
上面的enableNetWork方法返回成功并不能反映手机是否真的连接成功,所以还需要调用isConnect方法进行判断,针对自己的业务逻辑和场景,我又写了一个判断是否连接成功的方法:isWifiConnected的方法

应用

/**
     * 手机接入模块的WIFI网络——BLACKANTS
     */
    private void  ConnectDisplay(){
        //获得消息对象 Message msg=mainHandler.obtainMessage(); //是否连接成功的一个标记 Boolean isConnected=false; //标志BLACKANTS的ScanResult是否存在,true存在,false不存在 Boolean isExist=false; //用户存放BLACKANTS的WIFI信息 ScanResult srWifiInfo=null; //声明一个用于临时存放SSID的变量 String strTempSSID; /******************以下一段代码主要是为了获得BLACKANTS的ScanResult(包括了它的SSID,BSSID,capabilities)*****************/ //扫描WIFI wifiAdmin.startScan(); //获得WIFI列表 List<ScanResult> lstWiFi= wifiAdmin.getWifiList(); //如果WIFI列表为空,则说明WIFI开关未打开,向Handler发送消息 if(lstWiFi==null || lstWiFi.size()==0){ msg.what=NotOpen; mainHandler.sendMessage(msg); return; } //如果列表存在,则对列表进行遍历 if(lstWiFi!=null & lstWiFi.size()>0){ //遍历列表,查看BLACKANTS是否存在 for(int i=0;i<lstWiFi.size();i++){ strTempSSID=lstWiFi.get(i).SSID; //如果存在,则退出For循环 if((DisplaySSID).equals(strTempSSID.trim()) ){ //修改标志位为存在 isExist=true; //将BLACKANTS的Wifi信息放入到变量srWifiInfo中 srWifiInfo=lstWiFi.get(i); break; } } } /******************以上一段代码主要是为了获得BLACKANTS的ScanResult(包括了它的SSID,BSSID,capabilities)*****************/ //默认是失败 msg.what=Failure; //如果存在,则让手机接入BLACKANTS-------------------V1.0 if(isExist){ if(wifiAdmin.connectSpecificAP(srWifiInfo)){ //判断是否连接上 if(wifiAdmin.isWifiConnected(InitActivity.this,DisplaySSID)){ msg.what=Success; } } } mainHandler.sendMessage(msg); }

附:

下载工具类(WIFIAdmin)






    本文转自 一点点征服   博客园博客,原文链接:

http://www.cnblogs.com/ldq2016/p/6774176.html

,如需转载请自行联系原作者

相关文章
|
3天前
|
Android开发
Android 状态栏WiFi图标的显示逻辑
Android 状态栏WiFi图标的显示逻辑
17 0
|
3天前
|
Android开发
android连接指定wifi
android连接指定wifi
13 0
|
3天前
|
Java Android开发
Android 9在连接以太网情况下 还能连接WiFi
Android 9在连接以太网情况下 还能连接WiFi
8 0
|
3天前
|
Android开发
Android12 ethernet和wifi共存
Android12 ethernet和wifi共存
8 0
|
3天前
|
Java Shell Android开发
Android11 有线网和wifi优先级设置
Android11 有线网和wifi优先级设置
8 0
|
3天前
|
Java Android开发 开发者
rk3399 android以太网和wifi共存
rk3399 android以太网和wifi共存
11 0
|
3天前
|
缓存 Java Android开发
Android 9.0 WiFi 扫描结果上报和获取流程
Android 9.0 WiFi 扫描结果上报和获取流程
7 0
|
2月前
|
人工智能 搜索推荐 语音技术
未来智能家居技术的发展与应用前景
随着人工智能、物联网等技术的快速发展,智能家居正逐渐成为现代家庭生活的重要组成部分。本文将探讨未来智能家居技术的发展趋势,以及其在提升生活品质、节能环保等方面的广阔应用前景。
46 0
|
2月前
|
人工智能 搜索推荐 人机交互
未来智能家居技术的发展趋势与应用前景
当提到智能家居技术,我们往往会联想到便捷的生活方式和高效的能源利用。然而,未来智能家居技术的发展不仅仅局限于这些表面的便利,更涉及到对于人类生活的深刻改变和未来社会发展的巨大影响。本文将探讨未来智能家居技术的发展趋势以及其在日常生活、健康管理、能源节约等方面的应用前景,旨在带领读者了解智能家居技术的未来走向。
13 1
|
2月前
|
人工智能 监控 安全
未来智能家居技术的发展趋势与应用前景
随着人工智能和物联网技术的不断进步,智能家居已经成为现代生活中不可或缺的一部分。本文将探讨未来智能家居技术的发展趋势,以及其在日常生活中的广泛应用前景,为读者揭示智能家居领域的新趋势和可能性。
15 2