CN114666322A - 断点续传方法、装置和电子设备 - Google Patents
断点续传方法、装置和电子设备 Download PDFInfo
- Publication number
- CN114666322A CN114666322A CN202210283469.5A CN202210283469A CN114666322A CN 114666322 A CN114666322 A CN 114666322A CN 202210283469 A CN202210283469 A CN 202210283469A CN 114666322 A CN114666322 A CN 114666322A
- Authority
- CN
- China
- Prior art keywords
- data
- continuously transmitted
- processing
- attribute information
- condition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000012545 processing Methods 0.000 claims abstract description 122
- 230000005540 biological transmission Effects 0.000 claims abstract description 53
- 230000008569 process Effects 0.000 claims abstract description 20
- 238000003672 processing method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 29
- 238000004891 communication Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开一种断点续传方法和设备,涉及计算机技术领域。方法包括:获取待续传数据的数据属性信息和断点续传装置对应的网络属性信息,待续传数据是不完整的数据;依据待续传数据的数据属性信息,确定对待续传数据的处理方式;在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。通过依据获取到的待续传数据的数据属性信息,确定对待续传数据的处理方式,能够确定如何处理待续传数据,避免待续传数据的丢失,保证待续传数据的安全性;使用处理方式对待续传数据进行处理,可以针对待续传数据做特定的处理,提升数据传输的成功比例,提升用户的使用体验。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种断点续传方法、装置和电子设备。
背景技术
随着计算机网络的高速发展,多种不同的应用程序不断更新,以适应用户的多种需求。其中,应用程序可以包括资源类应用、显示类应用、娱乐类应用、学习类应用等。
其中,资源类应用多用于数据资源的传输,但是现有的数据传输方式仅能在通信信号好的情况下,一次性传输所需的数据资源。当用户终端当前所处的位置对应的通信质量较差时,易导致数据资源的传输失败;当用户终端移动到通信质量较好的位置上时,无法继续对传输失败的部分数据资源进行处理,仅能再重新传输该数据资源,浪费了用户终端的数据流量,降低了用户的使用体验。
发明内容
为此,本申请提供一种断点续传方法、装置和电子设备,解决如何提升数据传输的成功率并减少数据流量的浪费的问题。
为了实现上述目的,本申请第一方面提供一种断点续传方法,应用于断点续传装置,方法包括:
获取待续传数据的数据属性信息和断点续传装置对应的网络属性信息,待续传数据是不完整的数据;
依据待续传数据的数据属性信息,确定对待续传数据的处理方式;
在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
在一些具体实现中,待续传数据的数据属性信息,包括:待续传数据的文件名称和待续传数据的数据长度;
依据待续传数据的数据属性信息,确定对待续传数据的处理方式,包括:
依据待续传数据对应的文件名称,查找预设存储地址;
在确定预设存储地址对应的存储内容中包括待续传数据对应的文件名称的情况下,对比待续传数据的数据长度和预设数据长度,获得数据长度对比结果;
依据数据长度对比结果,确定对待续传数据的处理方式。
在一些具体实现中,待续传数据对应的属性信息,还包括:待续传数据对应的处理状态;
依据数据长度对比结果,确定对待续传数据的处理方式,包括:
在确定数据长度对比结果为待续传数据的数据长度小于预设数据长度的情况下,依据待续传数据对应的处理状态,确定对待续传数据的处理方式。
在一些具体实现中,待续传数据对应的处理状态,包括:执行状态、暂停状态、下载完成状态和删除状态中的任意一种。
在一些具体实现中,使用处理方式对待续传数据进行处理,包括:
在确定待续传数据对应的处理状态为暂停状态的情况下,依据获取到的更新指令,继续将待续传数据下载至目标存储地址,或,继续将待续传数据上传至目标存储地址。
在一些具体实现中,在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理之前,还包括:
在确定满足第一暂停条件或第二暂停条件的情况下,确定对待续传数据的处理方式为暂停传输待续传数据;
其中,第一暂停条件为待续传数据对应的处理状态为执行状态且获得暂停指令;第二暂停条件为待续传数据对应的处理状态为执行状态,且,断点续传装置对应的网络属性信息不满足预设网络条件。
在一些具体实现中,确定对待续传数据的处理方式为暂停传输待续传数据之后,还包括:
记录如下信息中的至少一种:
待续传数据的预设存储地址、目标存储地址、待续传数据的数据长度、预设数据长度和待续传数据对应的文件名称。
在一些具体实现中,采用并行处理的方式对多个待续传数据进行处理。
为了实现上述目的,本申请第二方面提供一种断点续传装置,其包括:获取模块,被配置为获取待续传数据的数据属性信息和断点续传装置对应的网络属性信息,待续传数据是不完整的数据;处理方式确定模块,被配置为依据待续传数据的数据属性信息,确定对待续传数据的处理方式;处理模块,被配置为在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
为了实现上述目的,本申请第三方面提供一种电子设备,包括:一个或多个处理器;存储器,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例中的任意一种断点续传方法。
本申请中的断点续传方法、装置和电子设备,通过依据获取到的待续传数据的数据属性信息,确定对待续传数据的处理方式,其中的待续传数据是不完整的数据,能够确定如何处理待续传数据,避免待续传数据的丢失,保证待续传数据的安全性;在确定获取到的断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用待续传数据的处理方式对待续传数据进行处理,可以针对待续传数据做特定的处理,提升数据传输的成功比例,避免浪费断点续传装置对应的数据流量,提升用户的使用体验。
附图说明
附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其它特征和优点对本领域技术人员将变得更加显而易见,在附图中:
图1示出本申请一实施例提供的一种断点续传方法的流程示意图。
图2示出本申请又一实施例提供的一种断点续传方法的流程示意图。
图3示出本申请实施例提供的一种断点续传装置的方框组成示意图。
图4示出本申请实施例提供的一种断点续传系统的组成方框示意图。
图5示出本申请实施例提供的一种断点续传系统的工作方法的流程示意图。
图6示出本申请实施例提供的数据传输效果图。
图7示出能够实现根据本申请实施例的断点续传方法和装置的计算设备的示例性硬件架构的结构图。
具体实施方式
以下结合附图对本申请的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本申请,并不用于限制本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1示出本申请一实施例提供的一种断点续传方法的流程示意图。该方法可应用于断点续传装置。如图1所示,包括:
步骤S101,获取待续传数据的数据属性信息和断点续传装置对应的网络属性信息。
其中,待续传数据是不完整的数据。例如,从服务器中下载的部分文件,或需要上传至服务器的文件等。
步骤S102,依据待续传数据的数据属性信息,确定对待续传数据的处理方式。
其中,待续传数据的数据属性信息能够表征待续传数据的相关信息,通过对待续传数据的不同的处理方式,使待续传数据不被浪费,提升对待续传数据的处理效率。
步骤S103,在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
其中,网络属性信息包括:断点续传设备的实时通信质量,和/或,通信网络的覆盖范围;预设网络条件包括:预设通信质量阈值
例如,在确定断点续传设备对应的通信质量满足预设通信质量阈值,和/或,断点续传设备所处位置在通信网络的覆盖范围内的情况下,使用处理方式对待续传数据进行处理。
在确定断点续传装置对应的通信网络的实时通信质量大于或等于预设通信质量阈值,和/或,断点续传设备所处位置在通信网络的覆盖范围内的情况下,使用处理方式对待续传数据进行处理(例如,继续对待续传数据进行传输),能够减少对已经传输至服务器的数据的重复处理,提升数据的处理效率。
在本实施例中,通过依据获取到的待续传数据的数据属性信息,确定对待续传数据的处理方式,其中的待续传数据是不完整的数据,能够确定如何处理待续传数据,避免待续传数据的丢失,保证待续传数据的安全性;在确定获取到的断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用待续传数据的处理方式对待续传数据进行处理,可以针对待续传数据做特定的处理,提升数据传输的成功比例,避免浪费断点续传装置对应的数据流量,提升用户的使用体验。
图2示出本申请又一实施例提供的一种断点续传方法的流程示意图。该方法可应用于断点续传装置。本实施例与上一实施例的区别在于:待续传数据的数据属性信息,包括:待续传数据的文件名称和待续传数据的数据长度,通过不同维度的数据属性信息,对待续传数据进行不同的处理,提升对待续传数据的处理效率。
如图2所示,包括但不限于如下步骤。
步骤S201,获取待续传数据的数据属性信息和断点续传装置对应的网络属性信息。
其中,待续传数据的数据属性信息,包括:待续传数据的文件名称和待续传数据的数据长度。
步骤S202,依据待续传数据对应的文件名称,查找预设存储地址。
例如,预设存储地址中存储有多个待确认文件,通过将待续传数据对应的文件名称分别与多个待确认文件的名称进行对比,确定预设存储地址对应的存储内容中是否存储有与待续传数据对应的文件名称,若存在,则需要执行步骤S203;否则,若不存在,则说明该待续传数据对应的文件需要重新进行处理,例如,重新传输该待续传数据对应的文件。
步骤S203,在确定预设存储地址对应的存储内容中包括待续传数据对应的文件名称的情况下,对比待续传数据的数据长度和预设数据长度,获得数据长度对比结果。
其中,通过对比待续传数据的数据长度和预设数据长度,明确待续传数据已经被处理的比例,以方便后续对待续传数据进行处理。
例如,数据长度对比结果可以包括:待续传数据的数据长度小于预设数据长度,或,待续传数据的数据长度等于预设数据长度,或,待续传数据的数据长度大于预设数据长度。不同的数据长度对比结果对应不同的处理方式。
步骤S204,依据数据长度对比结果,确定对待续传数据的处理方式。
需要说明的是,预设数据长度是与待续传数据对应的文件名称相同的文件的实际长度。
在确定数据长度对比结果为待续传数据的数据长度小于预设数据长度(例如,待续传数据的数据长度和预设数据长度比值为1/2,或1/3等)的情况下,则说明已经传输了部分数据,还需要继续对待续传数据继续进行处理;
在确定数据长度对比结果为待续传数据的数据长度等于预设数据长度的情况下,确定不需要继续对待续传数据进行处理,结束流程。
在确定数据长度对比结果为待续传数据的数据长度大于预设数据长度的情况下,说明存在同名的文件,但该待续传数据不是与预设数据长度对应的文件相匹配的数据,结束流程,重新对预设数据长度对应的文件进行传输,以保证数据传输的准确性。
在一些具体实现中,待续传数据对应的属性信息,还包括:待续传数据对应的处理状态;步骤S204中的依据数据长度对比结果,确定对待续传数据的处理方式,包括:
在确定数据长度对比结果为待续传数据的数据长度小于预设数据长度的情况下,依据待续传数据对应的处理状态,确定对待续传数据的处理方式。
例如,对待续传数据的处理方式可以包括:继续传输待续传数据,或,停止传输待续传数据。
其中,待续传数据对应的处理状态,包括:执行状态、暂停状态、下载完成状态和删除状态中的任意一种。
通过不同的处理状态,表征待续传数据当前所处的数据处理阶段,能够使待续传数据得到更准确的处理方式,提升对待续传数据的处理准确性。
步骤S205,在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
需要说明的是,本实施例中的步骤S205与上一实施例中的步骤S103相同,在此不再赘述。
在一些具体实现中,采用并行处理的方式对多个待续传数据进行处理。
例如,可同时对多个待续传数据进行传输,使多个待续传数据得到快速处理,提升数据的处理效率。
在本实施例中,通过对待续传数据的文件名称和待续传数据的数据长度进行判断,以使待续传数据可以获得不同的处理方式,满足不同的待续传数据对应的不同需求,加快对待续传数据的处理速度;并在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理,提升对待续传数据的处理效率。
例如,根据文件的下载地址,按照预设定义规则生成文件名称,并在获得待续传数据对应的文件名称时,判断本地存储地址中存储的文件名称是否与待续传数据对应的文件名称相同,若相同,则说明该下载地址中保存有待续传数据,并进一步对待续传数据的数据长度进行确认。
例如,待续传数据的数据长度与从资源服务器上获取的文件的数据长度相同时,则表征该待续传数据已经被处理完毕,无需再进行续传,若用户需要继续对该待续传数据进行处理,则重新下载该待续传数据,并覆盖本地存储地址中存储的与该待续传数据对应的文件名称相同的文件。
如果待续传数据的数据长度小于从资源服务器上获取的文件的数据长度,则继续对待续传数据进行下载。例如,获取本地存储地址中存储的、与该待续传数据对应的文件名称的数据长度,并从此节点处继续下载待续传数据。
如果本地存储地址中不存在与待续传数据对应的文件名称,则从资源服务器中重新下载待续传数据(例如,从0字节开始下载待续传数据)。在一些具体实现中,在第一时间内,本地存储地址中存在与待续传数据对应的文件名称,但在第二时间内,本地存储地址中的该文件被删除,则还会从资源服务器中重新下载该待续传数据。
本申请实施例提供了另一种可能的实现方式,其中,步骤S103或步骤S205中的使用处理方式对待续传数据进行处理,可以采用如下方式实现:
在确定待续传数据对应的处理状态为暂停状态的情况下,依据获取到的更新指令,继续将待续传数据下载至目标存储地址,或,继续将待续传数据上传至目标存储地址。
需要说明的是,待续传数据对应的处理状态为暂停状态时,说明该待续传数据已经停止了传输,当获得更新指令时,可以通过对更新治疗的解析,确定续传信息,通过该续传信息能够表征需要继续对待续传数据进行处理(例如,继续将待续传数据下载至目标存储地址,或,继续将待续传数据上传至目标存储地址),能够避免重复传输待续传数据,减少在数据传输的过程中所使用的数据流量,提升数据流量的使用效率。
本申请实施例提供了再一种可能的实现方式,其中,在执行步骤S103或步骤S205中的在确定断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理之前,还包括:在确定满足第一暂停条件或第二暂停条件的情况下,确定对待续传数据的处理方式为暂停传输待续传数据。
其中,第一暂停条件为待续传数据对应的处理状态为执行状态且获得暂停指令;第二暂停条件为待续传数据对应的处理状态为执行状态,且,断点续传装置对应的网络属性信息不满足预设网络条件。
例如,若确定待续传数据对应的处理状态为执行状态的情况下,获取到用户反馈的暂停下载指令,则确定满足第一暂停条件,此时需要暂停传输待续传数据,以满足用户的需要。
又例如,若确定出现通信质量小于预设通信质量阈值,或,通信网络中断,则确定满足第二暂停条件,此时也需要暂停传输待续传数据,以避免因通信质量差而导致的辐射问题(因通信质量降低,服务器所发射的发送功率会增大,并且接收端设备对应的接收功率也会增大,以使待续传数据可以继续进行传输,此过程中的发送功率值或接收功率值会提升对用户的辐射程度,不利于用户的健康),降低对用户的损害。
本申请实施例提供了又一种可能的实现方式,确定对待续传数据的处理方式为暂停传输待续传数据之后,还包括:
记录如下信息中的至少一种:待续传数据的预设存储地址、目标存储地址、待续传数据的数据长度、预设数据长度和待续传数据对应的文件名称。
其中,通过记录待续传数据的预设存储地址、目标存储地址、待续传数据的数据长度、预设数据长度和待续传数据对应的文件名称中的至少一种,能够使待续传数据在后续的处理过程中获得更准确的处理方式,提升对待续传数据的处理准确性。
图3示出本申请实施例提供的一种断点续传装置的方框组成示意图。该装置的具体实施可参见上述实施例的相关描述,重复之处不再赘述。值得说明的是,本实施方式中的装置的具体实施不局限于以上实施例,其他未说明的实施例也在本装置的保护范围之内。
如图3所示,该断点续传装置300可以包括:获取模块301,被配置为获取待续传数据的数据属性信息和断点续传装置300对应的网络属性信息,待续传数据是不完整的数据;处理方式确定模块302,被配置为依据待续传数据的数据属性信息,确定对待续传数据的处理方式;处理模块303,被配置为在确定断点续传装置300对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
在一些具体实现中,待续传数据的数据属性信息,包括:待续传数据的文件名称和待续传数据的数据长度;处理方式确定模块302,包括:查找子模块,被配置为依据待续传数据对应的文件名称,查找预设存储地址;对比子模块,被配置为在确定预设存储地址对应的存储内容中包括待续传数据对应的文件名称的情况下,对比待续传数据的数据长度和预设数据长度,获得数据长度对比结果;确定子模块,被配置为依据数据长度对比结果,确定对待续传数据的处理方式。
在本实施方式中,通过处理方式确定模块依据获取到的待续传数据的数据属性信息,确定对待续传数据的处理方式,其中的待续传数据是不完整的数据,能够确定如何处理待续传数据,避免待续传数据的丢失,保证待续传数据的安全性;使用处理模块在确定获取到的断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用待续传数据的处理方式对待续传数据进行处理,可以针对待续传数据做特定的处理,提升数据传输的成功比例,避免浪费断点续传装置对应的数据流量,提升用户的使用体验。
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本申请的创新部分,本实施方式中并没有将与解决本申请所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
图4示出本申请实施例提供的一种断点续传系统的组成方框示意图。如图4所示,该断点续传系统包括如下设备:
断点续传终端410和应用服务器420。其中,断点续传终端410包括断点续传装置411。
断点续传终端410,用于获取待续传数据的数据属性信息和断点续传装置411对应的网络属性信息,待续传数据是不完整的数据;依据待续传数据的数据属性信息,确定对待续传数据的处理方式;在确定断点续传装置411对应的网络属性信息满足预设网络条件的情况下,使用处理方式对待续传数据进行处理。
应用服务器420,用于将预设数据传输给断点续传终端410。其中的预设数据占用的存储空间大于待续传数据的存储空间。
图5示出本申请实施例提供的一种断点续传系统的工作方法的流程示意图。如图5所示,断点续传系统的工作方法包括但不限于如下步骤。
步骤S501,断点续传终端410对断点续传装置411进行初始化设置。
例如,创建一个下载文件的回调函数(DownFileCallback),该回调函数用于对断点续传装置411从应用服务器420下载文件的过程进行监控,并向断点续传终端410反馈文件的下载状态和下载进度信息。
其中,文件的下载状态包括:执行状态、暂停状态、下载完成状态和删除状态中的任意一种。
步骤S502,断点续传装置411计算出本地已下载文件的长度和文件的真实总长度,以及通过监听器监听回调函数,以获得反馈状态。
例如,可将该反馈状态(即下载的实时进度信息等)实时的展示到断点续传终端410的显示界面中。
例如,创建class文件中的下载响应实体(DownloadResponseBody),并对下载响应实体对应的输入参数(例如,响应实体类别、回调函数名称等)进行初始化。
其中,DownloadResponseBody继承自预设类别库(例如,OKHttp库)的响应实体(ResponseBody)类,通过ResponseBody获取媒体类型(MediaType)并返回;再通过ResponseBody获取文件长度并返回;并通过OKHttp库将ResponseBody.source()转换成数据缓存源信息(BufferedSource)并返回。
其中,OKHttp库是一个处理网络请求的开源项目,是操作系统中的轻量级框架。
步骤S503,断点续传装置411创建拦截数据的处理函数。
例如,创建class文件下载拦截器(Downloadinterceptor),该下载拦截器用于拦截数据。并对下载拦截器的输入参数进行初始化。
例如,生成拦截函数(例如,intercept()),该拦截函数用于拦截获取到的数据,并将拦截到的数据进行封装,获得封装后的数据;然后将封装后的数据作为入参,输入到DownloadResponseBody中,例如,DownloadResponseBody所需要的参数可以包括:ResponseBody,DownFileCallback,下载指针地址(downUrl)等。
步骤S504,断点续传装置411创建网络服务接口文件,定义下载方法的参数及参数类型。
例如,网络服务(HttpService)接口文件可以通过Retrofit库实现,主要用于定义下载方法的参数及参数类型,该类中start参数是为下载的起始值,url为下载地址。
其中,Retrofit库是一个基于网络应用程序的设计风格和开发方式(Representational State Transfer,RESTful)的互联网络请求框架的封装库,并且,在网络请求中封装了请求参数、数据头信息(Header)、下载地址(Url)和返回结果信息等,该网络请求是由OkHttp库来完成的。
步骤S505,断点续传装置411创建下载管理类。
其中,下载管理类(DownloadManager)用于管理下载的相关操作(例如,下载操作、暂停操作等)。
步骤S506,断点续传装置411在下载管理类中新增用于承载下载业务的函数。
其中,下载管理类用于对不同的函数进行初始化,并创建集合submap,该集合submap用于装载观察函数的信息。例如,可根据url注册一个观察函数(ProgressDownSubscriber),并将该观察函数添加到集合submap中。
例如,使用观察函数对文件下载过程进行观察的操作过程包括:1)将下载地址url经过map转换成下载信息(DownloadInfo)实体类,该DownloadInfo实体类用于记录每一条下载文件的下载信息。例如,下载信息可以包括:下载地址、文件总大小、当前下载进度、文件名称和文件保存的本地存储路径中的至少一种。
然后,调用HttpService中定义的下载方法,将函数DownloadInfo中的当前下载进度和下载地址作为download方法的输入参数,用于进行联网下载文件的操作;再将获取到的数据流缓存到本地存储路径中。
需要说明的是,观察函数(ProgressDownSubscriber)在获知文件下载成功(例如,采用函数onNext确定是否下载成功)的情况下,需要将观察函数(ProgressDownSubscriber)从集合submap中移除,已表示该文件的下载已完成。
在确定文件下载失败(例如,采用函数onError确定是否下载成功)的情况下,同样需要将观察函数(ProgressDownSubscriber)从集合submap中移除。
在执行文件下载之前,还需要判断下载地址url是否为空,如果下载地址url为空,则不执行上述下载方法。并且,还需要判断submap集合中是否包括下载地址url对应的观察函数,如果存在观察函数,则表明有相同的下载任务正在执行,本次下载暂不执行,以避免资源浪费。
步骤S507,断点续传装置411在下载管理类中确定是否需要暂停下载业务。
例如,可通过函数stop()来确定是否暂停下载业务。其中,需要先判断下载地址url是否为空,若下载地址url为空,则结束流程;否则,判断submap集合中是否包括下载地址url对应的观察函数,若不包括,则表明没有此下载任务,或该下载任务已经下载结束;若包括,使用观察函数通过取消订阅的方式来实现下载任务的停止。
步骤S508,断点续传终端410通过断点续传装置411中的下载管理器将应用服务器420的下载地址、以及对应的下载进度回调等参数输入到回调函数中,通过回调的方式,实现断点续传终端410从应用服务器420中下载文件或数据,并将实时的下载进度显示到断点续传终端410的显示界面中。
例如,通过函数onSuccess来表征下载成功,通过函数onFail来表征下载失败,通过函数onProgress表示实时下载的进度。
图6示出本申请实施例提供的数据传输效果图。如图6所示,下载界面600中显示了多个下载文件的下载进度(例如,下载文件1的下载进度,下载文件2的下载进度,以及下载文件3的下载进度等)。
其中,三个下载文件的下载进度由高到低依次是:下载文件1、下载文件2、下载文件3。
需要说明的是,每个不同的下载文件都对应有“取消或暂停”选项,以方便对每个下载文件进行实时控制。例如,下载文件1对应“取消或暂停1”按钮;下载文件2对应“取消或暂停2”按钮;下载文件3对应“取消或暂停3”按钮。
以上对于下载界面中的下载文件的数量仅是举例说明,可以根据实际需要对下载界面进行具体的设定,其他未说明的下载界面也在本申请的保护范围内,在此不再赘述。
其中,断点续传装置411通过对不同函数进行封装处理,并对外提供调用接口,使其他终端也可共享此断点续传装置411。使用方法简单,操作方便。
在本实施例中,通过多任务并发下载,可一次性并行的进行多条数据资源的下载,能够提升数据资源的下载效率。并且,在遇到网络故障或者因人为中断下载进度(例如,操作暂停按钮来中断下载进程等)而导致的下载失败的情况时,可从中断的位置,继续对数据资源进行下载,而非对该数据资源进行重新下载,能够提升数据传输的成功比例,避免浪费数据流量;并且,在数据下载过程中,可通过进度条查看下载的具体进度,提升用户的使用体验。
本申请实施例提供了一种电子设备。图7示出能够实现根据本申请实施例的断点续传方法和装置的计算设备的示例性硬件架构的结构图。
如图7所示,计算设备700包括输入设备701、输入接口702、中央处理器703、存储器704、输出接口705、以及输出设备706。其中,输入接口702、中央处理器703、存储器704、以及输出接口705通过总线707相互连接,输入设备701和输出设备706分别通过输入接口702和输出接口705与总线707连接,进而与计算设备700的其他组件连接。
具体地,输入设备701接收来自外部的输入信息,并通过输入接口702将输入信息传送到中央处理器703;中央处理器703基于存储器704中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器704中,然后通过输出接口705将输出信息传送到输出设备706;输出设备706将输出信息输出到计算设备700的外部供用户使用。
在一个实施例中,图7所示的计算设备可以被实现为一种电子设备,该电子设备可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的断点续传方法。
在一个实施例中,图7所示的计算设备可以被实现为一种断点续传系统,该断点续传系统可以包括:存储器,被配置为存储程序;处理器,被配置为运行存储器中存储的程序,以执行上述实施例描述的断点续传方法。
以上所述,仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的数据处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和系统(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
可以理解的是,以上实施方式仅仅是为了说明本申请的原理而采用的示例性实施方式,然而本申请并不局限于此。对于本领域内的普通技术人员而言,在不脱离本申请的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本申请的保护范围。
Claims (10)
1.一种断点续传方法,其特征在于,应用于断点续传装置,所述方法包括:
获取待续传数据的数据属性信息和所述断点续传装置对应的网络属性信息,所述待续传数据是不完整的数据;
依据所述待续传数据的数据属性信息,确定对所述待续传数据的处理方式;
在确定所述断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用所述处理方式对所述待续传数据进行处理。
2.根据权利要求1所述的方法,其特征在于,所述待续传数据的数据属性信息,包括:所述待续传数据的文件名称和所述待续传数据的数据长度;
所述依据所述待续传数据的数据属性信息,确定对所述待续传数据的处理方式,包括:
依据所述待续传数据对应的文件名称,查找预设存储地址;
在确定所述预设存储地址对应的存储内容中包括所述待续传数据对应的文件名称的情况下,对比所述待续传数据的数据长度和所述预设数据长度,获得数据长度对比结果;
依据所述数据长度对比结果,确定对所述待续传数据的处理方式。
3.根据权利要求2所述的方法,其特征在于,所述待续传数据对应的属性信息,还包括:所述待续传数据对应的处理状态;
所述依据所述数据长度对比结果,确定对所述待续传数据的处理方式,包括:
在确定所述数据长度对比结果为所述待续传数据的数据长度小于所述预设数据长度的情况下,依据所述待续传数据对应的处理状态,确定对所述待续传数据的处理方式。
4.根据权利要求3所述的方法,其特征在于,所述待续传数据对应的处理状态,包括:执行状态、暂停状态、下载完成状态和删除状态中的任意一种。
5.根据权利要求4所述的方法,其特征在于,所述使用所述处理方式对所述待续传数据进行处理,包括:
在确定所述待续传数据对应的处理状态为所述暂停状态的情况下,依据获取到的更新指令,继续将所述待续传数据下载至目标存储地址,或,继续将所述待续传数据上传至所述目标存储地址。
6.根据权利要求4所述的方法,其特征在于,所述在确定所述断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用所述处理方式对所述待续传数据进行处理之前,还包括:
在确定满足第一暂停条件或第二暂停条件的情况下,确定对所述待续传数据的处理方式为暂停传输所述待续传数据;
其中,所述第一暂停条件为所述待续传数据对应的处理状态为所述执行状态且获得暂停指令;所述第二暂停条件为所述待续传数据对应的处理状态为所述执行状态,且,所述断点续传装置对应的网络属性信息不满足所述预设网络条件。
7.根据权利要求6所述的方法,其特征在于,所述确定对所述待续传数据的处理方式为暂停传输所述待续传数据之后,还包括:
记录如下信息中的至少一种:
所述待续传数据的预设存储地址、目标存储地址、所述待续传数据的数据长度、预设数据长度和所述待续传数据对应的文件名称。
8.根据权利要求1至7中任一项所述的方法,其特征在于,采用并行处理的方式对多个所述待续传数据进行处理。
9.一种断点续传装置,其包括:
获取模块,被配置为获取待续传数据的数据属性信息和所述断点续传装置对应的网络属性信息,所述待续传数据是不完整的数据;
处理方式确定模块,被配置为依据所述待续传数据的数据属性信息,确定对所述待续传数据的处理方式;
处理模块,被配置为在确定所述断点续传装置对应的网络属性信息满足预设网络条件的情况下,使用所述处理方式对所述待续传数据进行处理。
10.一种电子设备,包括:
一个或多个处理器;
存储器,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一项所述的断点续传方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210283469.5A CN114666322A (zh) | 2022-03-22 | 2022-03-22 | 断点续传方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210283469.5A CN114666322A (zh) | 2022-03-22 | 2022-03-22 | 断点续传方法、装置和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114666322A true CN114666322A (zh) | 2022-06-24 |
Family
ID=82030622
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210283469.5A Pending CN114666322A (zh) | 2022-03-22 | 2022-03-22 | 断点续传方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114666322A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115623016A (zh) * | 2022-09-20 | 2023-01-17 | 浪潮云信息技术股份公司 | 一种基于云存储技术的备份断点续传实现方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054650A1 (en) * | 2002-06-20 | 2004-03-18 | Chang-Bum Chun | File downloading apparatus and method for mobile communication system |
CN101291195A (zh) * | 2008-05-23 | 2008-10-22 | 中兴通讯股份有限公司 | 实现断点续传的文件下载的方法、系统及终端 |
US20120246624A1 (en) * | 2011-03-22 | 2012-09-27 | Microsoft Corporation | Debugger-set identifying breakpoints after coroutine yield points |
CN104980399A (zh) * | 2014-04-08 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种文件传输方法、客户端及代理服务器 |
CN106817391A (zh) * | 2015-12-01 | 2017-06-09 | 百度在线网络技术(北京)有限公司 | 文件断点续传方法和装置 |
CN111107123A (zh) * | 2018-10-29 | 2020-05-05 | 杭州海康威视数字技术股份有限公司 | 一种断网续传方法及装置 |
CN112751899A (zh) * | 2019-10-31 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 文件下载方法、装置、存储介质及电子设备 |
CN112968815A (zh) * | 2021-03-11 | 2021-06-15 | 福州大学 | 一种断网续传的实现方法 |
-
2022
- 2022-03-22 CN CN202210283469.5A patent/CN114666322A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040054650A1 (en) * | 2002-06-20 | 2004-03-18 | Chang-Bum Chun | File downloading apparatus and method for mobile communication system |
CN101291195A (zh) * | 2008-05-23 | 2008-10-22 | 中兴通讯股份有限公司 | 实现断点续传的文件下载的方法、系统及终端 |
US20120246624A1 (en) * | 2011-03-22 | 2012-09-27 | Microsoft Corporation | Debugger-set identifying breakpoints after coroutine yield points |
CN104980399A (zh) * | 2014-04-08 | 2015-10-14 | 腾讯科技(深圳)有限公司 | 一种文件传输方法、客户端及代理服务器 |
CN106817391A (zh) * | 2015-12-01 | 2017-06-09 | 百度在线网络技术(北京)有限公司 | 文件断点续传方法和装置 |
CN111107123A (zh) * | 2018-10-29 | 2020-05-05 | 杭州海康威视数字技术股份有限公司 | 一种断网续传方法及装置 |
CN112751899A (zh) * | 2019-10-31 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 文件下载方法、装置、存储介质及电子设备 |
CN112968815A (zh) * | 2021-03-11 | 2021-06-15 | 福州大学 | 一种断网续传的实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115623016A (zh) * | 2022-09-20 | 2023-01-17 | 浪潮云信息技术股份公司 | 一种基于云存储技术的备份断点续传实现方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9973563B2 (en) | Implementing a java method | |
CN111045833B (zh) | 接口调用的方法和装置 | |
US20150319221A1 (en) | Tracing business transactions based on application frameworks | |
US11223686B2 (en) | Transport channel via web socket for OData | |
CN108600377B (zh) | 一种文件下载的暂停方法、装置、终端和存储介质 | |
CN113765818A (zh) | 分布式限流方法、装置、设备、存储介质和系统 | |
CN113760536A (zh) | 数据缓存方法、装置、电子设备和计算机可读介质 | |
CN113595927A (zh) | 一种旁路模式下镜像流量的处理方法和装置 | |
CN109725887B (zh) | 基于消息研发框架的数据交互方法、装置及终端设备 | |
CN114666322A (zh) | 断点续传方法、装置和电子设备 | |
CN113536168B (zh) | 组件处理方法及设备 | |
CN110881224B (zh) | 一种网络长连接方法、装置、设备及存储介质 | |
CN110928706A (zh) | 小程序交互方法、装置、电子设备及存储介质 | |
CN109683992B (zh) | 用于管理对象的方法和装置 | |
US11176223B1 (en) | Page rendering by an intermediary system that uses a truncated library | |
CN111294377A (zh) | 一种依赖关系的网络请求发送方法、终端装置及存储介质 | |
CN111831503B (zh) | 一种基于监控代理的监控方法和监控代理装置 | |
CN112187869A (zh) | Iot设备的远程调试系统、方法、电子设备及存储介质 | |
CN110275701B (zh) | 数据处理方法、装置、介质和计算设备 | |
CN110245027B (zh) | 一种进程间通信的方法和设备 | |
CN113360815A (zh) | 一种请求重试方法和装置 | |
US20230093004A1 (en) | System and method for asynchronous backend processing of expensive command line interface commands | |
CN114327404A (zh) | 一种文件处理方法、装置、电子设备及计算机可读介质 | |
CN114115941A (zh) | 资源发送方法、页面渲染方法、装置、电子设备和介质 | |
CN115174588B (zh) | 带宽控制方法、装置、设备、存储介质和程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220624 |