一种防止网络连接消息重发的方法、装置及android系统的制作方法

文档序号:10691927阅读:277来源:国知局
一种防止网络连接消息重发的方法、装置及android系统的制作方法
【专利摘要】本发明适用于通信技术领域,提供了一种防止网络连接消息重发的方法及装置、android系统,该方法包括:接收到网络发生变化的广播;判断当前网络的连接状态;当判断网络正常连接时,判断是否已创建网络正常连接消息;当判断为否时,创建并发送网络正常连接消息。本发明中,实时侦测网络状况,当网络发生变化时,及时发出网络发生变化的广播,若判断当前网络正常连接时,确认未发送网络正常连接消息时,才发送网络正常连接消息,可防止网络连接消息的重发。
【专利说明】
一种防止网络连接消息重发的方法、装置及andro i d系统
技术领域
[0001]本发明属于通信技术领域,尤其涉及一种防止网络连接消息重发的方法及装置、andro id系统。
【背景技术】
[0002]wifi是一种可将个人电脑、手持设备(PAD、手机)等终端以无限方式互相连接的技术。WiFi设备作为无线连接设备,其WiFi P2P连接方法可使WiFi设备直连起来,方便打印和共享同步等操作。WiFi设备能够完成一对一的连接或作为组连接在一起。其中,一对一连接是常见的WiFi直连应用,可以进行数据交换和应用共享等操作
[0003]移动终端(例如android系统)在进行WiFi网络连接时,系统一般会发出连接状态信息,如当连接成功时发送连接成功消息,当不成功时,也会发出连接不成功消息。但当wifi网络连接成功之后,有时会出现毫秒级的连发两次网络连接消息的情况,会导致某些应用在此过程中因接收两次网络连接消息而执行两次相同任务,进而导致移动终端出现不准确状况,甚至会导致移动终端应用程序崩溃。

【发明内容】

[0004]本发明实施例提供了一种防止网络连接消息重发的方法及装置、android系统,旨在解决现有技术中多次发生网络连接消息的问题。
[0005]本发明实施例是这样实现的,一种防止网络连接消息重发的方法,包括:
[0006]接收到网络发生变化的广播;
[0007]判断当前网络的连接状态;
[0008]当判断网络正常连接时,判断是否已创建网络正常连接消息;
[0009]当判断为否时,创建并发送网络正常连接消息。
[0010]优选地,所述当判断为否时,创建并发送网络正常连接消息具体包括:
[0011 ]创建网络正常连接消息,所述网络正常连接消息携带延迟指示;
[0012]根据所述延迟指示等待预设时长,当在预设时长未接收到网络断开的消息时,发出所创建的网络正常连接消息对应的广播。
[0013]优选地,在预设时长内未接收到网络断开的消息时,发出所述网络正常连接消息具体包括:
[0014]判断在所述预设时长内是否接收到网络断开连接的消息;
[0015]当判断为否,则发出所述网络正常连接消息;
[0016]当判断为是,则不发出所述网络正常连接消息。
[0017]优选地,所述判断当前网络的连接状态具体包括:
[0018]调取Android系统原生的网络对象;
[0019]判断所述网络对象的连接属性是否为真;
[0020]当判断为真则表示当前网络连接正常;[0021 ]当判断为假则表示当前网络未连接。
[0022]本发明还提供一种防止网络连接消息重发的装置,包括:接收模块、与接收模块连接的控制模块,其中:
[0023]接收模块,用于接收网络发生变化的广播,并判断当前网络的连接状态;
[0024]控制模块,当判断网络正常连接时,用于判断是否已创建网络正常连接消息,并在未创建网络正常连接消息时,创建并发送网络正常连接消息。
[0025]优选地,所述控制模块包括:控制元件及与所述控制元件连接的处理单元,其中:
[0026]控制元件、用于创建网络正常连接消息,并将所创建的网络正常连接消息发送给所述处理单元,所述网络正常连接消息携带延迟指示;
[0027]处理单元,用于根据所述延迟指示等待预设时间段,当在预设时长内未接收到网络断开的消息时,发出网络正常连接的广播。
[0028]优选地,所述接收模块包括:接收单元、与接收单元连接的调取单元、及与所述调取单元连接的属性判断单元,其中:
[0029]接收单元,用于接收网络发生变化的广播;
[0030]调取单元,用于调取android系统原生的网络对象;
[0031]属性判断单元,用于判断所述网络对象的连接属性是否为真,当判断为真则表示当前网络连接正常;当判断为假则表示当前网络未连接。
[0032]优选地,所述接收模块还包括:
[0033]判断控制单元,用于判断所述控制元件是否打开,当判断为否时,控制所述控制元件打开。
[0034]优选地,所述接收模块还包括:
[0035]与所述属性判断单元连接的反馈单元,用于当判断所述网络对象的连接属性为假时,向所述处理单元发送反馈消息,以控制所述处理单元删除接收到的网络正常连接的消息。
[0036]本发明还提供一种androi d系统,所述andro id系统包括:防止网络连接消息重发的装置,该装置包括:接收模块、与接收模块连接的控制模块,其中:
[0037]接收模块,用于接收网络发生变化的广播,并判断当前网络的连接状态;控制模块,当判断网络正常连接时,用于判断是否已创建网络正常连接消息,并在未创建网络正常连接消息时,创建并发送网络正常连接消息。
[0038]在本发明实施例中,实时侦测网络状况,当网络发生变化时,及时发出网络发生变化的广播,若判断当前网络正常连接时,确认未创建并发送网络正常连接消息时,才发送网络正常连接消息,可防止网络连接消息的重发。
【附图说明】
[0039]图1是本发明第一实施例提供的一种防止网络连接消息重发的方法;
[0040]图2是为本发明第一实施例提供的一种防止网络连接消息重发的方法的步骤S4的具体流程图;
[0041]图3是本发明第一实施例提供的一种防止网络连接消息重发的方法的步骤S42的具体流程图;
[0042]图4是本发明第二实施例提供的一种防止网络连接消息重发的装置;
[0043]图5是本发明第二实施例提供的一种防止网络连接消息重发的装置的控制模块2的具体结构图;
[0044]图6是本发明第二实施例提供的一种防止网络连接消息重发的装置的接收模块I的具体结构图。
【具体实施方式】
[0045]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0046]本发明实施例中,一种防止网络连接消息重发的方法,包括:接收到网络发生变化的广播;判断当前网络的状态;当判断网络正常连接时,判断是否已创建网络正常连接消息;当判断为否时,创建并发送网络正常连接消息。
[0047]为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0048]实施例一:
[0049]图1示出了本发明第一实施例提供的一种防止网络连接消息重发的方法,包括:
[0050]步骤S1、接收到网络发生变化的广播;
[0051]具体地,本实施例所述的防止网络连接消息重发的方法是基于Android系统的,该android系统实时监控当前网络的状况,当网络发生变化时,发出网络发生变化的原生广播;
[0052]步骤S2、判断当前网络的连接状态;
[0053]接收到an d r ο i d系统的原生广播后,判断当前网络的连接状态,具体地,获取android系统原生的网络对象,判断该网络对象的连接属性是否为真,当判断该连接属性为真时,确定当前网络正常连接,当该连接属性为假时,确定当前网络未连接。例如:当接收到网络发生变化的广播后,需要调取android系统原生的网络对象(NetWorkInfo),并调用该网络对象的连接属性(isAvai Iable ),判断该连接属性为真(true)时,确定当前网络正常连接,转到步骤S3;当该连接属性为假(false)时,确定当前网络未连接,不进行后续进程。
[0054]步骤S3、当判断网络正常连接时,判断是否已创建网络正常连接消息;
[0055]其中,当判断网络正常连接时,需要进一步判断当前是否已创建网络正常连接消息。当判断已创建网络正常连接消息时,不进行后续进程。当未创建网络正常连接消息时,转到步骤S4;
[0056]在本实施例的一个优选方案中,可通过判断当前的控制元件是否处于打开状态来确认当前是否已创建网络正常连接的消息,该控制元件为Andrο i d系统的一个元件,用于创建网络正常连接消息,需要创建网络正常连接消息时,该控制元件会被打开,当网络正常连接消息被发送出去之后,该控制元件被会重置而关闭。当该控制元件处于打开状态时,表示已创建网络正常连接消息,该控制元件打开时,就会创建网络正常连接的消息,当该控制元件关闭时,不创建网络正常连接的消息。当控制元件未打开时,表示当前未创建网络正常连接消息,此时需要控制打开该控制元件以创建网络正常连接消息。
[0057]步骤S4、创建并发送网络正常连接消息。
[0058]具体地,创建网络正常连接消息,并将此消息发送出去。
[0059]优选地,如图2所示,为本发明第一实施例提供的一种防止网络连接消息重发的方法的步骤S4的具体流程图,上述步骤S4具体包括:
[0060]步骤S41、创建网络正常连接消息;
[0061]具体地,该网络正常连接消息携带延迟指示及网络正常消息对应的广播,该延迟指示具体为需要等待预设时长发送该对应广播的指示。
[0062]步骤S42、根据该延迟指示等待预设时长,在预设时长未接收到网络断开的消息时,发出所创建的网络正常连接消息对应的广播。
[0063]本实施例中,所创建网络正常连接消息携带需要延迟发送的指示,该指令包括需要延迟的预设时长,该预设时长可根据实际情况而设,例如Ims、2ms、3ms、5ms等,此处对此不作限制。
[0064]进一步优选地,如图3所示,为本发明第一实施例提供的一种防止网络连接消息重发的方法的步骤S42的具体流程图,所述步骤S42具体包括:
[0065]步骤S421、判断在所述预设时长内是否接收到网络断开连接的消息,当判断为是转到步骤S422;当判断为否,转到步骤S423 ;
[0066]步骤S422、不发出所述网络正常连接消息;
[0067]具体地,当接收到网络断开连接的消息时,该消息携带删除所接收的网络正常连接消息的指示,基于该指示删除该网络正常连接消息,不发送该网络正常连接消息。
[0068]步骤S423、发出所述网络正常连接消息;
[0069]具体地,在等待预设时长内,继续监听是否接收到新的消息,判断在预设时长内是否接收到网络断开连接的消息,当接收到网络断开连接的消息时,表示此时网络连接失败,不发出网络正常连接的消息,当未接收到网络断开连接的消息时,发出网络正常连接的消息。本实施例中,创建网络正常连接消息后,不直接发送,而是等待预设时长,在确认预设时长内未接收到网络断开连接的消息时才发送该网络正常连接消息,避免出现在网络突然断开时,收到的却是网络正常连接消息的现象,可一定程度上提高网络连接广播的准确性。
[0070]本发明中,实时侦测网络状况,当网络发生变化时,及时发出网络发生变化的广播,若判断当前网络正常连接时,确认未创建并发送网络正常连接消息时,才发送网络正常连接消息,可防止网络连接消息的重发。
[0071]此外,在发送网络正常连接消息之前等待预设时长,若未接收到网络断开连接的消息才发送网络正常连接消息,可防止网络连接消息的误发,提高网络连接消息反馈的准确性。
[0072]实施例二:
[0073]图4示出了本发明第二实施例提供的一种防止网络连接消息重发的装置,包括:接收模块I及与其连接的控制模块2,其中:
[0074]接收模块I,用于接收网络发生变化的广播,并判断当前网络的状态;
[0075]具体地,接收模块I实时监控当前网络的状况,当网络发生变化时,Android系统发出网络发生变化的原生广播;
[0076]控制模块2,当判断网络正常连接时,用于判断是否已创建网络正常连接消息,并在未创建网络正常连接消息时,创建并发送网络正常连接消息。
[0077]优选地,本实施例所述的防止网络连接消息重发的方法是基于Android系统的,该接收模块I接收到andro i d系统的原生广播后,判断当前网络的状态,具体地,获取andro i d系统原生的网络对象,判断该网络对象的连接属性是否为真,当判断该连接属性为真时,确定当前网络正常连接,当该连接属性为假时,确定当前网络未连接。
[0078]在本实施例的一个优选方案中,如图5所不,为本发明第二实施例提供的一种防止网络连接消息重发的装置的控制模块2的具体结构图,该控制模块2具体包括:控制元件21及处理单元22,其中:
[0079]控制元件21,用于创建网络正常连接消息,并将所创建的网络正常连接消息发送给处理单元22,该网络正常连接消息携带延迟指示;
[0080]具体地,该网络正常连接消息携带延迟指示及网络正常消息对应的广播,该延迟指示具体为需要等待预设时长发送该对应广播的指示。
[0081]处理单元22,用于根据延迟指示等待预设时长,当在预设时长内未接收到网络断开的消息时,发出网络正常连接的广播对应的广播。
[0082]本实施例中,所创建网络正常连接消息携带需要延迟发送的指示,该指令包括需要延迟的预设时长,该预设时长可根据实际情况而设,例如Ims、2ms、3ms、5ms等,此处对此不作限制。
[0083]在本实施例的另一个优选方案中,如图6所示,为本发明第二实施例提供的一种防止网络连接消息重发的装置的接收模块I的具体结构图,该接收模块I具体包括:接收单元
10、与该接收单元10连接的调取单元11、与其连接的属性判断单元12,其中:
[0084]接收单元10,用于接收网络发生变化的广播;
[0085]调取单元11,用于调取android系统原生的网络对象;
[0086]属性判断单元12,用于判断该网络对象的连接属性是否为真,当判断为真则表示当前网络连接正常;当判断为假则表示当前网络未连接。
[0087]接收到android系统的原生广播后,判断当前网络的状态,具体地,调取单元11调取android系统原生的网络对象,属性判断单元12判断该网络对象的连接属性是否为真,当判断该连接属性为真时,确定当前网络正常连接,当该连接属性为假时,确定当前网络未连接。例如:当接收到网络发生变化的广播后,需要调取android系统原生的网络对象(NetfforkInfo),并调用该网络对象的连接属性(isAvaiIable),判断该连接属性为真(true)时,确定当前网络正常连接,当该连接属性为假(false)时,确定当前网络未连接。
[0088]在本实施例的进一步优选方案中,该接收单元I还包括:
[0089]与该属性判断单元12连接的判断控制单元13,用于判断该控制元件21是否打开,当判断为否时,控制该控制元件21打开。
[0090]在本实施例的一个优选方案中,可通过判断当前的控制元件21是否处于打开状态来确认当前是否已创建网络正常连接的消息,该控制元件21为Android系统的一个元件,用于创建网络正常连接消息,需要创建网络正常连接消息时,该控制元件21会被打开,当网络正常连接消息被发送出去之后,该控制元件21被会重置而关闭。当该控制元件21处于打开状态时,表示已创建网络正常连接消息,该控制元件21打开时,就会创建网络正常连接的消息,当该控制元件21关闭时,不创建网络正常连接的消息。当控制元件21未打开时,表示当前未创建网络正常连接消息,此时需要控制打开该控制元件21以创建网络正常连接消息。
[0091]在本实施例的更进一步优选方案中,该接收单元I还包括:
[0092]与该属性判断单元12连接的反馈单元14,用于当判断网络对象的连接属性为假时,向处理单元22发送反馈消息,以控制该处理单元22删除存储的网络正常连接的消息。
[0093]为了便于理解,下面详细描述本实施例的装置的工作原理:
[0094]当网络连接发生变化时,Android系统会发出网络发生变化的广播,接收单元10接收到该广播后,反馈给调取单元11,该调取单元11调取Android系统原始的网络对象并反馈给属性判断单元12,该属性判断单元12判断当前网络状况,当判断网络正常连接时,向该判断控制单元13反馈,该判断控制单元13基于所接收的反馈判断控制元件21当前是否处于打开状态,当处于打开状态时不向控制元件21发送指令,而判断控制元件21未处于打开状态时,控制该控制元件21打开,并向控制元件21发送创建当前网络正常连接消息的指令。控制元件21被打开后,基于所接收的指令创建网络正常连接消息,并将此消息发送给处理单元22,在本实施例的一个优选方案中,该网络正常连接消息携带延迟指示,该延迟指示具体为指示该处理单元22延迟预设时长发送该网络正常连接消息。处理单元22接收到该网络正常连接消息后,根据所述延迟指示,等待预设时长,若在预设时长内未接收到网络断开的消息,则将该网络正常连接消息发送出去(具体为反馈给用户,例如通过移动终端的界面反馈给用户)。
[0095]当网络断开时,接收模块I的接收单元10接收到网络发生变化广播后反馈给调取单元11,该调取单元11调取android系统原生的网络对象,该属性判断单元12判断该网络对象的连接属性为假,则不向该判断控制单元13反馈,而是向反馈单元14反馈,该反馈单元14向处理单元22发送删除指令,该处理单元22基于该删除指令将所接收的未发送的网络正常连接消息删除,不执行发送步骤。接着接收模块I重置,该控制元件21关闭,重新监控网络连接状态。
[0096]本发明中,实时侦测网络状况,当网络发生变化时,及时发出网络发生变化的广播,若判断当前网络正常连接时,确认未创建网络正常连接消息时,才发送网络正常连接消息,可防止网络连接消息的重发。
[0097]本发明还提供一种android系统,该android系统除了具有普通android系统的结构及功能外,还包括一种防止网络连接消息重发的装置,该防止网络连接消息重发的装置的结构及工作原理与上述实施例的结构及工作原理基本一致,具体可参考上述实施例,此处不再赘述。
[0098]本发明的实施例中,实时监控网络连接状况,当网络发生变化时及时发出android原生的广播,当判断网络正常连接时,确认当前未创建网络正常连接消息时才发送网络正常连接消息,可防止多次重发消息。
[0099]此外,发送网络正常连接消息之前需要延迟等待预设时长,当确认在预设时长内未接收到网络断开消息时再发生网络正常连接消息,可以提高网络连接消息的准确性,防止网络连接后突然断开而用户接收到的是网络正常连接消息,避免因网络连接消息的不准确性而导致移动终端管应用程序崩溃的问题。
[0100]再者,设置控制元件来创建网络正常连接消息,通过判断该控制元件的关闭或者开启来判断是否已经创建网络正常连接消息,实现过程简单,可提高判断的准确性。
[0101]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。
[0102]专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
【主权项】
1.一种防止网络连接消息重发的方法,其特征在于,包括: 接收到网络发生变化的广播; 判断当前网络的连接状态; 当判断网络正常连接时,判断是否已创建网络正常连接消息; 当判断为否时,创建并发送网络正常连接消息。2.根据权利要求1所述的方法,其特征在于,所述当判断为否时,创建并发送网络正常连接消息具体包括: 创建网络正常连接消息,所述网络正常连接消息携带延迟指示; 根据所述延迟指示等待预设时长,在预设时长未接收到网络断开的消息时,发出所创建的网络正常连接消息对应的广播。3.根据权利要求2所述的方法,其特征在于,在预设时长内未接收到网络断开的消息时,发出所述网络正常连接消息具体包括: 判断在所述预设时长内是否接收到网络断开连接的消息; 当判断为否,则发出所述网络正常连接消息; 当判断为是,则不发出所述网络正常连接消息。4.根据权利要求1所述的方法,其特征在于,所述判断当前网络的连接状态具体包括: 调取Andro i d系统原生的网络对象; 判断所述网络对象的连接属性是否为真; 当判断为真则表示当前网络连接正常; 当判断为假则表示当前网络未连接。5.—种防止网络连接消息重发的装置,其特征在于,包括:接收模块、与接收模块连接的控制模块,其中: 接收模块,用于接收网络发生变化的广播,并判断当前网络的连接状态; 控制模块,当判断网络正常连接时,用于判断是否已创建网络正常连接消息,并在未创建网络正常连接消息时,创建并发送网络正常连接消息。6.根据权利要求5所述的装置,其特征在于,所述控制模块包括:控制元件及与所述控制元件连接的处理单元,其中: 控制元件、用于创建网络正常连接消息,并将所创建的网络正常连接消息发送给所述处理单元,所述网络正常连接消息携带延迟指示; 处理单元,用于根据所述延迟指示等待预设时长,当在预设时长内未接收到网络断开的消息时,发出所创建网络正常连接消息对应的广播。7.根据权利要求6所述的装置,其特征在于,所述接收模块包括:接收单元、与接收单元连接的调取单元、及与所述调取单元连接的属性判断单元,其中: 接收单元,用于接收网络发生变化的广播; 调取单元,用于调取andro i d系统原生的网络对象; 属性判断单元,用于判断所述网络对象的连接属性是否为真,当判断为真则表示当前网络连接正常;当判断为假则表示当前网络未连接。8.根据权利要求6所述的装置,其特征在于,所述接收模块还包括: 判断控制单元,用于判断所述控制元件是否打开,当判断为否时,控制所述控制元件打开。9.根据权利要求7所述的装置,其特征在于,所述接收模块还包括: 与所述属性判断单元连接的反馈单元,用于当判断所述网络对象的连接属性为假时,向所述处理单元发送反馈消息,以控制所述处理单元删除接收到的网络正常连接的消息。10.—种android系统,其特征在于,包括如权利要求5至9任意一项所述的防止网络连接消息重发的装置。
【文档编号】H04W76/04GK106060959SQ201610687487
【公开日】2016年10月26日
【申请日】2016年8月18日
【发明人】田改, 丁立朵
【申请人】Tcl集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1