CN110502256A - 一种软件升级方法、终端及存储介质 - Google Patents

一种软件升级方法、终端及存储介质 Download PDF

Info

Publication number
CN110502256A
CN110502256A CN201810482041.7A CN201810482041A CN110502256A CN 110502256 A CN110502256 A CN 110502256A CN 201810482041 A CN201810482041 A CN 201810482041A CN 110502256 A CN110502256 A CN 110502256A
Authority
CN
China
Prior art keywords
upgrade package
terminal
segment
upgrading
package segment
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
Application number
CN201810482041.7A
Other languages
English (en)
Inventor
杨应彬
曾成鑫
范志荣
舒帆
周宗旭
杜放
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Foshan Shunde Midea Electrical Heating Appliances Manufacturing Co Ltd
Original Assignee
Foshan Shunde Midea Electrical Heating Appliances Manufacturing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Foshan Shunde Midea Electrical Heating Appliances Manufacturing Co Ltd filed Critical Foshan Shunde Midea Electrical Heating Appliances Manufacturing Co Ltd
Priority to CN201810482041.7A priority Critical patent/CN110502256A/zh
Publication of CN110502256A publication Critical patent/CN110502256A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种软件升级方法、终端及存储介质,其中,所述方法包括:获取软件升级包并将所述软件升级包切分成N个升级包片段;其中,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N;获取终端发送的所述终端的第一存储空间信息;如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端;接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成。

Description

一种软件升级方法、终端及存储介质
技术领域
本发明涉及本发明涉及通信技术领域,尤其涉及一种软件升级方法、终端及存储介质。
背景技术
终端设备通过软件升级能够解决当前软件可能存在的问题,或者添加扩展新的功能,使用户获取到最新的用户体验。现有技术中,终端设备的软件升级多采用FOTA(Firmware Over The Air,无线固件升级)的升级方式,即通过网络服务器主动或被动发送升级包到终端设备,再由终端设备利用升级包进行升级。然而,由于终端设备的存储芯片一般会划分为若干个分区,每个分区的作用各不相同,而通常FOTA的升级方式都是将整个升级包下载在某一个固定的分区,于是当该分区空间容纳不下整个升级包时,整个升级过程就会终止,导致用户没有办法获取最新的体验。
发明内容
有鉴于此,本发明实施例提供一种软件升级方法、终端及存储介质,通过将软件升级包切分为优先级从高到低递减的升级包片段,并按照优先级顺序对所述升级包片段进行升级,从而即便在存储空间不足情况下,终端仍能获取软件基础或核心功能的升级。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种软件升级方法,所述方法包括:
获取软件升级包并将所述软件升级包切分成N个升级包片段;其中,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N;
获取终端发送的所述终端的第一存储空间信息;
如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端;
接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成。
本发明实施例提供一种软件升级方法,所述方法包括:
获取软件升级包的升级请求;
响应所述升级请求,并计算终端的第一存储空间信息;其中,所述第一存储空间信息是所述终端的存储空间的信息;
将所述第一存储空间信息发送给服务器;
接收所述服务器发送的第M升级包片段;其中,第M升级包片段为组成所述软件升级包的N个升级包片段中的片段,M、N为大于1的正整数,且M小于等于N;
将所述第M升级包片段进行升级,并将升级完成消息发送给所述服务器。
本发明实施例提供一种终端,所述终端至少包括:处理器和配置为存储可执行指令的存储介质,其中:
处理器配置为执行存储的可执行指令,所述可执行指令配置为执行上述的软件升级方法;或者,所述可执行指令配置为执行上述的软件升级方法。
本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行上述的软件升级方法;或者,所述可执行指令配置为执行上述的软件升级方法。
本发明实施例提供了一种软件升级方法、终端及存储介质,其中,获取软件升级包并将所述软件升级包切分成N个升级包片段;其中,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N;获取终端发送的所述终端的第一存储空间信息;如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端;接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成;如此,对软件进行升级时,即便存储空间不足也能够将包含软件基础或核心功能软件包片段进行升级。
附图说明
在附图(其不一定是按比例绘制的)中,相似的附图标记可在不同的视图中描述相似的部件。具有不同字母后缀的相似附图标记可表示相似部件的不同示例。附图以示例而非限制的方式大体示出了本文中所讨论的各个实施例。
图1为本发明实施例软件升级方法的实现流程示意图;
图2为本发明实施例软件升级方法的交互示意图;
图3为本发明实施例终端侧的软件升级装置的结构示意图;
图4为本发明实施例服务器侧的软件升级装置的结构示意图;
图5为本发明实施例终端侧的软件升级方法的实现流程图;
图6为本发明实施例服务器侧的软件升级方法的实现流程图;
图7为本发明实施例终端的组成结构示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。
后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。
本发明实施例提供一种软件升级方法,图1为本发明实施例软件升级方法的实现流程示意图,如图1所示,该方法由服务器来执行,所述方法包括以下步骤:
步骤S101,获取软件升级包并将所述软件升级包切分成N个升级包片段。
这里,所述软件升级包可以是软件从低版本到高版本升级时,所需要的安装包,比如,手机上的某个应用程序从版本2.5.1000升级到版本2.6.1000时,所需要的安装包即为软件升级包。所述N个升级包片段可以是把软件升级包分为N份时,其中的一份即为一个片段。
所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N。在实现的过程中第一预设条件可以为预设列表中记录的实现软件升级包的功能,该功能可以是实现该软件的基础功能或核心功能,例如,即时通信软件的消息收发功能、录音软件的录音功能、电子支付软件的支付功能,一般来说,基础功能和核心功能可以预先设置。其中,所述第一预设条件可以是第M升级包片段对应的功能包含针对所述软件升级包预设的功能,当所述第M升级包片段所对应的功能包含所述软件升级包的预设的功能时,确定为所述第M升级包片段满足第一预设条件。比如,在社交软件的软件升级包中第一预设条件可以是预设的语音聊天功能,当将所述社交软件的软件升级包切分为N个升级包片段时,其中,如果第M升级包片段所对应的功能包含预设的语音聊天功能,确定第M升级包片段满足所述社交软件的软件升级包的第一预设条件。
步骤S102,获取终端发送的所述终端的第一存储空间信息。
这里,一般来说,终端可以是安装应用程序的电子设备。例如,所述终端可以是智能电饭煲、智能微波炉、冰箱、空调等家用电器、所述终端还可以手机、平板电脑等通信设备。一般家用电器的存储空间会比较小,因此在升级软件的时候,出现空间不足的情况的频率会高一些。所述第一存储空间信息可以是所述终端的当前可用存储空间,还可以是所述终端包含的总的存储空间以及被占用的存储空间的信息。比如,当终端是智能微波炉,待升级的软件是智能微波炉上的某一个应用程序时,服务器获取的第一存储空间信息可以是智能微波炉当前可用的存储空间0.04吉字节(G),还可以是智能微波炉中总的存储空间2G以及被占用的存储空间1.97G。
步骤S103,如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端。
这里,所述第M升级包片段的大小是所述第M升级包片段的所占用的存储空间的信息。所述如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,包括:
当第一存储空间信息是所述终端的当前可用存储空间的大小,所述第二预设条件可以是预设的字节数,所述预设的字节数可以小于等于终端的当前可用存储空间的大小,当所述第M升级包片段的大小不不超过所述预设的字节数,确定为所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件;比如,当终端的当前可用存储空间为0.03G,第二预设条件可以是0.03G,如果第M升级包片段的大小为0.008G,确定为所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,如此,当终端是智能电饭煲时,即便所述智能电饭煲的当前可用存储空间很小,不足以升级整个待升级的软件升级包,仍然可以只对满足第一预设条件的第M升级包片段进行升级,从而使智能电饭煲能够获取待升级的软件升级包中预设功能的升级。
如果所述第一存储空间信息是所述终端的总的存储空间大小和被占用的存储空间大小,所述第二预设条件可以是预设的字节数或者预设的差值。根据所述总的存储空间大小和被占用的存储空间大小获取总的存储空间大小和被占用的存储空间的差值,当所述差值满足所述第M升级包片段的大小时,确定为所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件。比如,当终端的总的存储空间大小为2G,被占用的存储空间大小为1.96G,第二预设条件可以是被占用的存储空间大小和总的存储空间大小的差值,即第二预设条件可以为0.04G,如果第M升级包片段的大小为0.01G,那么第M升级包片段的大小不超过第二预设条件,确定为所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件。
步骤S104,接收所述终端发送的升级完成消息。
这里,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成。
在本发明实施例中,通过将软件升级包切分为优先级从高到低递减的升级包片段,并按照优先级顺序对所述升级包片段进行升级,从而即便在存储空间不足情况下,终端仍能对包含软件基础或核心功能的升级包片段进行升级。
在其他实施例中,所述N个升级包片段中第S升级包片段对应的功能在第T升级包片段对应的功能的基础上实现;其中,S、T为大于1且不相等的正整数,且S、T均小于等于N;或者,
所述第M升级包片段的大小不超过终端的平均可用存储空间的大小;其中,所述平均可用存储空间是服务器对接收到的P个终端的可用存储空间的大小所取的平均值;P为大于1的正整数。
这里,第M升级包片段、第S升级包片段和第T升级包片段在其他实施例中,可以是第一升级包片段、第二升级包片段和第三升级包片段。即在其他实施例中,第一升级包片段是满足第一预设条件的升级包片段,即第一升级包片段对应的功能包含了软件升级包预设的功能;第二升级包片段对应的功能在第一升级包对应功能的基础上实现,第三升级包片段对应的功能在第二升级包片段对应供的基础上实现,以此类推,第N升级包片段的功能在第(N-1)升级包片段对应功能的基础上实现。也就是说,按照从小到大的顺序,即第一升级包片段到第N升级包片段,后一个升级包片段对应的功能在前一个升级包片段对应的功能的基础上实现的,即第N升级包片段的功能在第(N-1)升级包片段对应功能的基础上实现。
在本实施例中,将软件升级包切分为N个升级包片段后,还可以使任意一个升级包片段对应的功能包含软件升级包预设的功能,比如第M升级包片段对应的功能包含软件升级包预设的功能,即第M升级包片段满足第一预设条件。然后,仍然取除第M升级包片段之外的任意一个升级包片段对应的功能在第M升级包片段对应的功能的基础上实现,比如,第R升级包片段对应的功能在第M升级包片段对应的功能的基础上实现。以此类推,将N个升级包片段中任意一个升级包片段对应的功能在任意的另一个升级包片段对应的功能的基础上实现,比如,第S升级包片段对应的功能在第T升级包片段对应的功能的基础上实现。如此,当终端是智能微波炉时,如果待升级的软件是实现语音输入的软件,第一预设条件即所述软件的核心或基础功能为识别语音的功能,将所述软件升级包切分为N个升级包片段,假设其中第M升级包片段对应的功能包含识别语音的功能,即第M升级包片段满足第一预设条件。当对所述软件进行升级时,即便是在所述智能微波炉的当前可用存储空间不足的情况下,仍然能够对包含识别语音的功能第M升级包片段进行升级,即所述智能微波炉仍然能够获取核心功能的升级。
在其他实施例中,所述步骤S103,即“如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端”,可用通过以下步骤实现:
步骤S31,如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将第M升级包片段的标识发送到所述终端。
步骤S32,获取所述终端根据所述第M升级包片段的标识发送的第一下载请求,根据所述第一下载请求将所述第M升级包片段发送到所述终端。
在其他实施例中,在所述步骤S101,即获取软件升级包并将所述软件升级包切分成N个升级包片段之前,所述方法还包括:
如果所述终端的第一存储空间信息和所述软件升级包大小不满足第二预设条件,将所述软件升级包分成N个升级包片段。
这里,如果所述终端的第一存储空间信息和所述软件升级包大小满足第二预设条件,所述服务器直接将所述软件升级包发送给所述终端,并由终端完成升级。
在其他实施例中,在所述步骤S102,即获取终端发送的所述终端的第一存储空间信息之后,所述方法还包括:
如果所述终端的第一存储空间信息和所述第M升级包片段的大小不满足第二预设条件,将终止消息发送到所述终端;其中,所述终止消息用于使所述终端结束本次升级。
在其他实施例中,所述步骤S104,即接收所述终端发送的升级完成消息,可以通过以下步骤实现:
步骤S41,获取所述终端发送的所述终端的第二存储空间信息。
步骤S42,如果所述终端的第二存储空间信息和所述N个升级包片段中第R升级包片段的大小满足第三预设条件,将所述第R升级包片段发送到所述终端。
这里,所述第R升级包片段所对应的功能在第M升级包片段对应的功能的基础上实现;R为大于1的正整数,且R小于等于N。如果所述第二存储空间信息是所述终端的当前可用存储空间的大小,当所述第R升级包片段的大小不不超过所述当前可用存储空间的大小,确定为所述终端的第二存储空间信息和所述第R升级包片段的大小满足第三预设条件;如果所述第二存储空间信息是所述终端的总的存储空间大小和被占用的存储空间大小,根据所述总的存储空间大小和被占用的存储空间大小获取总的存储空间大小和被占用的存储空间的比值或差值,当所述比值或差值满足所述第R升级包片段的大小时,确定为所述终端的第二存储空间信息和所述第R升级包片段的大小满足第三预设条件。
步骤S43,接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第R升级包片段升级完成。
所述升级完成消息,在其他实施例中还可以是,服务器接收的终端发送的第二升级包片段升级完成消息,即所述升级完成消息还可以用于表明终端将第二升级包片段进行升级完成;其中,第二升级包片段对应的功能在第一升级包对应功能的基础上实现。所述第R升级包片段,在其他实施例中还可以是第二升级包片段。
在其他实施例中,在所述步骤S104,即接收所述终端发送的升级完成消息之后,所述方法还包括:服务器将所述第M升级包片段保存在升级完成列表中;其中,所述升级完成列表用于保存完成升级的升级包片段。
本发明实施例提供一种软件升级方法,图2为本发明实施例软件升级方法的交互示意图,如图2所示,所述方法包括以下步骤:
步骤S201,服务器获取软件升级包并将所述软件升级包切分成N个升级包片段。
这里,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N。
步骤S202,终端获取软件升级包的升级请求。
这里,所述软件升级请求可以是由用户发起的,比如,用户点击某个应用程序,弹出是否对此软件进行升级的对话框,如果用户选择“是”,终端即获取了此软件升级包的升级请求。
步骤S203,终端响应所述升级请求,并获取终端的第一存储空间信息。
这里,所述第一存储空间信息可以是所述终端的当前可用存储空间,还可以是所述终端包含的总的存储空间以及被占用的存储空间的信息。
步骤S204,终端将所述第一存储空间信息发送给服务器。
步骤S205,服务器接收所述第一存储空间信息。
步骤S206,如果第一存储空间信息和第M升级包片段的大小满足第二预设条件,服务器将第M升级包片段的标识发送到终端。
这里,如果所述终端的第一存储空间信息和所述第M升级包片段的大小不满足第二预设条件,服务器将终止消息发送到所述终端,其中,所述终止消息用于使所述终端结束本次升级。所述终止消息,在其他实施例中可以看成是服务器向终端发送的不包含待升级的升级包片段标识的空消息,即不包含第M升级包片段的标识也不包含其余任何可升级的升级包片段的标识的空消息。
步骤S207,终端接收所述第M升级包片段的标识。
这里,所述第M升级包片段的标识能够唯一表示第M升级包片段,比如,是对软件升级包切分完成时,对每一个升级包片段排列的序号。
步骤S208,终端根据所述标识,向所述服务器发送第一下载请求。
其中,第一下载请求用于请求下载所述第M升级包片段。
步骤S209,服务器接收并响应所述第一下载请求,根据所述第一下载请求将所述第M升级包片段发送到所述终端。
步骤S210,终端接收所述第M升级包片段。
步骤S211,终端将所述第M升级包片段进行升级,并将升级完成消息发送给所述服务器。
步骤S212,服务器接收所述升级完成消息,并将第M升级包片段保存在升级完成列表中。
在本发明实施例中,通过将将软件升级包切分为优先级从高到低递减的升级包片段,并先对满足第一预设条件的升级包片段进行升级,保证了即便存储空间不足,也能实现软件的核心或基础功能的升级。
本发明实施例提供一种软件升级方法,图3为本发明实施例终端侧的软件升级装置的结构示意图,如图3所示,所述软件升级装置主要包括五个模块:计算模块301、判断模块302、下载模块303、升级模块304和清理模块305,其中:
计算模块301,用于使终端计算所述终端的可用存储空间的大小,将可用存储空间的大小发送至服务器。
这里,在计算模块301中,所述终端还可以用于计算终端的总的存储空间以及被占用的存储空间的大小。即终端的第一存储空间信息是终端的可用存储空间的大小或者总的存储空间以及被占用的存储空间的大小。
判断模块302,用于终端设备接收服务器返回结果,判断是否有可用于升级的升级包片段,即第M升级包片段,如无可用于升级的升级包片段,终止本次升级。
这里,所述返回结果是服务器向终端发送的包含第M升级包片段的标识的信息或者是不包含第M升级包片段的标识的终止消息;如果返回结果是服务器向终端发送的包含第M升级包片段的标识的信息,终端判断得到有可用于升级的升级包片段,进而完成升级过程;如果所述返回结果是不包含第M升级包片段的标识的终止消息,终端判断得到没有可用于升级的升级包片段,进而终止本次升级。
下载模块303,用于当判断模块302中返回结果是包含第M升级包片段的标识的信息时,即有可用于升级的升级包片段,终端向服务器发送下载第M升级包片段的请求;终端设备接收并存储服务器返回的第M升级包片段。
升级模块304,用于利用最新下载的第M升级包片段进行软件升级,升级成功后发送第M升级包片段升级完成信息至服务器。
清理模块305,用于删除已完成升级的第M升级包片段。
图4为本发明实施例服务器侧的软件升级装置的结构示意图,如图4所示,该装置主要包括五个模块:升级包片段切分模块401、接收模块402、选择模块403、升级包片段发送模块404和标识模块405;其中:
升级包片段切分模块401,用于对当前待升级的升级包按照切分原则进行切分。
这里,所述切分原则是:假如将所述待升级的升级包总共切分为N个升级包片段,其中,N为大于1的正整数。所述N个升级包片段中的第M升级包片段包含基础或核心功能的升级,基础或核心功能的定义由升级发布者进行,该升级片段包大小限制在终端设备平均可用存储空间之内,以保证基础或核心功能被正常升级,该数值由经验得出;第R升级包片段包含依赖第M升级包的功能的升级,大小没有具体限制;第Q升级包片段包含依赖第R升级包的功能的升级,大小没有具体限制;如此类推,优先级从高到低递减。其中,M、R、Q互不相等,且均为大于1小于等于N的正整数。
接收模块402,用于接收终端发送的可用存储空间大小;接收终端设备下载升级包片段的请求,即第一下载请求;接收终端设备完成升级包片段的升级信息。
选择模块403,用于接收终端发送的可用存储空间大小后,先判断第M升级包片段与该可用存储空间大小,再按照上述优先级从高到低的顺序依次比较终端当前可用存储空间与可用于升级且未进行升级的升级包片段的大小,即其余N-1个升级包片段;若第M升级包片段小于或等于可用存储空间大小,则将第M升级包片段的标识发送至终端;若第M升级包片段大于可用存储空间大小,则发送不包含第M升级包片段标识的空消息至终端。
升级包片段发送模块404,用于接收终端发送的第一下载请求,并将所述第一下载请求对应的升级包片段,即第M升级包片段发送至终端。
标识模块405,接收终端完成升级包片段的升级信息后,标识该片段已升级完成。
这里,所述标识该片段已升级完成可以是将已经升级完成的升级包片段保存在升级完成列表中;其中,所述升级完成列表用于保存完成升级的升级包片段。
图5为本发明实施例终端侧的软件升级方法的实现流程图,如图5所示,该方法由终端来执行,该方法包括以下步骤:
步骤S501,用户发起软件升级。
这里,所述用户发起软件升级可以是用户在终端输入软件升级请求。
步骤S502,终端计算所述终端的可用存储空间的大小,发送至服务器。
这里,所述终端还可以计算终端的总的存储空间的大小以及被占用的存储空间的大小,得到终端的第一存储空间信息。
步骤S503,终端接收服务器返回结果,判断是否有可用于升级的升级片段包。
这里,当对第M升级包片段进行升级时,所述终端判断服务器发送的返回结果中是否包含有第M升级包片段标识的信息。如果终端判断得到所述返回结果是不包含第M升级包片段标识的终止信息,则进入步骤S504;如果终端判断得到所述返回结果是包含第M升级包片段标识的信息,则进入步骤S505。
步骤S504,所述终端结束本次软件升级。
步骤S505,终端向服务器发送下载升级包片段的请求。
这里,如果第M升级包片段进行升级,终端向服务器发送下载第M升级包片段的第一下载请求。
步骤S506,终端接收并存储服务器返回的对应升级包片段。
这里,如果第M升级包片段进行升级,终端接收并存储服务器根据步骤S505中根据第一下载请求返回的第M升级包片段。
步骤S507,终端利用最新下载的升级包片段进行软件升级。
这里,如果第M升级包片段进行升级,终端利用服务器返回的第M升级包片段,即最新下载的升级包片段,对所述第M升级包片段进行升级。
步骤S508,终端判断该升级包片段升级是否成功。
这里,当对第M升级包片段进行升级时,所述该升级包片段即是所述第M升级包片段;如果该升级包片段升级成功,则进入步骤S509;如果该升级包片段升级不成功,则返回步骤S502。
步骤S509,终端发送升级完成信息至服务器。
步骤S510,终端删除该升级包片段。
这里,如果对第M升级包片段进行升级,完成升级后,终端删除第M升级包片段。
图6为本发明实施例服务器侧的软件升级方法的实现流程图,如图6所示,该方法由服务器来执行,该方法包括以下步骤:
步骤S601,服务器获取可用升级包。
步骤S602,服务器切分升级包为多个升级包片段。
这里,服务器将所述升级包切分为N个升级包片段,N为大于1的正整数。
步骤S603,服务器接收终端发送的可用存储空间大小,按照优先级从高到低的顺序,依次比较该可用存储空间大小与可用于升级且未升级的升级包片段的大小。
这里,所述可用存储空间大小即是终端的第一存储空间信息;所述按照优先级从高到低的顺序,即先比较第M升级包片段的大小与所述可用存储空间大小,其中,第M升级包片段是所述N个升级包片段中满足第一预设条件的片段。如果第M升级包片段的大小不超过所述可用存储空间大小,即所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,服务器将将所述第M升级包片段发送到所述终端;并由终端完成对第M升级包片段的升级。然后,接着比较终端当前可用存储空间的大小与所述N个升级包片段中第R升级包片段的大小,当第R升级包片段的大小不超过所述终端当前可用存储空间的大小,即所述终端的第二存储空间信息和所述N个升级包片段中第R升级包片段的大小满足第三预设条件,服务器将所述第R升级包片段发送到所述终端,有终端对所述第R升级包片段完成升级,其中所述第R升级包片段所对应的功能在第M升级包片段对应的功能的基础上实现。如此,依次类推,依次比较该可用存储空间大小与可用于升级且未升级的升级包片段的大小。
所述N个升级包片段,还可以是按照从小到大的顺序,即第一升级包片段到第N升级包片段,其中,后一个升级包片段对应的功能在前一个升级包片段对应的功能的基础上实现的,即,第一升级包片段是满足第一预设条件的升级包片段,即第一升级包片段对应的功能包含了软件升级包预设的功能;第二升级包片段对应的功能在第一升级包对应功能的基础上实现,第三升级包片段对应的功能在第二升级包片段对应供的基础上实现,以此类推,第N升级包片段的功能在第(N-1)升级包片段对应功能的基础上实现。在判断的过程中,首先比较第一升级包片段的大小与终端当前可用存储空间的大小,如果第一升级包片段的大小不超过所述可用存储空间大小,即所述终端的第一存储空间信息和所述第一升级包片段的大小满足第二预设条件,服务器将将所述第一升级包片段发送到所述终端;并由终端完成对第一升级包片段的升级。然后,接着比较终端当前可用存储空间的大小与所述N个升级包片段中第二升级包片段的大小,当第二升级包片段的大小不超过所述终端当前可用存储空间的大小,即所述终端的第二存储空间信息和所述N个升级包片段中第二升级包片段的大小满足第三预设条件,服务器将所述第二升级包片段发送到所述终端,由终端对所述第二升级包片段完成升级。如此,依次类推,依次比较该可用存储空间大小与可用于升级且未升级的升级包片段的大小。
步骤S604,服务器判断升级包片段的大小是否小于或等于该可用存储空间大小的可用于升级且未进行升级的升级包片段。
这里,当对第M升级包片段升级时,如果第M升级包片段的大小小于或等于该可用存储空间大小,则进入步骤S607;如果第M升级包片段大于该可用存储空间大小,则进入步骤S605。
步骤S605,服务器发送不包含升级包片段标识的空信息至终端。
这里,当对第M升级包片段升级时,服务器发送不包含第M升级包片段升级标识的空信息至终端。
步骤S606,服务器接收终端发送的结束本次升级的消息,并结束本次升级。
步骤S607,发送包含该升级包片段标识的消息至终端。
这里,当对第M升级包片段升级时,服务器发送第M升级包片段升级标识至终端。
步骤S608,服务器接收终端下载该升级包片段请求,将对应升级包片段发送至终端。
这里,当对第M升级包片段升级时,服务器接收终端发送的下载第M升级包片段的第一下载请求,将第M升级包片段发送至终端。
步骤S609,服务器接收终端完成升级包片段的升级信息,标识该片段已升级完成。
这里,当对第M升级包片段升级时,服务器接收终端完成对第M升级包片段升级的升级完成消息。所述标识该片段已升级完成可以是将第M升级包片段保存在升级完成列表中;其中,所述升级完成列表用于保存保存完成升级的升级包片段。
本发明实施例提供一种终端,图7为本发明实施例终端组成结构示意图,如图7所示,所述终端700至少包括:处理器701和配置为存储可执行指令的存储介质702,其中:
处理器701配置为执行存储的可执行指令,所述可执行指令用于实现下面的步骤:
获取软件升级包并将所述软件升级包切分成N个升级包片段;其中,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N;
获取终端发送的所述终端的第一存储空间信息;
如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端;
接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成。
对应地,本发明实施例再提供一种终端,所述终端至少包括:控制器701和配置为存储可执行指令的存储介质,其中:
控制器配置为执行存储的可执行指令,所述可执行指令用于实现下面的步骤:
获取软件升级包的升级请求;
响应所述升级请求,并计算终端的第一存储空间信息;其中,所述第一存储空间信息是所述终端的存储空间的信息;
将所述第一存储空间信息发送给服务器;
接收所述服务器发送的第M升级包片段;其中,第M升级包片段为组成所述软件升级包的N个升级包片段中的片段,M、N为大于1的正整数,且M小于等于N;
将所述第M升级包片段进行升级,并将升级完成消息发送给所述服务器。
需要说明的是,以上服务器和终端实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本发明服务器和终端实施例中未披露的技术细节,请参照本发明方法实施例的描述而理解。
需要说明的是,本发明实施例中,如果以软件功能模块的形式实现上述的软件升级方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read OnlyMemory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。
对应地,本发明实施例提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行本发明其他实施例提供的服务器侧的软件升级方法或终端侧的软件升级方法。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所描述的方法。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种软件升级方法,其特征在于,所述方法包括:
获取软件升级包并将所述软件升级包切分成N个升级包片段;其中,所述N个升级包片段中第M升级包片段满足第一预设条件;M、N为大于1的正整数,且M小于等于N;
获取终端发送的所述终端的第一存储空间信息;
如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端;
接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第M升级包片段升级完成。
2.如权利要求1中所述的方法,其特征在于,所述N个升级包片段中第S升级包片段对应的功能在第T升级包片段对应的功能的基础上实现;其中,S、T为大于1且不相等的正整数,且S、T均小于等于N;或者,
所述第M升级包片段的大小不超过终端的平均可用存储空间的大小;其中,所述平均可用存储空间是服务器对接收到的P个终端的可用存储空间的大小所取的平均值;P为大于1的正整数。
3.如权利要求1中所述的方法,其特征在于,所述如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将所述第M升级包片段发送到所述终端,包括:
如果所述终端的第一存储空间信息和所述第M升级包片段的大小满足第二预设条件,将第M升级包片段的标识发送到所述终端;
获取所述终端根据所述第M升级包片段的标识发送的第一下载请求,根据所述第一下载请求将所述第M升级包片段发送到所述终端。
4.如权利要求1中所述的方法,其特征在于,所述方法还包括:
如果所述终端的第一存储空间信息和所述第M升级包片段的大小不满足第二预设条件,将终止消息发送到所述终端;其中,所述终止消息用于使所述终端结束本次升级。
5.如权利要求1至4任一项中所述的方法,其特征在于,在所述接收所述终端发送的升级完成消息之后,所述方法包括:
获取所述终端发送的所述终端的第二存储空间信息;
如果所述终端的第二存储空间信息和所述N个升级包片段中第R升级包片段的大小满足第三预设条件,将所述第R升级包片段发送到所述终端;其中,所述第R升级包片段所对应的功能在第M升级包片段对应的功能的基础上实现;R为大于1的正整数,且R小于等于N;
接收所述终端发送的升级完成消息,所述升级完成消息用于表明所述终端将所述第R升级包片段升级完成。
6.一种软件升级方法,其特征在于,所述方法包括:
获取软件升级包的升级请求;
响应所述升级请求,并获取终端的第一存储空间信息;其中,所述第一存储空间信息是所述终端的存储空间的信息;
将所述第一存储空间信息发送给服务器;
接收所述服务器发送的第M升级包片段;其中,第M升级包片段为组成所述软件升级包的N个升级包片段中的片段,M、N为大于1的正整数,且M小于等于N;
将所述第M升级包片段进行升级,并将升级完成消息发送给所述服务器。
7.如权利要求6中所述的方法,其特征在于,接收所述服务器发送的所述第M升级包片段,包括:
接收所述服务器发送的所述第M升级包片段的标识;
根据所述标识,向所述服务器发送下载所述第M升级包片段的第一下载请求;
接收所述服务根据所述第一下载请求发送的所述第M升级包片段。
8.如权利要求7中所述的方法,其特征在于,在所述将所述第M升级包片段进行升级,并将升级完成消息发送给所述服务器之后,所述方法还包括:
获取并向所述服务器发送第二存储空间信息;
接收所述服务器发送的所述N个升级包片段中的第R升级包片段;其中,R为大于1的正整数,且R小于等于N;
所述终端将所述第R升级包片段进行升级,并将升级完成消息发送给所述服务器。
9.一种终端,其特征在于,所述终端至少包括:处理器和配置为存储可执行指令的存储介质,其中:
处理器配置为执行存储的可执行指令,所述可执行指令配置为执行上述权利要求1至5任一项提供的软件升级方法;或者,所述可执行指令配置为执行上述权利要求6至8任一项提供的软件升级方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令配置为执行上述权利要求1至5任一项提供的软件升级方法;或者,所述可执行指令配置为执行上述权利要求6至8任一项提供的软件升级方法。
CN201810482041.7A 2018-05-18 2018-05-18 一种软件升级方法、终端及存储介质 Pending CN110502256A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810482041.7A CN110502256A (zh) 2018-05-18 2018-05-18 一种软件升级方法、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810482041.7A CN110502256A (zh) 2018-05-18 2018-05-18 一种软件升级方法、终端及存储介质

Publications (1)

Publication Number Publication Date
CN110502256A true CN110502256A (zh) 2019-11-26

Family

ID=68584838

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810482041.7A Pending CN110502256A (zh) 2018-05-18 2018-05-18 一种软件升级方法、终端及存储介质

Country Status (1)

Country Link
CN (1) CN110502256A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111124451A (zh) * 2019-12-24 2020-05-08 山东有人信息技术有限公司 一种分布式备份升级方法
CN112099820A (zh) * 2020-08-24 2020-12-18 华帝股份有限公司 一种ota升级方法、系统及智能设备
CN113064611A (zh) * 2021-03-16 2021-07-02 上海市共进通信技术有限公司 针对无线设备实现数据分析软件升级的方法及其更新方法
CN113094077A (zh) * 2019-12-23 2021-07-09 深圳Tcl数字技术有限公司 一种系统差分升级方法、装置、智能终端及存储介质
CN113885903A (zh) * 2021-08-30 2022-01-04 珠海读书郎软件科技有限公司 一种应用市场多应用升级的方法
CN116107612A (zh) * 2023-04-11 2023-05-12 北京集度科技有限公司 固件空中升级装置、充电桩、设备、方法及程序产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1625496A2 (en) * 2003-05-19 2006-02-15 Sony Ericsson Mobile Communications AB Methods and apparatus for generating upgraded software from initial software and software upgrade packages
WO2016116013A1 (zh) * 2015-01-19 2016-07-28 中兴通讯股份有限公司 软件升级方法和系统
CN105843656A (zh) * 2016-04-22 2016-08-10 Tcl集团股份有限公司 磁盘空间不足的系统升级方法、终端设备及服务器
CN105930197A (zh) * 2016-06-28 2016-09-07 乐视控股(北京)有限公司 一种软件升级的方法及电子设备
CN106250192A (zh) * 2016-08-04 2016-12-21 芯讯通无线科技(上海)有限公司 上位机的软件升级方法及系统
CN107193602A (zh) * 2017-05-24 2017-09-22 郑州云海信息技术有限公司 一种软件升级的方法、装置及系统
CN107992312A (zh) * 2016-10-25 2018-05-04 中兴通讯股份有限公司 一种升级包下发方法及装置
CN108011935A (zh) * 2017-11-27 2018-05-08 海信集团有限公司 一种nb-iot设备的程序升级方法、服务器及nb-iot设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1625496A2 (en) * 2003-05-19 2006-02-15 Sony Ericsson Mobile Communications AB Methods and apparatus for generating upgraded software from initial software and software upgrade packages
WO2016116013A1 (zh) * 2015-01-19 2016-07-28 中兴通讯股份有限公司 软件升级方法和系统
CN105843656A (zh) * 2016-04-22 2016-08-10 Tcl集团股份有限公司 磁盘空间不足的系统升级方法、终端设备及服务器
CN105930197A (zh) * 2016-06-28 2016-09-07 乐视控股(北京)有限公司 一种软件升级的方法及电子设备
CN106250192A (zh) * 2016-08-04 2016-12-21 芯讯通无线科技(上海)有限公司 上位机的软件升级方法及系统
CN107992312A (zh) * 2016-10-25 2018-05-04 中兴通讯股份有限公司 一种升级包下发方法及装置
CN107193602A (zh) * 2017-05-24 2017-09-22 郑州云海信息技术有限公司 一种软件升级的方法、装置及系统
CN108011935A (zh) * 2017-11-27 2018-05-08 海信集团有限公司 一种nb-iot设备的程序升级方法、服务器及nb-iot设备

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113094077A (zh) * 2019-12-23 2021-07-09 深圳Tcl数字技术有限公司 一种系统差分升级方法、装置、智能终端及存储介质
CN113094077B (zh) * 2019-12-23 2023-08-01 深圳Tcl数字技术有限公司 一种系统差分升级方法、装置、智能终端及存储介质
CN111124451A (zh) * 2019-12-24 2020-05-08 山东有人信息技术有限公司 一种分布式备份升级方法
CN112099820A (zh) * 2020-08-24 2020-12-18 华帝股份有限公司 一种ota升级方法、系统及智能设备
CN113064611A (zh) * 2021-03-16 2021-07-02 上海市共进通信技术有限公司 针对无线设备实现数据分析软件升级的方法及其更新方法
CN113064611B (zh) * 2021-03-16 2024-02-02 太仓市同维电子有限公司 针对无线设备实现数据分析软件升级的方法及其更新方法
CN113885903A (zh) * 2021-08-30 2022-01-04 珠海读书郎软件科技有限公司 一种应用市场多应用升级的方法
CN113885903B (zh) * 2021-08-30 2022-07-29 珠海读书郎软件科技有限公司 一种应用市场多应用升级的方法
CN116107612A (zh) * 2023-04-11 2023-05-12 北京集度科技有限公司 固件空中升级装置、充电桩、设备、方法及程序产品

Similar Documents

Publication Publication Date Title
CN110502256A (zh) 一种软件升级方法、终端及存储介质
US11762697B2 (en) Method and apparatus for scheduling resource for deep learning framework
US20200328984A1 (en) Method and apparatus for allocating resource
CN109918205B (zh) 一种边缘设备调度方法、系统、装置及计算机存储介质
CN110391938B (zh) 用于部署服务的方法和装置
CN108933822B (zh) 用于处理信息的方法和装置
US10534425B2 (en) Processing method and device for saving power, mobile terminal and cloud server
CN104808892A (zh) 一种应用图标排序方法、装置、系统及相关设备
CN109508326A (zh) 用于处理数据的方法、装置和系统
CN112506584B (zh) 资源文件加载方法、装置、设备、存储介质以及产品
CN107480205A (zh) 一种进行数据分区的方法和装置
CN111193792A (zh) 一种消息传输方法、装置、电子设备和存储介质
CN109697019B (zh) 基于fat文件系统的数据写入的方法和系统
CN109614549B (zh) 用于推送信息的方法和装置
CN109597912A (zh) 用于处理图片的方法
CN113760982A (zh) 一种数据处理方法和装置
CN107045452B (zh) 虚拟机调度方法和装置
CN107154971A (zh) 一种应用下载方法及装置
CN109783440B (zh) 数据存储方法及数据检索方法、装置、介质、电子设备
CN108804451A (zh) 生成主键的方法、装置、电子设备和可读存储介质
CN113127561B (zh) 业务单号的生成方法、装置、电子设备和存储介质
CN109308299B (zh) 用于搜索信息的方法和装置
CN110968334B (zh) 应用资源更新方法、资源包制作方法、装置、介质及设备
CN115794876A (zh) 针对业务数据包的分片处理方法、装置、设备及存储介质
CN112181766A (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

Application publication date: 20191126

RJ01 Rejection of invention patent application after publication