掌桥专利:专业的专利平台
掌桥专利
首页

一种单WIFI模块STA和AP同时工作的方法及相关设备

文献发布时间:2023-06-19 12:10:19


一种单WIFI模块STA和AP同时工作的方法及相关设备

技术领域

本申请实施例涉及无线通信领域,特别涉及一种单WIFI模块STA和AP同时工作的方法及相关设备。

背景技术

信息技术的不断发展使得网络成为大众生活的重要组成部分,利用智能设备连接无线和开启热点是一个常见的现象。但是在目前存在的Android系统智能设备中,设有一个开启连接无线的开关和一个开启热点的开关,但是这两个开关互相排斥,例当Android智能设备连接STA(Station)时,没办法开启AP(Access Point),或Android智能设备开启AP(Access Point)时,则无法连接STA(Station)。

发明内容

本申请实施例提供了一种单WIFI模块STA和AP同时工作的方法及相关设备,由于通过一个Wi-Fi模组生成两个不互斥的虚拟网卡,使用一个连接无线,另一个用来开启热点,使得安卓智能设备可以同时连接无线和开启热点。

本申请实施例第一方面提供了一种单WIFI模块STA和AP同时工作的方法,包括:

确定Wi-Fi模组的模组驱动;

根据所述模组驱动生成第一虚拟网卡和第二虚拟网卡;

通过所述第一虚拟网卡执行STA工作;

根据所述第二虚拟网卡在热点函数中设置热点启动预设值,所述热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

根据所述热点启动预设值通过所述第二虚拟网卡执行AP工作。

可选的,所述根据所述模组驱动生成第一虚拟网卡和第二虚拟网卡,包括:

利用所述Wi-Fi模组接收第一参数和第二参数;

通过所述第一参数生成第一虚拟网卡,且通过所述第二参数生成第二虚拟网卡。

可选的,所述根据所述第二虚拟网卡在热点函数中设置热点启动预设值之后,所述方法还包括:

启动守护进程,所述守护进程包括第一守护进程和第二守护进程,所述第一守护进程用于开启热点功能,所述第二守护进程用于关闭热点功能。

可选的,所述根据所述热点启动预设值通过所述第二虚拟网卡执行AP工作,包括:

利用所述守护进程判断所述热点启动预设值是否满足预设热点开启值;

若是,则接收热点开启指令,并根据所述热点开启指令执行AP工作。

可选的,所述利用所述守护进程判断所述热点启动预设值是否满足预设热点开启值之后,所述方法还包括:

若否,则接收热点关闭指令,并根据所述热点关闭指令执行AP工作。

本申请实施例第二方面提供了一种单WIFI模块STA和AP同时工作的装置,包括:

确定单元,用于确定Wi-Fi模组的模组驱动;

生成单元,用于根据所述模组驱动生成第一虚拟网卡和第二虚拟网卡;

第一执行单元,用于通过所述第一虚拟网卡执行STA工作;

设置单元,用于根据所述第二虚拟网卡在热点函数中设置热点启动预设值,所述热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

第二执行单元,用于根据所述热点启动预设值通过所述第二虚拟网卡执行AP工作。

可选的,所述生成单元,包括:

接收模块,用于利用所述Wi-Fi模组接收第一参数和第二参数;

生成模块,通过所述第一参数生成第一虚拟网卡,且通过所述第二参数生成第二虚拟网卡。

可选的,所述单WIFI模块STA和AP同时工作的装置还包括:

启动单元,用于启动守护进程,所述守护进程包括第一守护进程和第二守护进程,所述第一守护进程用于开启热点功能,所述第二守护进程用于关闭热点功能。

可选的,所述第二执行单元,包括:

判断模块,利用所述守护进程判断所述热点启动预设值是否满足预设热点开启值;

接收/开启模块,用于当所述判断模块确定所述热点启动预设值满足预设热点开启值时,接收热点开启指令,并根据所述热点开启指令执行AP工作。

可选的,所述第二执行单元还包括:

接收/关闭模块,用于当所述判断模块确定所述热点启动预设值不满足预设热点开启值时,接收热点关闭指令,并根据所述热点关闭指令执行AP工作。

本申请实施例第三方面提供了一种单WIFI模块STA和AP同时工作的装置,包括:

处理器、存储器、输入输出设备以及总线;所述处理器与所述存储器、输入输出设备以及总线相连。

所述处理器执行如下操作:

确定Wi-Fi模组的模组驱动;

根据模组驱动生成第一虚拟网卡和第二虚拟网卡;

通过所述第一虚拟网卡执行STA工作;

根据所述第二虚拟网卡在热点函数中设置热点启动预设值,所述热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

根据所述热点启动预设值通过第二虚拟网卡执行AP工作。

本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上保存有程序,所述程序在计算机上执行是执行前述方法。

从以上技术中:确定Wi-Fi模组的模组驱动;根据模组驱动生成第一虚拟网卡和第二虚拟网卡;通过所述第一虚拟网卡执行STA工作;根据所述第二虚拟网卡在热点函数中设置热点启动预设值,所述热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;根据所述热点启动预设值通过第二虚拟网卡执行AP工作。由于通过一个Wi-Fi模组生成两个不互斥的虚拟网卡,使用一个连接无线,另一个用来开启热点,使得安卓智能设备可以同时连接无线和开启热点。

附图说明

图1为本申请实施例中单WIFI模块STA和AP同时工作的方法一个实施例流程示意图;

图2为本申请实施例中单WIFI模块STA和AP同时工作的方法另一实施例流程示意图;

图3为本申请实施例中单WIFI模块STA和AP同时工作的装置一个实施例结构示意图;

图4为本申请实施例中单WIFI模块STA和AP同时工作的装置另一实施例结构示意图。

具体实施方式

本申请实施例提供了一种单WIFI模块STA和AP同时工作的方法及相关设备,由于通过一个Wi-Fi模组生成两个不互斥的虚拟网卡,使用一个连接无线,另一个用来开启热点,使得安卓智能设备可以同时连接无线和开启热点。

请参阅图1,本申请实施例中单WIFI模块STA和AP同时工作的方法一个实施例包括:

101、确定Wi-Fi模组的模组驱动;

在本实施例中,以智能手机为一个单WIFI模块STA和AP同时工作的装置为例做简要描述。

在智能手机启动时,安装于智能手机的系统也会随之启动。当手机系统启动时,安装在智能手机上的Wi-Fi模组也随手机系统的启动进行加载,即加载Wi-Fi模组。在加载Wi-Fi模组的时候手机系统就会检测到该Wi-Fi模组的模组驱动,此时,手机系统就会确定检测到的模组驱动。

102、根据模组驱动生成第一虚拟网卡和第二虚拟网卡;

系统确定该Wi-Fi模组的模组驱动后,系统控制该模组驱动生成两个虚拟网卡,分别为第一虚拟网卡和第二虚拟网卡;以上虚拟网卡与正常能上网的网卡一样可以用于网络连接。该第一虚拟网卡受STA开关控制;该第二虚拟网卡受AP开关控制。

在本实施例中,第一虚拟网卡和第二虚拟网卡只是用于区别两个虚拟网卡,第一虚拟网卡可以为第三虚拟网卡,第二虚拟网卡也可以为第四虚拟网卡,具体此处不做具体限定。

103、通过第一虚拟网卡执行STA工作;

在智能手机的手机系统上,使用生成的两个虚拟网卡中第一虚拟网卡来执行STA工作,具体的:智能手机需要进行连接无线之前,需要将STA开关打开;手机系统在开启后,一直处于检测STA开关状态;在手机系统检测到STA开关被开启后,智能手机就会根据该STA开关状态来控制手机是否连接无线。当STA开关状态是开启状态时,手机就会开启无线,此时若有可以连接的无线,手机就会连接能连接上的无线;当STA开关状态是关闭状态时,手机直接关闭无线功能,不进行任何可连接的无线检测。

在本实施例中,该步骤还可以与步骤106同时进行,具体顺序不做具体限定。

104、根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

在系统对应的源程序中找到开启热点函数和关闭热点函数,然后在开启热点函数中设置热点启动预设值为true,在关闭热点函数中设置热点启动预设值为false;用于系统根据该热点启动预设值对智能手机进行开启或关闭热点功能,当热点启动预设值为true时,智能手机就会开启热点功能;当热点启动预设值为false时,智能手机就会关闭热点功能。

在本实施例中,热点启动预设值的范围可以是[true,false]也可以是[0,1]等,具体此处不做具体限定。

105、根据热点启动预设值通过第二虚拟网卡执行AP工作。

当在步骤104中在相对应的热点函数中设置好热点启动预设值后,系统在开启后,不仅一直处于检测STA开关状态,也会一直检测AP开关状态。若该AP开关开启后,则会触发开启热点函数,此时进入函数中可能确定热点启动预设值为true,此时系统就会开启手机热点,即执行AP工作;若该AP开关关闭触发关闭热点函数,关闭热点函数将该热点启动预设值设置为false,此时系统就会关闭手机热点。

确定Wi-Fi模组的模组驱动;根据模组驱动生成第一虚拟网卡和第二虚拟网卡;通过第一虚拟网卡执行STA工作;根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;根据热点启动预设值通过第二虚拟网卡执行AP工作。由于通过一个Wi-Fi模组生成两个不互斥的虚拟网卡,使用一个连接无线,另一个用来开启热点,使得安卓智能设备可以同时连接无线和开启热点。

请参阅图2,本申请实施例中单WIFI模块STA和AP同时工作的方法另一实施例包括:

201、确定Wi-Fi模组的模组驱动;

本实施例中的步骤201与前实施例中步骤101类似,此处不再赘述。

202、利用Wi-Fi模组接收第一参数和第二参数;

在手机系统确定Wi-Fi模组的模组驱动后,由于系统需要利用Wi-Fi模组生成两个虚拟的网卡,所以系统会向Wi-Fi模组发送两个参数,分别为第一参数和第二参数,该参数用于Wi-Fi模组对两个虚拟网卡进行命名。

203、通过第一参数生成第一虚拟网卡,且通过第二参数生成第二虚拟网卡;

系统通过Wi-Fi模组使用第一参数生成第一虚拟网卡和使用第二参数生成第二虚拟网卡;例如,当第一参数为wlan0,第二参数为p2p0时,系统就会通过Wi-Fi模组生成一个wlan0的虚拟网卡和一个p2p0的虚拟网卡。在本实施例中,wlan0的虚拟网卡为第一虚拟网卡;p2p0的虚拟网卡为第二虚拟网卡。

在本实施例中,系统通过两个参数生成两个虚拟网卡;也可以通过三个参数生成三个虚拟网卡;还可以时通过两个参数生成三个虚拟网卡,具体此处不做具体限定。

204、通过第一虚拟网卡执行STA工作;

205、根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

本实施例中的步骤204至205与前实施例中步骤103至104类似,此处不再赘述。

206、启动守护进程,守护进程包括第一守护进程和第二守护进程,第一守护进程用于开启热点功能,第二守护进程用于关闭热点功能;

为了保障能正常使用第二虚拟网卡执行AP工作,所以在使用第二虚拟网卡执行AP工作之前,启动守护进程;当使用开启热点函数时,则启动第一守护进程,该第一守护进程用于守护开启热点函数的执行;当使用关闭热点函数时,则启动第二守护进程,该第二守护进程用于守护关闭热点函数的执行。

207、利用守护进程判断热点启动预设值是否满足预设热点开启值;若是,则执行步骤208;若否;则执行步骤209;

在守护进程开启后,系统设定守护进程对热点启动预设值进行实时检测,在检测到热点启动预设值后,判断该热点启动预设值是否满足预设热点开启值;当该热点启动预设值满足预设热点开启值时,则表示智能手机需要打开热点;当该热点启动预设值不满足预设热点开启值时,则表示智能手机不需要打开热点。

在本申请实施例中,预设热点开启值可以为true,也可以为1,还可以为YES,具体此处不做具体限定。

208、接收热点开启指令,并根据热点开启指令执行AP工作。

由于热点启动预设值满足预设热点开启值,所以该系统接收到热点开启指令,系统再将该热点开启指令发送至Wi-Fi模组,Wi-Fi模组根据该热点开启指令通过第二虚拟网卡执行AP工作,即根据该热点开启指令通过第二虚拟网卡完成智能手机开启热点的功能。

209、接收热点关闭指令,并根据热点关闭指令执行AP工作。

在确定热点启动预设值不满足预设热点开启值时,则表示控制AP开关的状态为关闭状态,此时就会接收到一条热点关闭指令;根据该热点关闭指令执行热点关闭函数,即控制手机的AP工作停止。

请参阅图3,本申请实施例中单WIFI模块STA和AP同时工作的装置一个实施例包括:

确定单元301,用于确定Wi-Fi模组的模组驱动;

生成单元302,用于根据模组驱动生成第一虚拟网卡和第二虚拟网卡;

第一执行单元303,用于通过第一虚拟网卡执行STA工作;

设置单元304,用于根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

第二执行单元305,用于根据热点启动预设值通过第二虚拟网卡执行AP工作。

本实施例中生成单元302可以包括接收模块3021和生成模块3022。

接收模块3021,用于利用Wi-Fi模组接收第一参数和第二参数;

生成模块3022,通过第一参数生成第一虚拟网卡,且通过第二参数生成第二虚拟网卡。

本实施例中,该单WIFI模块STA和AP同时工作的装置还可以进一步包括:

启动单元306,用于启动守护进程,守护进程包括第一守护进程和第二守护进程,第一守护进程用于开启热点功能,第二守护进程用于关闭热点功能。

本实施例中第二执行单元305可以包括判断模块3051、接收/开启模块3052和接收/关闭模块3053。

判断模块3051,利用守护进程判断热点启动预设值是否满足预设热点开启值;

接收/开启模块3052,用于当判断模块3051确定热点启动预设值满足预设热点开启值时,接收热点开启指令,并根据热点开启指令执行AP工作。

接收/关闭模块3053,用于当判断模块3051确定热点启动预设值不满足预设热点开启值时,接收热点关闭指令,并根据热点关闭指令执行AP工作。

在本实施例中,系统启动后,确定单元301确定Wi-Fi模组的模组驱动,接收模块3021利用Wi-Fi模组接收第一参数和第二参数;并将第一参数和第二参数发送至生成模块3022;生成模块3022第一参数生成第一虚拟网卡,且通过第二参数生成第二虚拟网卡;设置单元304根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;在设置好热点启动预设值之后,启动单元306启动守护进程,守护进程包括第一守护进程和第二守护进程,第一守护进程用于开启热点功能,第二守护进程用于关闭热点功能;在检测到热点启动预设值后,判断模块3051守护进程判断热点启动预设值是否满足预设热点开启值;当判断模块3051确定热点启动预设值满足预设热点开启值时,接收/开启模块3052接收热点开启指令,并根据热点开启指令执行AP工作;当判断模块3051确定热点启动预设值不满足预设热点开启值时,接收热点关闭指令,并根据热点关闭指令执行AP工作;在需要执行STA工作时,使用第一执行单元303通过第一虚拟网卡执行STA工作。

下面对本申请实施例中的单WIFI模块STA和AP同时工作的装置进行详细描述,请参阅图4,本申请实施例中单WIFI模块STA和AP同时工作的装置另一实施例包括:

处理器401、存储器402、输入输出单元403、总线404;

处理器401与存储器402、输入输出单元403以及总线404相连;

处理器401执行如下操作:

确定Wi-Fi模组的模组驱动;

根据模组驱动生成第一虚拟网卡和第二虚拟网卡;

通过第一虚拟网卡执行STA工作;

根据第二虚拟网卡在热点函数中设置热点启动预设值,热点函数包括热点开启函数和热点关闭函数,用于开启或关闭热点功能;

根据热点启动预设值通过第二虚拟网卡执行AP工作。

本实施例中,处理器401的功能与前述图1至图2所示实施例中的步骤,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

相关技术
  • 一种单WIFI模块STA和AP同时工作的方法及相关设备
  • 一种单WIFI模块STA和AP同时工作的方法及相关设备
技术分类

06120113192014