梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发

发布于 2022-7-21 19:15
浏览
1收藏

###本文章仅整理视频笔记及对一些地方的解释,如果想看详细内容,请在鸿蒙开发者学堂搜索鸿蒙设备开发###

###本文章图片来自视频后PDF文档,本文侧重代码讲解###

1.WiFi AP热点

1.1.AP热点API介绍

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

1.2.实例代码

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

1.3.代码讲解

打开相关文件,引入库文件,并定义AP热点id与密钥

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

定义一个AP Demo任务

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

定义三个回调函数

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

第一个函数创建一个任务并回调下图函数,第二个获取断开AP热点的主机地址信息并打印,第三个函数打印主机发送变化时的信息

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

将加入的主机地址添加到List中并打印加入的主机地址的信息,想要加入到List并获取的话,还需做以下更改

打开如下文件,找到第178行

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

将staNum的值改为上一行中括号中的值。如下图。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

设置AP 热点

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

将之前定义的三个函数注册在WIFI事件中,并且判断是否注册成功,成功后对AP热点进行配置(config),设置id,密钥,安全模式,波段(2G频段),channel数量。之后判断是否配置成功。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

配置成功后启动WIFI AP 热点并判断是否启动成功,成功后判断热点是否使能。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

AP 热点都配置好启动后,启动dhcp(一种网络协议),定义三个变量并进行配置(三个变量分别为网关,ip地址和子网掩码),之后进行设置并判断1是否设置成功,成功后启动并判断是否启动成功。netif(网络接口结构体)。

2.WIFI STA联网

2.1.相关API函数接口

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

2.2.实例代码

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

2.3.代码讲解

打开文件,引入库文件

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

引入库文件后定义扫描时间,定义相关函数(初始化,扫描,连接,扫描改变,连接改变,hotspot连接,hotspot断开,hotspot改变),定义变量,是否扫描成功,是否连接成功,wifi数,wifi事件,定义wlan port,定义想要连接的wifi名,密钥,加密类型。

定义STA连接任务

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

 

初始化wifi,将相关函数注册到wifi事件。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

比较关键的是下图的两个函数,扫描发生改变变量赋值1,连接成功相关变量赋值1,否则打印连接失败检查password。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

初始化后使能wifi并判断是否使能成功,之后判断wifi是否激活,激活成功后为wifi信息分配空间并判断是否分配成功。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

查找wifi并打印出wifi列表

等待扫描函数

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

扫描15s如果一个都没扫描到,输出扫描超时,否则打印扫描成功。当g_staScanSuccess不为1时持续执行查找wifi列表函数。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

连接一开始定义的指定的wifi,遍历wifi列表,如果没有找到,打印没有期望的wifi,如果找到,打印等待连接,并对wifi进行配置(wifi名,密钥,加密方式)对应成功后尝试连接,如果连接成功打印连接成功提示。

梅科尔工作室-看鸿蒙设备开发实战14天笔记(六)-无线联网开发-开源基础软件社区

之后启动DHCP并等待DHCP,如果等待成功执行其他操作。

 

已于2022-7-21 19:15:24修改
1
收藏 1
回复
举报
回复
添加资源
添加资源将有机会获得更多曝光,你也可以直接关联已上传资源 去关联
    相关推荐