一种网络连接故障处理方法、装置及电子设备与流程

文档序号:16310740发布日期:2018-12-19 05:16阅读:162来源:国知局
一种网络连接故障处理方法、装置及电子设备与流程

本发明涉及网络技术领域,特别涉及一种网络连接故障处理方法、装置及电子设备。

背景技术

随着手机移动端的快速发展,越来越多的用户开始观看直播,在直播中需要视屏播放或者音频播放,由于公司的直播的服务器部分是自己搭建,自己的搭建的服务器,用户的网络有些是移动,有些是电信,这些用户端信息是各种类型的,经常会出现用户的网络接口出现错误,常规的做法是:一般的用户出现错误大部分是让用户去修改域名系统(domainnamesystem,dns),这样的提示,有些用户修改了dns还是无法观看直播,无法获取直播接口中的数据,一般会造成用户流失,同时需要用户重新进行其他网络故障的处理,网络效率低下。



技术实现要素:

本发明实施例提供了一种网络连接故障处理方法、装置及电子设备,避免了用户流失,提高了网络连接的效率。

第一方面,本申请提供了一种网络连接故障处理方法,该方法包括:

当移动终端网络连接失败的时候,获取网络诊断指令;

根据所述网络诊断指令获取网络信息,所述网络信息包括网络环境信息、网络的dns信息、所述移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及所述移动终端当前网关的连通性信息;

向服务器发送所述网络信息,以使得所述服务器根据所述网络信息发送对应的网络操作提示信息;

接收所述服务器发送的网络操作提示信息。

进一步的,所述根据所述网络诊断指令获取网络信息的步骤,包括:

根据所述网络诊断指令识别网络环境信息;

获取所述移动终端网络的dns信息;

获取所述移动终端当前的dns解析的时间长短信息;

测试所述移动终端当前网关的连通性,获取所述移动终端当前网关的连通性信息。

进一步的,所述根据所述网络诊断指令识别网络环境信息的步骤,包括:

使用getnettype去获取所述移动终端的联网状态,确定所述移动终端当前的联网是移动,联通、电信或者wi-fi;

调用获deviceipadress获取所述移动终端的ip地址;

使用网络管理类afnetworkreachabilitymanager调用网络管理类的单例方法shareinstance,获取网络状况的单例,从所述网络状况的单例中获取所述移动终端当前的网络状态;

所述网络环境信息包括所述移动终端当前的联网信息,所述移动终端ip地址信息和所述移动终端当前的网络状态信息。

进一步的,所述获取所述移动终端网络的dns信息的步骤,包括:

使用getdnsmsg函数获取所述移动终端网络的dns信息。

进一步的,所述获取所述移动终端当前的dns解析的时间长短信息,包括:

通过时间定时器ldnettimer调用getmicroseconds,获取到当前的时间;

通过getdnsswithdormain获取到当前移动终端的dns域名;

使用computedurationsince函数判断当前经历的时间,获取解析出的dns域名及所述移动终端当前的dns解析的时间长短信息。

进一步的,所述测试所述移动终端当前网关的连通性,获取所述移动终端当前网关的连通性信息,包括:

在获取所述移动终端的ip地址之后,使用runwithhostname去检测所述移动终端ip地址的是否可用,以获取所述移动终端当前网关的连通性信息。

第二方面,本申请提供一种网络连接故障处理装置,该装置包括:

第一获取单元,用于当移动终端网络连接失败的时候,获取网络诊断指令;

第二获取单元,用于根据所述网络诊断指令获取网络信息,所述网络信息包括网络环境信息、网络的dns信息、所述移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及所述移动终端当前网关的连通性信息;

发送单元,用于向服务器发送所述网络信息,以使得所述服务器根据所述网络信息发送对应的网络操作提示信息;

接收单元,用于接收所述服务器发送的网络操作提示信息。

进一步的,所述第二获取单元具体用于:

根据所述网络诊断指令识别网络环境信息;

获取所述移动终端网络的dns信息;

获取所述移动终端当前的dns解析的时间长短信息;

测试所述移动终端当前网关的连通性,获取所述移动终端当前网关的连通性信息。

进一步的,所述第二获取单元具体用于:

使用getnettype去获取所述移动终端的联网状态,确定所述移动终端当前的联网是移动,联通、电信或者wi-fi;

调用获deviceipadress获取所述移动终端的ip地址;

使用网络管理类afnetworkreachabilitymanager调用网络管理类的单例方法shareinstance,获取网络状况的单例,从所述网络状况的单例中获取所述移动终端当前的网络状态;

所述网络环境信息包括所述移动终端当前的联网信息,所述移动终端ip地址信息和所述移动终端当前的网络状态信息。

进一步的,所述第二获取单元具体用于:

使用getdnsmsg函数获取所述移动终端网络的dns信息。

进一步的,所述第二获取单元具体用于:

通过时间定时器ldnettimer调用getmicroseconds,获取到当前的时间;

通过getdnsswithdormain获取到当前移动终端的dns域名;

使用computedurationsince函数判断当前经历的时间,获取解析出的dns域名及所述移动终端当前的dns解析的时间长短信息。

进一步的,所述第二获取单元具体用于:

在获取所述移动终端的ip地址之后,使用runwithhostname去检测所述移动终端ip地址的是否可用,以获取所述移动终端当前网关的连通性信息。

第三方面,本发明还提供一种电子设备,包括:存储器,处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时可以实现第一方面中任一所述的网络连接故障处理方法。

第四方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任一所述的网络连接故障处理方法。

本发明实施例中当移动终端网络连接失败时,获取网络诊断指令;根据网络诊断指令获取网络信息,其中网络信息包括网络环境信息、网络的dns信息、移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及移动终端当前网关的连通性信息;向服务器发送网络信息,以使得服务器根据网络信息发送对应的网络操作提示信息;接收服务器发送的网络操作提示信息。本发明实施例中当移动终端网络连接失败时,不直接提示用户修改dns,而是获取用户网络诊断指令,获取网络信息,并发送给服务器,方便服务器对数据进行分析,返回对应的网络操作提示信息,方便用户进行操作,本发明提供了更精准的网络重试连接的解决方案,避免了用户流失,提高了网络连接的效率。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例中网络连接故障处理方法的一个实施例示意图;

图2是本发明实施例中图1所示实施例中步骤s102的一个实施例示意图;

图3是本发明实施例中网络连接故障处理装置的一个实施例结构示意图;

图4是本发明实施例中电子设备的一个实施例结构示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明实施例中哇网络连接故障处理方法应用于网络连接故障处理装置,该装置位于电子设备中,该电子设备可以是手机、平板电脑或者个人电脑等电子设备,也可以是未来出现有个人终端电子设备等。

请参阅图1,为本发明实施例中网络连接故障处理方法的一个实施例流程示意图,该方法包括:

s101、当移动终端网络连接失败时,获取用户网络诊断指令。

具体的,本发明实施例中,在用户通过移动终端连接网络失败的时候,在网络连接失败的显示页面上添加网络诊断按钮,当用户点击该网络诊断按钮,即获取用户网络诊断指令。

目前,当服务器的接口拉取数据失败的时候(即移动终端网络连接失败时),常规的方案使直接给予一个提示让用户去修改dns为114等处理方案,这样在很多情况下是用户修改了dns还是无法获取到接口的数据,用户就会看到了一个没有数据的空页面,这样的移动终端应用(application,app)带来了极糟糕的用户体验,为了对这个情况进行改进,当用户网络接口获取数据失败之前(即移动终端网络连接失败之前),在网络连接页面上添加一个网络诊断按钮,添加网络诊断按钮的方法具体可以如下:

使用uibutton类调用创建按钮的方法alloc和init函数,创建出网络诊断按钮,为网络诊断按钮添加设置位置frame,设置完毕之后使用为网络诊断按钮添加一个点击事件,这个点击事件是去诊断网络的事件。

s102、根据网络诊断指令获取网络信息。

其中,该网络信息包括网络环境信息、网络的dns信息、该移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及该移动终端当前网关的连通性信息。

s103、向服务器发送网络信息,以使得服务器根据网络信息发送对应的网络操作提示信息。

本发明实施例中,服务器为移动终端对应的服务器,若为移动终端中应用无法使用网络,则该服务器为移动终端中应用对应的服务器,如斗鱼直播app对应的斗鱼直播服务器,该服务器可以是一个,也可以是集群,此处不做限定。

在上述的步骤中可以获取到当前的网络环境信息,例如是电信、联通、移动还是wi-fi,能够检测出dns信息,能够获取到当前移动终端的ip地址,能够获取到移动终端当前的dns解析的时间长短信息,可以检测出ip地址是否可用等信息,并且这些信息存储到预设的网络文件中,最终传到服务器,服务器中可以设定不同的网络网络信息对应的提示信息,在收到移动终端发送的网络信息之后,根据上面的网络信息对应确定网络操作提示信息,例如根据上面的网络信息给予用户提示是稍候再试还是切换网络,亦或者是修改dns等网络操作提示信息,这样的用户解决无法连接网络的形式更加多样性,更加精准,常规的方法没有进行检测直接让用户修改dns,少部分用户修改dns还没有效果,带来了极糟糕的用户体验,本发明实施例中提供给用户精准的诊断并且将诊断信息发送给服务器,方便服务器拿到信息之后改进这些网络无法连接的问题。

s104、接收所述服务器发送的网络操作提示信息。

在服务器发送网络操作提示信息之后,移动终端可以在网络连接失败界面,显示对应的网络操作提示信息,例如“稍候再试”、“切换网络”或者“修改dns”等。用户查阅到该网络操作提示信息可以进行对应的操作,以进行网络重连。

本发明实施例中当移动终端网络连接失败时,获取网络诊断指令;根据网络诊断指令获取网络信息,其中网络信息包括网络环境信息、网络的dns信息、移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及移动终端当前网关的连通性信息;向服务器发送网络信息,以使得服务器根据网络信息发送对应的网络操作提示信息;接收服务器发送的网络操作提示信息。本发明实施例中当移动终端网络连接失败时,不直接提示用户修改dns,而是获取用户网络诊断指令,获取网络信息,并发送给服务器,方便服务器对数据进行分析,返回对应的网络操作提示信息,方便用户进行操作,本发明提供了更精准的网络重试连接的解决方案,避免了用户流失,提高了网络连接的效率。

如图2所示,在本发明一些实施例中,上述步骤s102中根据所述网络诊断指令获取网络信息的步骤,可以包括:

s1021、根据网络诊断指令识别网络环境信息。

具体的,根据网络诊断指令识别网络环境信息具体可以包括:

使用getnettype去获取所述移动终端的联网状态,确定所述移动终端当前的联网是移动,联通、电信或者wi-fi;

调用获deviceipadress获取所述移动终端的ip地址;

使用网络管理类afnetworkreachabilitymanager调用网络管理类的单例方法shareinstance,获取网络状况的单例,从所述网络状况的单例中获取所述移动终端当前的网络状态;

其中,网络环境信息包括所述移动终端当前的联网信息,所述移动终端ip地址信息和所述移动终端当前的网络状态信息。在获取到网络环境信息后,将网络环境信息保存到预设的网络文件中。

本步骤中,通过识别当前的网络环境信息为后续的诊断网络后推荐解决方案做准备。

s1022、获取移动终端网络的dns信息。

本发明实施例中,可以使用gethsemane函数获取该移动终端网络的dns信息。在获取到动终端网络的dns信息后,将动终端网络的dns信息保存到预设的网络文件中。

s1023、获取移动终端当前的dns解析的时间长短信息。

进一步的,该获取所述移动终端当前的dns解析的时间长短信息的步骤,可以包括:通过时间定时器ldnettimer调用getmicroseconds,获取到当前的时间;通过getdnsswithdormain获取到当前移动终端的dns域名;使用computedurationsince函数判断当前经历的时间,获取解析出的dns域名及所述移动终端当前的dns解析的时间长短信息。

具体的,通过时间定时器ldnettimer调用获取当前的毫秒数的方法getmicroseconds,获取到当前的时间,获取的时间为time_start;通过获取dns域名的方法getdnsswithdormain获取到当前移动终端的dns域名,获取到的dns域名存储到预设的网络文件中;使用computedurationsince函数判断当前的时间距离time_start一共经历了时间的秒数,这样就可以拿到解析出的dns,同时可以获取解析出的dns域名及所述移动终端当前的dns解析的时间长短信息,并且将这些获得的dns和dns解析的时间长短信息存储到预设的网络文件中。

s1024、测试移动终端当前网关的连通性,获取移动终端当前网关的连通性信息。

进一步的,所述测试所述移动终端当前网关的连通性,获取所述移动终端当前网关的连通性信息的步骤,可以包括:在获取所述移动终端的ip地址之后,使用runwithhostname去检测所述移动终端ip地址的是否可用,以获取所述移动终端当前网关的连通性信息。具体的,所述移动终端当前网关的连通性信息即移动终端ip地址是否可用,并将移动终端ip地址是否可用的网关的连通性信息存储到预设的网络文件中。

下面介绍本发明实施例中网络连接故障处理装置的实施例。

请参阅图3,为本发实施例中网络连接故障处理装置的一个实施例流程示意图,该网络连接故障处理装置包括:

第一获取单元301,用于当移动终端网络连接失败的时候,获取网络诊断指令;

第二获取单元302,用于根据所述网络诊断指令获取网络信息,所述网络信息包括网络环境信息、网络的dns信息、所述移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及所述移动终端当前网关的连通性信息;

发送单元303,用于向服务器发送所述网络信息,以使得所述服务器根据所述网络信息发送对应的网络操作提示信息;

接收单元304,用于接收所述服务器发送的网络操作提示信息。

进一步的,所述第二获取单元302具体用于:

根据所述网络诊断指令识别网络环境信息;

获取所述移动终端网络的dns信息;

获取所述移动终端当前的dns解析的时间长短信息;

测试所述移动终端当前网关的连通性,获取所述移动终端当前网关的连通性信息。

进一步的,所述第二获取单元302具体用于:

使用getnettype去获取所述移动终端的联网状态,确定所述移动终端当前的联网是移动,联通、电信或者wi-fi;

调用获deviceipadress获取所述移动终端的ip地址;

使用网络管理类afnetworkreachabilitymanager调用网络管理类的单例方法shareinstance,获取网络状况的单例,从所述网络状况的单例中获取所述移动终端当前的网络状态;

所述网络环境信息包括所述移动终端当前的联网信息,所述移动终端ip地址信息和所述移动终端当前的网络状态信息。

进一步的,所述第二获取单元302具体用于:

使用getdnsmsg函数获取所述移动终端网络的dns信息。

进一步的,所述第二获取单元302具体用于:

通过时间定时器ldnettimer调用getmicroseconds,获取到当前的时间;

通过getdnsswithdormain获取到当前移动终端的dns域名;

使用computedurationsince函数判断当前经历的时间,获取解析出的dns域名及所述移动终端当前的dns解析的时间长短信息。

进一步的,所述第二获取单元302具体用于:

在获取所述移动终端的ip地址之后,使用runwithhostname去检测所述移动终端ip地址的是否可用,以获取所述移动终端当前网关的连通性信息。

本发明实施例中第一获取单元301当移动终端网络连接失败时,获取网络诊断指令;第二获取单元302根据网络诊断指令获取网络信息,其中网络信息包括网络环境信息、网络的dns信息、移动终端的主机的ip地址列表信息、当前的dns解析的时间长短信息以及移动终端当前网关的连通性信息;发送单元303向服务器发送网络信息,以使得服务器根据网络信息发送对应的网络操作提示信息;接收单元304接收服务器发送的网络操作提示信息。本发明实施例中当移动终端网络连接失败时,不直接提示用户修改dns,而是获取用户网络诊断指令,获取网络信息,并发送给服务器,方便服务器对数据进行分析,返回对应的网络操作提示信息,方便用户进行操作,本发明提供了更精准的网络重试连接的解决方案,避免了用户流失,提高了网络连接的效率。

本发明实施例中还提供一种电子设备,请参见图4,所述电子设备包括:

存储器401,处理器402及存储在所述存储器上并可在所述处理器上运行的计算机程序403,其中,所述处理器402执行所述计算机程序403时可以实现上述网络连接故障处理方法。

需要说明的是,本申请涉及的电子设备包括但不限于是:移动终端(手机、智能手机、pad、笔记本电脑等等)、固定终端(计算机)。

为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。存储器401可用于存储计算机程序403,上述计算机程序包括软件程序、模块和数据,处理器402通过运行执行存储在存储器401的计算机程序403,从而执行电子设备的各种功能应用以及数据处理。

在具体的实施过程中,存储器401可用于存储软件程序以及模块,处理器402通过运行存储在存储器401的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器401可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(例如游戏类应用程序、聊天类应用程序)等;存储数据区可存储根据电子设备的使用所创建的数据(游戏配置数据、音频数据)等。此外,存储器401可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。处理器402是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器401内的软件程序和/或模块,以及调用存储在存储器401内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器402可包括一个或多个处理单元;优选的,处理器402可集成应用处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等。

本发明实施例还提供一种计算机可读存储介质,其中,该计算机可读存储介质可存储有程序,该程序执行时包括上述方法实施例中记载的网络连接故障处理方法的部分或全部步骤。

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

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

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

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

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

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1