发明内容
本申请提供了一种网络切换方法、网络切换装置、电子设备及计算机可读存储介质,可保障与目标设备进行无线通讯时的通讯稳定性。
第一方面,本申请提供了一种网络切换方法,包括:
与目标设备建立至少两条无线网络通道;
采用第一网络通道与上述目标设备进行通讯,上述第一网络通道为上述至少两条无线网络通道中的任一无线网络通道;
监测上述第一网络通道的状态;
若上述第一网络通道状态异常,则切换至第二网络通道与上述目标设备进行通讯,上述第二网络通道为上述至少两条无线网络通道中除上述第一网络通道之外的一条无线网络通道。
可选地,上述监测上述第一网络通道的状态,包括:
通过上述第一网络通道向上述目标设备发送测试数据;
根据上述目标设备针对上述测试数据的反馈结果,判断上述第一网络通道是否异常。
可选地,在上述通过上述第一网络通道向上述目标设备发送测试数据之后,上述网络切换方法还包括:
若在预设的时间段内,未接收到上述目标设备针对上述测试数据的反馈结果,则确定上述第一网络通道的状态异常。
可选地,上述与目标设备建立至少两条无线网络通道,包括:
基于不同的无线通讯技术,与上述目标设备建立至少两条无线网络通道。
可选地,在上述切换至第二网络通道与上述目标设备进行通讯之前,上述网络切换方法还包括:
判断上述第一网络通道是否为默认网络通道;
若上述第一网络通道不为上述默认网络通道,则获取上述默认网络通道的状态;
若上述默认网络通道的状态正常,则将上述默认网络通道确定为上述第二网络通道。
可选地,在上述切换至第二网络通道与上述目标设备进行通讯之前,上述网络切换方法还包括:
监测上述至少两条无线网络通道的网速;
确定除上述第一网络通道之外的网速最快的无线网络通道为上述第二网络通道。
可选地,在上述建立与目标设备的至少两条无线网络通道之后,上述网络切换方法还包括:
检测上述至少两条无线网络通道是否满足预设的网络条件;
若上述至少两条无线网络通道满足上述网络条件,则进行数据备份操作,并输出提醒消息,上述提醒消息用于提醒用户上述至少两条无线网络通道的状态。
第二方面,本申请提供了一种网络切换装置,包括:
建立模块,用于与目标设备建立至少两条无线网络通道;
通讯模块,用于采用第一网络通道与上述目标设备进行通讯,上述第一网络通道为上述至少两条无线网络通道中的任一无线网络通道;
监测模块,用于监测上述第一网络通道的状态;
切换模块,用于若上述第一网络通道状态异常,则切换至第二网络通道与上述目标设备进行通讯,上述第二网络通道为上述至少两条无线网络通道中除上述第一网络通道之外的一条无线网络通道。
可选地,上述监测模块,包括:
数据发送单元,用于通过上述第一网络通道向上述目标设备发送测试数据;
状态判断单元,用于根据上述目标设备针对上述测试数据的反馈结果,判断上述第一网络通道是否异常。
可选地,上述监测模块,还包括:
状态确定单元,用于若在预设的时间段内,未接收到上述目标设备针对上述测试数据的反馈结果,则确定上述第一网络通道的状态异常。
可选地,上述建立模块,具体用于基于不同的无线通讯技术,与上述目标设备建立至少两条无线网络通道。
可选地,上述网络切换装置还包括:
判断模块,用于判断上述第一网络通道是否为默认网络通道;
获取模块,用于若上述第一网络通道不为上述默认网络通道,则获取上述默认网络通道的状态;
第一确定模块,用于若上述默认网络通道的状态正常,则将上述默认网络通道确定为上述第二网络通道。
可选地,上述监测模块,具体用于监测上述至少两条无线网络通道的网速;
上述网络切换装置还包括:
第二确定模块,用于确定除上述第一网络通道之外的网速最快的无线网络通道为上述第二网络通道。
可选地,上述网络切换装置还包括:
检测模块,用于检测上述至少两条无线网络通道是否满足预设的网络条件;
备份模块,用于若上述至少两条无线网络通道满足上述网络条件,则进行数据备份操作;
提醒模块,用于输出提醒消息,上述提醒消息用于提醒用户上述至少两条无线网络通道的状态。
第三方面,本申请提供了一种电子设备,上述电子设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。
第四方面,本申请提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
第五方面,本申请提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。
本申请与现有技术相比存在的有益效果是:本申请方案让电子设备预先就建立好与目标设备的多条无线网络通道,并在通讯过程中,对当前所使用的无线网络通道的状态进行监测,一旦发现该当前所使用的无线网络通道的状态异常,就立即将当前所使用的无线网络通道切换为已建立的其它无线网络通道,使得电子设备能够继续与目标设备进行正常的数据交互,可保障数据交互过程中无线通讯的稳定性。可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
随着无线通讯技术的发展,目前车辆的诊断仪已广泛支持与上位机(例如电脑或平板等电子设备)通过无线通讯进行数据交互。这种无线通讯的方式相比于传统的有线通讯来说,更具灵活性。这可使得用户在对车辆进行诊断时,能够在一定距离内自由移动上位机,摆脱了线束的限制。但是,当前上位机在同一时刻往往仅能够采用一种无线通讯技术建立与诊断仪的无线通讯。如果用户在使用上位机进行诊断的过程中移动该上位机,就可能因障碍物或距离等原因出现当前的无线通讯的信号不稳定的情况,这就会导致诊断失败。此时,只能由用户手动操作上位机,更换上位机所采用的无线通讯技术,与诊断仪建立新的无线通讯并重新进行诊断。可见,诊断过程中上位机与诊断仪之间的无线通讯的不稳定性会影响到对车辆进行诊断的效率。基于此,本申请实施例提出了一种网络切换方法、网络切换装置、电子设备及计算机可读存储介质,可保障诊断过程中无线通讯的稳定性,从而提升诊断的效率。为了说明本申请实施例所提出的技术方案,下面通过具体实施例来进行说明。
下面对本申请实施例所提出的网络切换方法作出说明。请参阅图1,该网络切换方法包括:
步骤101,与目标设备建立至少两条无线网络通道。
步骤102,采用第一网络通道与目标设备进行通讯,上述第一网络通道为上述至少两条无线网络通道中的任一无线网络通道。
步骤103,监测第一网络通道的状态。
步骤104,若第一网络通道状态异常,则切换至第二网络通道与目标设备进行通讯,上述第二网络通道为上述至少两条无线网络通道中除上述第一网络通道之外的一条无线网络通道。
在步骤101中,电子设备作为上位机,可以与目标设备进行通讯。在该电子设备应用于车辆诊断场景时,该目标设备可以是诊断仪。在电子设备上电启动后,用户即可为电子设备指定其所要进行通讯的目标设备。在确定目标设备后,电子设备可首先与该目标设备建立至少两条无线网络通道。本申请实施例中,不对各条无线网络通道所采样的无线网络技术做出限定。
在步骤102中,电子设备虽然与目标设备已建立了至少两条无线网络通道,但在同一时刻,该电子设备仅能通过一条无线网络通道与目标设备进行通讯。也即,在同一时刻,这至少两条无线网络通道中,真正投入通讯使用的只有一条无线网络通道。为便于说明,将当前投入通讯使用的无线网络通道记作第一网络通道。显然,该第一网络通道为已建立的至少两条无线网络通道中的任一通道。仅作为示例,假定电子设备当前已建立与目标设备的a通道、b通道及c通道,并当前选定以a通道进行与目标设备的通讯,则a通道即为第一网络通道。
在步骤103中,电子设备会对当前投入通讯使用的无线网络通道,也即第一网络通道的状态进行监测,用以确认电子设备能够通过该第一网络通道实现与目标设备的正常通讯。
在步骤104中,当监测发现第一网络通道(也即当前与目标设备进行通讯所使用的无线网络通道)的状态异常时,即可知该第一网络通道当前不够稳定,可能出现数据丢失等情况,影响到诊断的进行。此时,可以考虑进行网络切换。由于在步骤101中,电子设备已建立好与目标设备的至少两条无线网络通道,因而,此时电子设备可以直接切换至第二网络通道,该第二网络通道指的是:已建立的至少两条无线网络通道中,除第一网络通道之外的一条无线网络通道。由此,电子设备可继续与目标设备进行通讯,不需要人工进行重连。
在一些实施例中,电子设备及目标设备可内置有至少两种无线通讯模块,每一无线通讯模块对应一种无线通讯技术,且不同无线通讯模块所对应的无线通讯技术也不同。由此,电子设备即可基于不同的无线通讯技术建立与目标设备的至少两条无线网络通道。仅作为示例,电子设备可基于蓝牙无线通讯技术建立a通道,基于Wi-Fi无线通讯技术建立b通道。
在一些实施例中,为了避免出现第二网络通道的网络状态也异常,而导致网络切换后电子设备仍无法与目标设备正常通讯的情况出现,电子设备可以考虑对所有已建立的无线网络通道进行监测。也即,在步骤104之前,该网络切换方法还包括:对已建立的至少两条无线网络通道中的每条无线网络通道的状态均进行监测。仅作为示例,虽然当前选定以a通道进行与目标设备的通讯,也即a通道为第一网络通道,但电子设备仍会对a通道的状态、b通道的状态及c通道的状态均进行监测。
相应地,第二网络通道应为其它无线网络通道中状态正常的无线网络通道,其中,该其它无线网络通道指的是已建立的至少两条无线网络通道中,除该第一网络通道之外的无线网络通道。当监测发现该其它无线网络通道中确实存在状态正常的无线网络通道时,即可切换至第二网络通道与目标设备进行通讯,其中,该第二网络通道为:其它无线网络通道中,任一状态正常的无线网络通道。
仅作为示例,a通道、b通道及c通道中,当前选定以a通道进行与目标设备的通讯,也即a通道为第一网络通道;若通过监测发现,a通道的状态异常,且b通道及c通道均状态正常,则可在b通道及c通道中选定一个通道作为第二网络通道,例如,选定b通道为第二网络通道;电子设备由此可切换至该第二网络通道与目标设备进行通讯,也即,将当前投入使用的无线网络通道由a通道切换为b通道。
可以理解的是,在无线网络通道建立完毕后,可以一直保持对各个无线网络通道的监测。也即,在无线网络通道切换完毕后,该第二网络通道就成为了新的第一网络通道,并基于该新的第一网络通道再执行步骤102、103及104。例如,前文示例中,投入使用的无线网络通道由a通道切换为b通道;则在网络切换成功后,b通道为新的第一网络通道,并继续对所有无线网络通道(也即a通道、b通道及c通道)的状态进行监测;若监测发现b通道的状态异常,且a通道及c通道均状态正常,则可在a通道及c通道中选定一个通道作为新的第二网络通道,例如,选定c通道为新的第二网络通道;电子设备由此可切换至该新的第二网络通道与目标设备进行通讯,也即,将当前投入使用的无线网络通道由b通道切换为c通道。
在一些实施例中,也可以通过其它无线网络通道的网速来选定出第二网络通道。也即,在步骤104之前,该网络切换方法还包括:
A1、监测至少两条无线网络通道的网速。
A2、确定除第一网络通道之外的网速最快的无线网络通道为第二网络通道。
前文所提到的无线网络通道的状态正常与否,均为对无线网络通道的定性分析。实际上,在有多条无线网络通道均状态正常的情况下,电子设备并无法及时确认哪一无线网络通道是最优的无线网络通道。也即,前文所确定的第二网络通道可能不是最优的无线网络通道。基于此,本实施例中,电子设备会在监控该至少两条无线网络通道的状态的基础上,再进一步的去监测该至少两条无线网络通道的网速,实现对无线网络通道的定量分析。电子设备可以网速作为评判无线网络通道是否最优的标准,由此可将其它无线网络通道中网速最快的无线网络通道确定为第二网络通道。也即,本实施例中,该第二网络通道为:其它无线网络通道中,网速最快的无线网络通道。
仅作为示例,a通道、b通道及c通道中,当前选定以a通道进行与目标设备的通讯,也即a通道为第一网络通道;若通过监测发现,a通道的状态异常,且b通道及c通道均状态正常。在电子设备进一步监测获得三个通道的网速后,得到a通道的网速为x1,b通道的网速为x2,c通道的网速为x3,且x1<x2<x3,则可知c通道的网速最快,可选定c通道为第二网络通道;电子设备由此可切换至该第二网络通道与目标设备进行通讯,也即,将当前投入使用的无线网络通道由a通道切换为c通道。
可以理解的是,在目标设备为诊断仪时,电子设备可通过与诊断仪的网络连接,实现对车辆的诊断,其具体过程为:诊断仪通过车辆的车载自动诊断系统(On BoardDiagnostics,OBD)接口与车辆相连;电子设备通过当前与诊断仪进行通讯所使用的无线网络通道向诊断仪发送诊断指令,比如故障码读取指令;诊断仪在接收到电子设备所发送的诊断指令后,会基于诊断通讯协议格式,比如控制器局域网络(Controller Area Network,CAN)协议格式将该诊断指令进行封装,然后通过车辆的OBD接口将封装后的诊断指令发送给车辆的电子控制单元(Electronic Control Unit,ECU);最后,诊断仪接收ECU基于该诊断指令所反馈的答复数据,比如故障码数据,并将该答复数据返回给电子设备。在诊断完成后,用户即可向该电子设备输入结束指令。该结束指令可指示电子设备将当前与该诊断仪的所有无线网络通道断开。
在一种典型的应用场景下,电子设备作为上位机,通常具备蓝牙模块及无线局域网(Wi-Fi)模块;由此,电子设备通过步骤101可建立与目标设备的两条无线网络通道,具体为蓝牙网络通道及Wi-Fi网络通道。其中,蓝牙网络通道的建立流程为:用户已知目标设备的蓝牙名称和PIN码;在电子设备中,通过目标设备的蓝牙名称和PIN码来实现与该目标设备的蓝牙配对;在配对成功后,该电子设备即建立有与该目标设备的蓝牙网络通道。Wi-Fi网络通道的建立流程为:用户已知目标设备在AP(Access Point)模式下的热点的服务集标识(Service Set Identifier,SSID)名称和密码;在电子设备中,通过该SSID名称和密码来实现与该目标设备的Wi-Fi连接;在Wi-Fi连接成功后,该电子设备即建立有与该目标设备的Wi-Fi网络通道。
在一些实施例中,电子设备可以记录下建立与目标设备的蓝牙网络通道所需要的蓝牙名称和PIN码,使得电子设备下次开机启动后,可基于已记录的蓝牙名称和PIN码实现该蓝牙网络通道的自动建立。当然,电子设备也可以记录下建立与目标设备的Wi-Fi网络通道所需要的SSID名称和密码,使得电子设备下次开机启动后,可基于已记录的SSID名称和密码实现该Wi-Fi网络通道的自动建立。
需要说明的是,本申请实施例中,并不限定建立与目标设备的蓝牙网络通道及Wi-Fi网络通道的顺序;也即,电子设备可以先建立与目标设备的蓝牙网络通道,再建立与目标设备的Wi-Fi网络通道;或者,电子设备可以先建立与目标设备的Wi-Fi网络通道,再建立与目标设备的蓝牙网络通道;或者,电子设备也可以同时建立与目标设备的蓝牙网络通道及Wi-Fi网络通道。
在一些实施例中,以已建立的任一无线网络通道为例,监测该无线网络通道的状态的具体流程如下:
B1、通过该无线网络通道向目标设备发送测试数据。
B2、根据该目标设备针对该测试数据的反馈结果,判断该无线网络通道是否异常。
其中,电子设备内部可预先设定有测试数据;同时,还可设定与该测试数据相对应的指定答复,该指定答复为该无线网络通道正常时,目标设备应该基于该测试数据所反馈的答复。随后,电子设备即可周期性的通过该无线网络通道向目标设备发送该测试数据。在本申请实施例中,设定无线网络通道的状态异常有两种情况:其中一种是答复超时,包括未收到答复数据的情况,以及通讯延时过久的情况,该通讯延时指的是:从电子设备发送测试数据开始,到接收到目标设备针对该测试数据的反馈结果为止,所经过的时间;另一种是答复错误。
电子设备内部可预先设定一时间段,例如50毫秒或100毫秒等,用以判断该目标设备是否答复超时。如果在发出测试数据后的该时间段内未接收到该目标设备的反馈数据,则可确定此时出现答复超时的情况;也即,此时可确定该无线网络通道的状态异常。反之,如果在该时间段内接收到了目标设备的反馈数据,则可确定此时未出现答复超时的情况,可以进一步判断是否出现答复错误的情况。
通过该指定答复,可对当前接收到的反馈数据进行验证,由此可判断该无线网络通道是否正常。如果该反馈数据与该指定答复不匹配,则可确定该无线网络通道的状态异常。反之,如果该反馈数据与该指定答复相匹配,则可确定该无线网络通道的状态正常。
在一些实施例中,在目标设备为诊断仪的场景下,考虑到第一网络通道正在使用中,也即,电子设备正在通过第一网络通道与目标设备进行数据交互以实现车辆的诊断,因而,第一网络通道通常正在用于传输诊断相关的数据。基于此,对于第一网络通道来说,其可不使用测试数据及指定答复来对其状态进行监测,而是直接使用正在传输的诊断相关的数据来对其状态进行监测即可。而第一网络通道之外的无线网络通道,即可使用前文所示出的测试数据及指定答复来对其状态进行监测。当然,电子设备也可以选择在所有无线网络通道中均使用该测试数据及指定答复来对各无线网络通道的状态进行监测,此处不作限定。
例如,假定电子设备在建立与目标设备的蓝牙网络通道及Wi-Fi网络通道后,选择使用蓝牙网络通道与目标设备进行通讯。若电子设备通过蓝牙网络通道向目标设备发送了故障码读取指令后,一直未能接收到该目标设备基于该故障码读取指令所反馈的故障码数据,则可确定该蓝牙网络通道的状态异常。与此同时,电子设备通过Wi-Fi网络通道向目标设备发送了指定测试数据,并在10毫秒后就接收到了目标设备所反馈的答复数据,且该答复数据与指定答复数据相匹配,则可确定该Wi-Fi网络通道的状态正常。此时,可将当前投入使用的无线网络通道转变为Wi-Fi网络通道,也即将电子设备与目标设备进行通讯所使用的无线网络通道由蓝牙网络通道切换为Wi-Fi网络通道。
又例如,假定电子设备在建立与目标设备的蓝牙网络通道及Wi-Fi网络通道后,选择使用蓝牙网络通道与目标设备进行通讯。若电子设备通过蓝牙网络通道向目标设备发送了故障码读取指令后,在100毫秒后接收到该目标设备基于该故障码读取指令所反馈的故障码数据,由于通讯延时过久,可确定该蓝牙网络通道的状态异常。与此同时,电子设备通过Wi-Fi网络通道向目标设备发送了指定测试数据,并在10毫秒后就接收到了目标设备所反馈的答复数据,且该答复数据与指定答复数据相匹配,则可确定该Wi-Fi网络通道的状态正常。此时,可将当前投入使用的无线网络通道转变为Wi-Fi网络通道,也即将电子设备与目标设备进行通讯所使用的无线网络通道由蓝牙网络通道切换为Wi-Fi网络通道。
在一些实施例中,可在已建立的无线网络通道中指定一无线网络通道作为默认网络通道。其中,可以是由用户设定默认网络通道,例如,用户输入选择指令,在已建立的无线网络通道中选择蓝牙网络通道作为默认网络通道;或者,也可以由电子设备根据不同的无线网络通道的特性设定默认网络通道,例如,由于蓝牙通讯的功耗较低,因而电子设备可设定蓝牙网络通道为默认网络通道。电子设备可将该默认网络通道视为最高优先级;也即,只要该默认网络通道的状态正常,都可使用该默认网络通道。对此,步骤104之前,该网络切换方法还可以包括:
C1、判断第一网络通道是否为默认网络通道。
C2、若第一网络通道不为默认网络通道,则获取默认网络通道的状态。
C3、若默认网络通道的状态正常,则将默认网络通道确定为第二网络通道。
也即,在第一网络通道(也即当前与目标设备进行通讯所使用的无线网络通道)不是默认网络通道,且该第一网络通道的状态异常的情况下,一旦监测发现默认网络通道的状态正常,即可将该默认网络通道确定为第二网络通道,使得在步骤104中,电子设备可切换至该第二网络通道(也即默认网络通道)与目标设备进行通讯。
仅作为示例,假定默认网络通道为蓝牙网络通道,第一网络网络通道为Wi-Fi网络通道,且监测发现该Wi-Fi网络通道的状态异常,且该蓝牙网络通道的状态正常,则可将与目标设备进行通讯所使用的无线网络通道由该Wi-Fi网络通道切换为蓝牙网络通道。
当然,也可以是在第一网络通道(也即当前与目标设备进行通讯所使用的无线网络通道)不是默认网络通道的情况下,一旦监测发现默认网络通道的状态正常,就立即切换至该默认网络通道与目标设备进行通讯。仅作为示例,假定默认网络通道为蓝牙网络通道,第一网络网络通道为Wi-Fi网络通道,且监测发现该蓝牙网络通道的状态正常,则无论该Wi-Fi网络通道的状态异常与否,都可将与目标设备进行通讯所使用的无线网络通道由该Wi-Fi网络通道切换为蓝牙网络通道。
在一些实施例中,为提升数据的可靠性,在步骤104之后,该网络切换方法还包括:
D1、获取目标指令,该目标指令为电子设备在切换至第二网络通道与目标设备进行通讯之前,向该目标设备发送的最后一个指令。
D2、向该目标设备重发该目标指令。
由于进行网络切换的原因是第一网路通道的状态异常,这很可能导致目标指令未被正确的传输到目标设备处,基于此,在网络切换后,才需要向目标设备重发该目标指令,以保障该目标指令能够被正确的传输到目标设备处。
仅作为示例,假定电子设备在建立与目标设备的蓝牙网络通道及Wi-Fi网络通道后,选择使用蓝牙网络通道与目标设备进行通讯。若电子设备通过蓝牙网络通道向目标设备发送了故障码读取指令后,一直未能接收到该目标设备基于该故障码读取指令所反馈的故障码数据,则可确定该蓝牙网络通道的状态异常。与此同时,电子设备通过Wi-Fi网络通道向目标设备发送了测试数据,并在10毫秒后就接收到了目标设备的反馈结果,且该反馈结果与指定答复相匹配,则可确定该Wi-Fi网络通道的状态正常。此时,可将当前投入使用的无线网络通道由该蓝牙网络通道转变为Wi-Fi网络通道,也即切换至Wi-Fi网络通道与目标设备进行通讯,并在网络切换后,通过该Wi-Fi网络通道再次向目标设备发送该故障码读取指令,以保障该故障码读取指令可被正确传输至目标设备处。
在一些实施例中,该网络切换方法还包括:
F1、检测至少两条无线网络通道是否满足预设的网络条件。
F2、若该至少两条无线网络通道满足该网络条件,则进行数据备份操作,并输出提醒消息。
其中,该网络条件可以为:已建立的所有无线网络通道的状态均异常。在满足该网络条件时,表明当前所有无线网络通道均非常不稳定,可能会导致电子设备被迫结束与目标设备的网络连接。为了避免电子设备已接收到的数据出现丢失的情况,可在此时进行数据备份操作。这样一来,在电子设备恢复与目标设备的正常通讯后,不再需要从头开始进行数据交互,节约了数据交互的时间。除此之外,在已建立的所有无线网络通道均异常时,电子设备还可以文字或声音的形式输出提醒消息,用以提醒用户该至少两条无线网络通道的状态,也即,告知用户该电子设备与目标设备之间出现通讯故障。用户在接收到该提醒消息后,即可对该电子设备及目标设备的各个无线通讯模块进行排障,以尽快修复该通讯故障。
在一些实施例中,若已建立的所有无线网络通道均异常,则可触发电子设备将与目标设备进行通讯所使用的无线网络通道切换为(或保持为)该所有无线网络通道中相对最优的无线网络通道,其中,该最优的无线网络通道可以为:通讯延时最短的无线网络通道;或者,也可以为:网速最快的无线网络通道,此处不作限定。若出现已建立的所有无线网络通道均异常,且所有无线网络通道的通讯延时均相同(或所有无线网络通道的网速均相同)的情况,则可不对电子设备与目标设备进行通讯所使用的无线网络通道进行任何改变,也即,无需进行网络切换处理。
仅作为示例,假定电子设备在建立与目标设备的蓝牙网络通道及Wi-Fi网络通道后,选择使用蓝牙网络通道与目标设备进行通讯。若蓝牙网络通道的延时时间及Wi-Fi网络通道的延时时间均过长,且蓝牙网络通道的延时时间为150毫秒,Wi-Fi网络通道的延时时间为100毫秒,则电子设备切换至Wi-Fi网络通道与目标设备进行通讯。若蓝牙网络通道的延时时间及Wi-Fi网络通道的延时时间均过长,且蓝牙网络通道的延时时间为100毫秒,Wi-Fi网络通道的延时时间为150毫秒,则电子设备可将与目标设备进行通讯所使用的无线网络通道保持为蓝牙网络通道。
由上可见,通过本申请实施例,电子设备可预先建立好与目标设备的多条无线网络通道,并在通讯过程中,对当前所使用的无线网络通道的状态进行监测,一旦发现该当前所使用的无线网络通道的状态异常,就立即将当前所使用的无线网络通道切换为已建立的其它无线网络通道,使得电子设备能够继续与目标设备进行正常的数据交互,可保障数据交互过程中无线通讯的稳定性。
对应于上文所提供的网络切换方法,本申请实施例还提供了一种网络切换装置。如图2所示,该网络切换装置200包括:
建立模块201,用于与目标设备建立至少两条无线网络通道;
通讯模块202,用于采用第一网络通道与上述目标设备进行通讯,上述第一网络通道为上述至少两条无线网络通道中的任一无线网络通道;
监测模块203,用于监测上述第一网络通道的状态;
切换模块204,用于若上述第一网络通道状态异常,则切换至第二网络通道与上述目标设备进行通讯,上述第二网络通道为上述至少两条无线网络通道中除上述第一网络通道之外的一条无线网络通道。
可选地,上述监测模块203,包括:
数据发送单元,用于通过上述第一网络通道向上述目标设备发送测试数据;
状态判断单元,用于根据上述目标设备针对上述测试数据的反馈结果,判断上述第一网络通道是否异常。
可选地,上述监测模块203,还包括:
状态确定单元,用于若在预设的时间段内,未接收到上述目标设备针对上述测试数据的反馈结果,则确定上述第一网络通道的状态异常。
可选地,上述建立模块201,具体用于基于不同的无线通讯技术,与上述目标设备建立至少两条无线网络通道。
可选地,上述网络切换装置200还包括:
判断模块,用于判断上述第一网络通道是否为默认网络通道;
获取模块,用于若上述第一网络通道不为上述默认网络通道,则获取上述默认网络通道的状态;
第一确定模块,用于若上述默认网络通道的状态正常,则将上述默认网络通道确定为上述第二网络通道。
可选地,上述监测模块203,具体用于监测上述至少两条无线网络通道的网速;
上述网络切换装置200还包括:
第二确定模块,用于确定除上述第一网络通道之外的网速最快的无线网络通道为上述第二网络通道。
可选地,上述网络切换装置200还包括:
检测模块,用于检测上述至少两条无线网络通道是否满足预设的网络条件;
备份模块,用于若上述至少两条无线网络通道满足上述网络条件,则进行数据备份操作;
提醒模块,用于输出提醒消息,上述提醒消息用于提醒用户上述至少两条无线网络通道的状态。
由上可见,通过本申请实施例,电子设备可预先建立好与目标设备的多条无线网络通道,并在通讯过程中,对当前所使用的无线网络通道的状态进行监测,一旦发现该当前所使用的无线网络通道的状态异常,就立即将当前所使用的无线网络通道切换为已建立的其它无线网络通道,使得电子设备能够继续与目标设备进行正常的数据交互,可保障数据交互过程中无线通讯的稳定性。
对应于上文所提供的网络切换方法,本申请实施例还提供了一种电子设备。请参阅图3,本申请实施例中的电子设备3包括:存储器301,一个或多个处理器302(图3中仅示出一个)及存储在存储器301上并可在处理器上运行的计算机程序。其中:存储器301用于存储软件程序以及单元,处理器302通过运行存储在存储器301的软件程序以及单元,从而执行各种功能应用以及诊断,以获取上述预设事件对应的资源。具体地,处理器302通过运行存储在存储器301的上述计算机程序时实现以下步骤:
与目标设备建立至少两条无线网络通道;
采用第一网络通道与上述目标设备进行通讯,上述第一网络通道为上述至少两条无线网络通道中的任一无线网络通道;
监测上述第一网络通道的状态;
若上述第一网络通道状态异常,则切换至第二网络通道与上述目标设备进行通讯,上述第二网络通道为上述至少两条无线网络通道中除上述第一网络通道之外的一条无线网络通道。
假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述监测上述第一网络通道的状态,包括:
通过上述第一网络通道向上述目标设备发送测试数据;
根据上述目标设备针对上述测试数据的反馈结果,判断上述第一网络通道是否异常。
在上述第二种可能的实施方式作为基础而提供的第三种可能的实施方式中,在上述通过上述第一网络通道向上述目标设备发送测试数据之后,处理器302通过运行存储在存储器301的上述计算机程序时还实现以下步骤:
若在预设的时间段内,未接收到上述目标设备针对上述测试数据的反馈结果,则确定上述第一网络通道的状态异常。
在上述第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,上述与目标设备建立至少两条无线网络通道,包括:
基于不同的无线通讯技术,与上述目标设备建立至少两条无线网络通道。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础而提供的第五种可能的实施方式中,在上述切换至第二网络通道与上述目标设备进行通讯之前,处理器302通过运行存储在存储器301的上述计算机程序时还实现以下步骤:
判断上述第一网络通道是否为默认网络通道;
若上述第一网络通道不为上述默认网络通道,则获取上述默认网络通道的状态;
若上述默认网络通道的状态正常,则将上述默认网络通道确定为上述第二网络通道。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础而提供的第六种可能的实施方式中,在上述切换至第二网络通道与上述目标设备进行通讯之前,处理器302通过运行存储在存储器301的上述计算机程序时还实现以下步骤:
监测上述至少两条无线网络通道的网速;
确定除上述第一网络通道之外的网速最快的无线网络通道为上述第二网络通道。
在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础而提供的第七种可能的实施方式中,在上述建立与目标设备的至少两条无线网络通道之后,处理器302通过运行存储在存储器301的上述计算机程序时还实现以下步骤:
检测上述至少两条无线网络通道是否满足预设的网络条件;
若上述至少两条无线网络通道满足上述网络条件,则进行数据备份操作,并输出提醒消息,上述提醒消息用于提醒用户上述至少两条无线网络通道的网络状态。
应当理解,在本申请实施例中,所称处理器302可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器301可以包括只读存储器和随机存取存储器,并向处理器302提供指令和数据。存储器301的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器301还可以存储设备类别的信息。
由上可见,通过本申请实施例,电子设备可预先建立好与目标设备的多条无线网络通道,并在通讯过程中,对当前所使用的无线网络通道的状态进行监测,一旦发现该当前所使用的无线网络通道的状态异常,就立即将当前所使用的无线网络通道切换为已建立的其它无线网络通道,使得电子设备能够继续与目标设备进行正常的数据交互,可保障数据交互过程中无线通讯的稳定性。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。