发明内容
为此,需要提供一种WIFI模式虚拟共存的技术方案,用以解决AP模式与P2P模式无法实现共存,进而使得DLNA协议和Miracast协议无法同时进行工作,影响数据传输效率,给用户带来不良体验的问题。
发明人提供了一种WIFI模式虚拟共存的方法,所述WIFI模式包括AP模式和P2P模式,其特征在于,包括步骤:
初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;所述主WIFI模块的WIFI模式包括AP模式和P2P模式,所述从WIFI模块的WIFI模式包括虚拟AP模式和虚拟P2P模式;
根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。
进一步地,所述方法包括:
接收AP模式下的数据传输请求;
将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
调用主WIFI模块的驱动,使主WIFI模块运行工作在AP模式;
调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟P2P模式;
或者,接收P2P模式下的数据传输请求;
将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式;
调用主WIFI模块的驱动,使主WIFI模块运行工作在P2P模式;
调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟AP模式。
进一步地,所述方法还包括一判断步骤,所述判断步骤包括:判断当前主WIFI模块的WIFI模式是否为数据传输请求对应的WIFI模式,若是则不切换当前主WIFI模块的WIFI模式,否则将当前主WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式。
进一步地,所述判断步骤具体包括:
接收AP模式下的数据传输请求,判断当前主WIFI模块的WIFI模式是否为AP模式,若是则不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
或者,接收P2P模式下的数据传输请求,判断当前主WIFI模块的WIFI模式是否为P2P模式,若是则不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。
进一步地,所述方法还包括:
在数据传输请求对应的WIFI模式下建立双向数据通信通道。
发明人还提供了一种WIFI模式虚拟共存的装置,包括主WIFI模块,从WIFI模块,初始化模块,WIFI模式管理模块;
所述初始化模块用于初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;所述主WIFI模块的WIFI模式包括AP模式和P2P模式,所述从WIFI模块的WIFI模式包括虚拟AP模式和虚拟P2P模式;
所述WIFI模式管理模块用于根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。
进一步地,所述装置还包括请求接收模块和WIFI驱动模块,所述请求接收模块包括AP请求接收模块和P2P请求接收模块,所述WIFI驱动模块包括AP驱动模块和P2P驱动模块;
所述AP请求接收模块用于接收AP模式下的数据传输请求;
所述WIFI模式管理模块用于将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
所述AP驱动模块用于调用主WIFI模块的驱动,使主WIFI模块运行工作在AP模式;
所述P2P驱动模块用于调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟P2P模式;
或者,所述P2P请求模块用于接收P2P模式下的数据传输请求;
所述WIFI模式管理模块用于将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式;
所述P2P驱动模块用于调用主WIFI模块的驱动,使主WIFI模块运行工作在P2P模式;
所述AP驱动模块用于调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟AP模式。
进一步地,所述装置还包括一判断模块,所述判断模块用于判断当前主WIFI模块的WIFI模式是否为数据传输请求对应的WIFI模式,若是则WIFI模式管理模块不切换当前主WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式。
进一步地,所述判断模块判断当前主WIFI模块的WIFI模式是否数据传输请求对应的WIFI模式具体包括:
AP请求接收模块接收AP模式下的数据传输请求,判断模块判断当前主WIFI模块的WIFI模式是否为AP模式,若是则WIFI模式管理模块不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
或者,P2P请求接收模块接收P2P模式下的数据传输请求,判断模块判断当前主WIFI模块的WIFI模式是否为P2P模式,若是则WIFI模式管理模块不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。
进一步地,所述装置还包括数据通信模块,所述数据通信模块用于在数据传输请求对应的WIFI模式下建立双向数据通信通道。
区别于现有技术,上述技术方案所述的WIFI模式虚拟共存的方法和装置,首先初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;而后根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式,实现了不同WIFI模式的虚拟共存,满足了不同客户端对WIFI模式的要求,增强了用户的使用体验,因而在无线局域网领域具有很高的实用价值和广阔的市场前景。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1,为本发明一实施方式所述WIFI模式虚拟共存的方法的流程图;所述方法可以应用于支持不同WIFI模式的WIFI设备上,用于实现WIFI设备上不同WIFI模式之间的共存,具体包括如下步骤:
首先进入步骤S101初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式。所述主WIFI模块的WIFI模式包括AP模式和P2P模式,所述从WIFI模块的WIFI模式包括虚拟AP模式和虚拟P2P模式。主WIFI模块和从WIFI模块可以是物理层面的WIFI模块,也可以是软件模拟出的WIFI模块,如WIFI驱动虚拟出的网络接口。主WIFI模块中提供真实的WIFI模式组合包括STA模式与AP模式的组合,以及STA模式与P2P模式的组合。从WIFI模块提供虚拟的P2P模式或虚拟的AP模式。真实的WIFI模式与虚拟的WIFI模式区别在于,真实的WIFI模式具备数据传输功能,可以在客户端与自身建立连接后,与客户端进行双向数据交互,而虚拟的WIFI模式不具备数据传输功能,在需要进行数据传输时,需要通过切换主WIFI模块的WIFI模式来完成数据的传输。主WIFI模块的WIFI模式和从WIFI模块的WIFI模式需要进行事先启动,这样才可以在客户端与自身建立连接后,完成数据传输交互。因而对主WIFI模块的WIFI模式和从WIFI模块的WIFI模式进行初始化,就是使得主WIFI模块的WIFI模式和从WIFI模块的WIFI模式处于开启状态,既便于数据的实时交互,也便于不同WIFI模式的及时切换。
而后可以进入步骤S102根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。所述预设的WIFI模式可以通过读取WIFI芯片中的寄存器获得,可以包括第一模式和第二模式,所述第一模式是指主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;所述第二模式是指主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。这样,对于整个WIFI设备而言,通过协调调度进行切换主WIFI模块中的WIFI模式,即可实现STA,P2P,AP三种模式的共存。
上述技术方案所述的WIFI模式虚拟共存的方法,首先初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;而后根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式,实现了不同WIFI模式的虚拟共存,满足了不同客户端对WIFI模式的要求,增强了用户的使用体验,因而在无线局域网领域具有很高的实用价值和广阔的市场前景。
WIFI设备实现STA,P2P,AP三种模式共存后,就可以针对不同WIFI模式下的数据传输请求,对不同WIFI模式进行切换。如图2所示,当数据传输请求为AP模式下的数据传输请求时,首先进入步骤S201接收AP模式下的数据传输请求。AP模式下的数据传输请求可以来自与AP模式连接的电子设备上。而后可以进入步骤S202将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式。由于AP模式下的数据传输请求需要在AP模式下,才可以完成数据的传输,而数据的传输需要通过主WIFI模块进行完成,因而需要将当前主WIFI模块中的WIFI模式切换成AP模式,而为了实现不同WIFI模式之间的共存,则可以在主WIFI模块中的WIFI模式为AP模式时,将从WIFI模块中的虚拟WIFI模式切换成虚拟P2P模式。而后可以进入步骤S203调用主WIFI模块的驱动,使主WIFI模块运行工作在AP模式,调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟P2P模式。主WIFI模块的驱动可以为主WIFI模块提供物理驱动,保证主WIFI模块工作在AP模式,从而可以接收AP客户端的数据传输请求,向AP客户端传输数据。从WIFI模块的相关驱动可以为从WIFI模块提供虚拟WIFI驱动,保证从WIFI模块的WIFI模式处于虚拟P2P模式下,便于主WIFI模块中WIFI模式的切换,并实现AP模式与P2P模式的虚拟共存。
如图3所示,同理,当数据传输请求为P2P模式下的数据传输请求时,所述方法可以包括以下步骤:首先进入步骤S301接收P2P模式下的数据传输请求,P2P模式下的数据传输请求可以来自与P2P模式连接的电子设备上。而后可以进入步骤S302将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。由于P2P模式下的数据传输请求需要在P2P模式下,才可以完成数据的传输,而数据的传输又需要通过主WIFI模块进行完成,因而需要将当前主WIFI模块中的WIFI模式切换成P2P模式,而为了实现不同WIFI模式之间的共存,则可以在主WIFI模块中的WIFI模式为P2P模式时,将从WIFI模块中的虚拟WIFI模式切换成虚拟AP模式。而后可以进入步骤S303调用主WIFI模块的驱动,使主WIFI模块运行工作在P2P模式,调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟AP模式。主WIFI模块的驱动可以为主WIFI模块提供物理驱动,保证主WIFI模块工作在P2P模式,从而可以接收P2P模式下的数据传输请求,并进一步完成数据交互。从WIFI模块的相关驱动可以为从WIFI模块提供虚拟WIFI驱动,保证从WIFI模块的WIFI模式处于虚拟AP模式下,便于主WIFI模块中WIFI模式的切换,并实现AP模式与P2P模式的虚拟共存。
如图4所示,所述方法还包括一判断步骤,所述判断步骤包括:S401判断当前主WIFI模块的WIFI模式是否为数据传输请求对应的WIFI模式,若是则进入步骤S402不切换当前主WIFI模块的WIFI模式,否则进入步骤S403将当前从WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式。若当前主WIFI模块的WIFI模式为数据传输请求对应的WIFI模式,说明当前主WIFI模块的WIFI模式满足传输数据的要求,当然也就无需对当前主WIFI模块的WIFI模式进行切换。而若当前主WIFI模块的WIFI模式不是数据传输请求对应的WIFI模式,说明当前主WIFI模块的WIFI模式不满足传输数据的要求,因而需要将当前主WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式,进而在主WIFI模块运行另一WIFI模式的情况下,完成数据的传输。
在本实施方式中,所述判断步骤具体包括:
接收AP模式下的数据传输请求,判断当前主WIFI模块的WIFI模式是否为AP模式,若是则不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
或者,接收P2P模式下的数据传输请求,判断当前主WIFI模块的WIFI模式是否为P2P模式,若是则不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。
简言之,就是通过判断主WIFI模块中的WIFI模式是否为数据传输请求对应的WIFI模式,再决定是否切换主WIFI模块中的WIFI模式,保证数据传输时主WIFI模块中的WIFI模式处于数据传输请求对应的WIFI模式。
如图1所示,在本实施方式中,所述方法还包括步骤S104在数据传输请求对应的WIFI模式下建立双向数据通信通道。建立双向数据通信通道后,就可以实现WIFI设备与客户端之间的数据交互,客户端可以上传数据到WIFI设备,也可以从WIFI设备上下载数据。所述客户端为与WIFI设备进行连接的电子设备,可以是手机、平板电脑等。
如图8所示,为本发明一实施方式所述WIFI模式虚拟共存的系统的时序图。所述系统包括WIFI终端设备,支持AP模式或P2P模式的客户端,WIFI终端设备可以与支持AP模式的客户端连接,所述支持AP模式的客户端可以是图8中的DLNA客户端,DLNA客户端与WIFI终端设备通过DLNA协议来完成数据的传输;WIFI终端设备也可以与支持P2P模式的客户端连接,所述支持P2P模式的客户端可以是图8中的Miracast客户端,Miracast客户端与WIFI终端设备之间通过Miracast协议来完成数据的传输。WIFI终端设备在与客户端进行交互时,具体包括如下步骤:
首先进入步骤S801DALN客户端发起AP数据传输请求。因为DLNA客户端与WIFI终端设备是通过DLNA协议来完成数据的传输,所以WIFI终端设备在接收AP数据传输请求后,如果当前主WIFI模块运行的模式为P2P模式,则会断开Miracast连接,也就断开了主WIFI模块中的P2P模式,为下一步切换主WIFI模块的WIFI模式做准备。
而后可以进入步骤S802从WIFI模块关闭虚拟AP模式。因为需要将主WIFI模块的WIFI模式切换为AP模式,而此时从WIFI模块中运行的是虚拟AP模式,为了保证不同WIFI模式之间的共存,因而需要先将从WIFI模块的虚拟AP模式关闭。而后可以进入步骤S803将从WIFI模块的WIFI模式切换至虚拟P2P模式。而后可以进入步骤S804将主WIFI模块的WIFI模式切换至AP模式。至此,就完成了对主WIFI模块的WIFI模式的切换操作。
而后可以进入步骤S805DLNA客户端与WIFI终端设备建立AP连接。因为此时的WIFI终端设备的主WIFI模块中的WIFI模式已经切换成符合与DLNA客户端进行数据交互的AP模式,因而在DLNA客户端建立连接后,就可以进入步骤S806DLNA客户端与WIFI终端设备进行数据交换。DLAN客户端可以上传数据至WIFI终端设备,也可以从WIFI终端设备上下载数据,从而实现了数据交互。
如图9所示,为本发明一实施方式所述WIFI模式虚拟共存的系统的时序图。所述系统包括WIFI终端设备,支持AP模式或P2P模式的客户端,WIFI终端设备可以与支持AP模式的客户端连接,所述支持AP模式的客户端可以是图8中的DLNA客户端,DLNA客户端与WIFI终端设备通过DLNA协议来完成数据的传输;WIFI终端设备也可以与支持P2P模式的客户端连接,所述支持P2P模式的客户端可以是图9中的Miracast客户端,Miracast客户端与WIFI终端设备之间通过Miracast协议来完成数据的传输。WIFI终端设备在与客户端进行交互时,具体包括如下步骤:
首先进入步骤S901Miracast客户端发起AP数据传输请求。因为Miracast客户端与WIFI终端设备是通过Miracast协议来完成数据的传输,所以WIFI终端设备在接收Miracast数据传输请求后,如果当前主WIFI模块运行的模式为AP模式,则会断开AP连接,也就断开了主WIFI模块中的AP模式,为下一步切换主WIFI模块的WIFI模式做准备。
而后可以进入步骤S902从WIFI模块关闭虚拟P2P模式。因为需要将主WIFI模块的WIFI模式切换为P2P模式,而此时从WIFI模块中运行的是虚拟P2P模式,为了保证不同WIFI模式之间的共存,因而需要先将从WIFI模块的虚拟P2P模式关闭。而后可以进入步骤S903将从WIFI模块的WIFI模式切换至虚拟AP模式。而后可以进入步骤S904将主WIFI模块的WIFI模式切换至P2P模式。至此,就完成了对主WIFI模块的WIFI模式的切换操作。
而后可以进入步骤S905Miracast客户端与WIFI终端设备建立P2P连接。因为此时的WIFI终端设备的主WIFI模块中的WIFI模式已经切换成符合与Miracast客户端进行数据交互的P2P模式,因而在Miracast客户端建立连接后,就可以进入步骤S806Miracast客户端与WIFI终端设备进行数据交换。Miracast客户端可以上传数据至WIFI终端设备,也可以从WIFI终端设备上下载数据,从而实现了数据交互。
上述技术方案所述的WIFI模式虚拟共存的方法,首先初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;而后根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式,实现了不同WIFI模式的虚拟共存,满足了不同客户端对WIFI模式的要求,增强了用户的使用体验,因而在无线局域网领域具有很高的实用价值和广阔的市场前景。
请参阅图5,以及发明人还提供了一种WIFI模式虚拟共存的装置;所述装置包括主WIFI模块1,从WIFI模块2,初始化模块8,WIFI模式管理模块4;
所述初始化模块8用于初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;所述主WIFI模块1的WIFI模式包括AP模式和P2P模式,所述从WIFI模块2的WIFI模式包括虚拟AP模式和虚拟P2P模式;
所述WIFI模式管理模块4用于根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。
在使用WIFI模式虚拟共存的装置时,首先初始化模块8初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式。所述主WIFI模块的WIFI模式包括AP模式和P2P模式,所述从WIFI模块的WIFI模式包括虚拟AP模式和虚拟P2P模式。主WIFI模块和从WIFI模块可以是物理层面的WIFI模块,也可以是软件模拟出的WIFI模块,如WIFI驱动虚拟出的网络接口。主WIFI模块中提供真实的WIFI模式组合包括STA模式与AP模式的组合,以及STA模式与P2P模式的组合。从WIFI模块提供虚拟的P2P模式或虚拟的AP模式。真实的WIFI模式与虚拟的WIFI模式区别在于,真实的WIFI模式具备数据传输功能,可以在客户端与自身建立连接后,与客户端进行双向数据交互,而虚拟的WIFI模式不具备数据传输功能,在需要进行数据传输时,需要通过切换主WIFI模块的WIFI模式来完成数据的传输。主WIFI模块的WIFI模式和从WIFI模块的WIFI模式需要进行事先启动,这样才可以在客户端与自身建立连接后,完成数据传输交互。因而对主WIFI模块的WIFI模式和从WIFI模块的WIFI模式进行初始化,就是使得主WIFI模块的WIFI模式和从WIFI模块的WIFI模式处于开启状态,既便于数据的实时交互,也便于不同WIFI模式的及时切换。
而后WIFI模式管理模块4根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。所述预设的WIFI模式可以通过读取WIFI芯片中的寄存器获得,可以包括第一模式和第二模式,所述第一模式是指主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;所述第二模式是指主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式。这样,对于整个WIFI设备而言,通过协调调度进行切换主WIFI模块中的WIFI模式,即可实现STA,P2P,AP三种模式的共存。
上述技术方案所述的WIFI模式虚拟共存的装置,首先初始化模块8初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;而后WIFI模式管理模块4根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式,实现了不同WIFI模式的虚拟共存,满足了不同客户端对WIFI模式的要求,增强了用户的使用体验,因而在无线局域网领域具有很高的实用价值和广阔的市场前景。
WIFI设备实现STA,P2P,AP三种模式共存后,就可以针对不同WIFI模式下的数据传输请求,对不同WIFI模式进行切换。在本实施方式中,所述装置还包括请求接收模块3和WIFI驱动模块5,所述请求接收模块3包括AP请求接收模块31和P2P请求接收模块32,所述WIFI驱动模块5包括AP驱动模块51和P2P驱动模块52。当数据传输请求为AP模式下的数据传输请求时,AP请求接收模块31接收AP模式下的数据传输请求。AP模式下的数据传输请求可以来自与AP模式连接的电子设备上。而后WIFI模式管理模块4将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式。由于AP模式下的数据传输请求需要在AP模式下,才可以完成数据的传输,而数据的传输需要通过主WIFI模块进行完成,因而需要将当前主WIFI模块中的WIFI模式切换成AP模式,而为了实现不同WIFI模式之间的共存,则可以在主WIFI模块中的WIFI模式为AP模式时,将从WIFI模块中的虚拟WIFI模式切换成虚拟P2P模式。而后AP驱动模块51调用主WIFI模块的驱动,使主WIFI模块运行工作在AP模式,调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟P2P模式。主WIFI模块的驱动可以为主WIFI模块提供物理驱动,保证主WIFI模块工作在AP模式,从而可以接收AP客户端的数据传输请求,向AP客户端传输数据。从WIFI模块的相关驱动可以为从WIFI模块提供虚拟WIFI驱动,保证从WIFI模块的WIFI模式处于虚拟P2P模式下,便于主WIFI模块中WIFI模式的切换,并实现AP模式与P2P模式的虚拟共存。
同理,当数据传输请求为P2P模式下的数据传输请求时,首先P2P请求接收模块32接收P2P模式下的数据传输请求,P2P模式下的数据传输请求可以来自与P2P模式连接的电子设备上。而后WIFI模式管理模块4将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。由于P2P模式下的数据传输请求需要在P2P模式下,才可以完成数据的传输,而数据的传输又需要通过主WIFI模块进行完成,因而需要将当前主WIFI模块中的WIFI模式切换成P2P模式,而为了实现不同WIFI模式之间的共存,则可以在主WIFI模块中的WIFI模式为P2P模式时,将从WIFI模块中的虚拟WIFI模式切换成虚拟AP模式。而后P2P驱动模块52调用主WIFI模块的驱动,使主WIFI模块运行工作在P2P模式,调用从WIFI模块的驱动,使从WIFI模块运行工作在虚拟AP模式。主WIFI模块的驱动可以为主WIFI模块提供物理驱动,保证主WIFI模块工作在P2P模式,从而可以接收P2P模式下的数据传输请求,并进一步完成数据交互。从WIFI模块的相关驱动可以为从WIFI模块提供虚拟WIFI驱动,保证从WIFI模块的WIFI模式处于虚拟AP模式下,便于主WIFI模块中WIFI模式的切换,并实现AP模式与P2P模式的虚拟共存。
如图6所示,为本发明一实施方式所述WIFI模式虚拟共存的装置的架构图。主WIFI模块的驱动为主WIFI模块提供物理WIFI驱动,从WIFI模块的驱动为从WIFI模块提供虚拟WIFI驱动,并为P2P或AP工作模式的发现和虚拟连接功能提供接口支持。主WIFI模块虚拟共存包括以下两种形式:其一,主WIFI模块运行在STA模式和P2P模式组合,从WIFI模块运行在虚拟的AP模式;其二,主WIFI模块运行在STA模式和AP模式组合,从WIFI模块运行在虚拟的P2P模式。这样,对于整个WIFI设备而言,通过WIFI管理模块协调、调度、管理主WIFI模块和从WIFI模块中的WIFI模式,即可实现STA,P2P,AP三种模式的共存。
如图7所示,为本发明一实施方式所述从WIFI模块的原理图。从WIFI模块可以是物理或虚拟的模块,从WIFI模块用于虚拟P2P模式或虚拟AP模式,从WIFI模块的驱动可以为从WIFI模块提供虚拟WIFI驱动,保证从WIFI模块工作在P2P模式或AP模式。
在本实施方式中,所述装置还包括一判断模块6,所述判断模块6用于判断当前主WIFI模块的WIFI模式是否为数据传输请求对应的WIFI模式,若是则WIFI模式管理模块不切换当前主WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式。若当前主WIFI模块的WIFI模式为数据传输请求对应的WIFI模式,说明当前主WIFI模块的WIFI模式满足传输数据的要求,当然也就无需对当前主WIFI模块的WIFI模式进行切换。而若当前主WIFI模块的WIFI模式不是数据传输请求对应的WIFI模式,说明当前主WIFI模块的WIFI模式不满足传输数据的要求,因而需要将当前主WIFI模块设置为与数据传输请求对应的WIFI模式不同的另一WIFI模式,进而在主WIFI模块运行另一WIFI模式的情况下,完成数据的传输。
在本实施方式中,判断模块6判断当前主WIFI模块的WIFI模式是否为数据传输请求对应的WIFI模式具体包括:
AP请求接收模块接收AP模式下的数据传输请求,判断模块判断当前主WIFI模块的WIFI模式是否为AP模式,若是则WIFI模式管理模块不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为AP模式,将当前从WIFI模块设置为虚拟P2P模式;
或者,P2P请求接收模块接收P2P模式下的数据传输请求,判断模块判断当前主WIFI模块的WIFI模式是否为P2P模式,若是则WIFI模式管理模块不切换当前主WIFI模块和从WIFI模块的WIFI模式,否则WIFI模式管理模块将当前主WIFI模块设置为P2P模式,将当前从WIFI模块设置为虚拟AP模式。
简言之,就是通过判断主WIFI模块中的WIFI模式是否为数据传输请求对应的WIFI模式,再决定是否切换主WIFI模块中的WIFI模式,保证数据传输时主WIFI模块中的WIFI模式处于数据传输请求对应的WIFI模式。
在本实施方式中,所述装置还包括数据通信模块,所述数据通信模块用于在数据传输请求对应的WIFI模式下建立双向数据通信通道。建立双向数据通信通道后,就可以实现WIFI设备与客户端之间的数据交互,客户端可以上传数据到WIFI设备,也可以从WIFI设备上下载数据。所述客户端为与WIFI设备进行连接的电子设备,可以是手机、平板电脑等。
上述技术方案所述的WIFI模式虚拟共存的方法,首先初始化主WIFI模块的WIFI模式和从WIFI模块的WIFI模式;而后根据预设的WIFI模式,将主WIFI模块工作在AP模式,从WIFI模块工作在虚拟P2P模式;或者,将主WIFI模块工作在P2P模式,从WIFI模块工作在虚拟AP模式,实现了不同WIFI模式的虚拟共存,满足了不同客户端对WIFI模式的要求,增强了用户的使用体验,因而在无线局域网领域具有很高的实用价值和广阔的市场前景。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。