CN106775816B - 一种局域网中应用程序的自动更新方法及系统 - Google Patents

一种局域网中应用程序的自动更新方法及系统 Download PDF

Info

Publication number
CN106775816B
CN106775816B CN201611036447.XA CN201611036447A CN106775816B CN 106775816 B CN106775816 B CN 106775816B CN 201611036447 A CN201611036447 A CN 201611036447A CN 106775816 B CN106775816 B CN 106775816B
Authority
CN
China
Prior art keywords
application program
updatable
installation package
updating
update
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.)
Active
Application number
CN201611036447.XA
Other languages
English (en)
Other versions
CN106775816A (zh
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.)
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Guangzhou Shirui Electronics Co Ltd
Original Assignee
Guangzhou Shiyuan Electronics Thecnology Co Ltd
Guangzhou Shirui Electronics 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 Guangzhou Shiyuan Electronics Thecnology Co Ltd, Guangzhou Shirui Electronics Co Ltd filed Critical Guangzhou Shiyuan Electronics Thecnology Co Ltd
Publication of CN106775816A publication Critical patent/CN106775816A/zh
Application granted granted Critical
Publication of CN106775816B publication Critical patent/CN106775816B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

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

Abstract

本发明涉及一种局域网中应用程序的自动更新方法及系统,其中该方法包括:设备中安装的可更新应用程序发送更新请求;更新服务接收到更新请求后,首先在局域网内查找是否存在安装包,如果存在且安装包的版本高于当前版本,则获取安装包信息;如果不存在或者安装包的版本低于或等于当前版本,则通过局域网中的联网设备访问外部网络,查找是否存在安装包,如果存在且安装包的版本高于当前版本,则获取安装包;使用获取的安装包对该可更新应用程序更新。本发明的未联网设备的应用程序可以主动发起更新请求来进行应用程序的更新,有效避免了现有局域网升级方案中未联网设备完全依赖局域网中的联网设备和下载服务器中存在更新文件才能实现升级的问题。

Description

一种局域网中应用程序的自动更新方法及系统
技术领域
本发明涉及一种软件更新技术,具体涉及一种局域网中应用程序的自动更新方法及系统。
背景技术
在计算机终端中安装有大量应用程序,为了修正应用程序bug或者改进其功能,程序开发者会对程序进行升级更新。目前应用程序更新方案主要采用两种方式,一种方式是依靠软件管家提供应用程序更新,例如360软件管家,这种更新方式能够为各种应用程序提供更新,并且能够主动选择版本,但是这种更新方式需要手动安装软件管家,并且需要手动进行更新操作;另一种方式是在每个应用程序中设立更新子功能来实现,但这种更新方式无法实现对同一企业旗下的所有应用程序进行统一管理更新。
上述这两种更新方式能够满足一般的应用场景,却无法满足学校或者企业里比较常见的局域网中只有一台设备可连接外部网络的场景。针对这种场景,卡巴斯基为其病毒库更新提供了一种局域网升级方案。在该方案中,能够连接外部网络的设备(下称联网设备)通过外部网络更新自己的病毒库,并将更新文件保存在一个固定文件夹中,然后在该设备上配置下载服务器,局域网中的其他设备(下称未联网设备)直接连接到该下载服务器进行病毒库更新。虽然卡巴斯基的上述局域网升级方案能够实现局域网中各设备的软件更新,但仍存在如下缺点,1.未联网设备的更新完全依赖于局域网中的联网设备和下载服务器中是否存在更新文件;2.在应用程序更新场景下,一种更新方案(或更新策略)只能完成单一应用程序的更新,无法实现多个应用程序的更新,也无法解决低版本需要先升级到过渡版本才能升级到高版本时的版本匹配问题;3.未联网设备无法主动请求更新。
发明内容
为了解决上述技术问题,本发明提供了一种局域网中应用程序的自动更新方法及系统,该方案能够避免现有局域网升级方案中未联网设备完全依赖局域网中的联网设备和下载服务器中存在更新文件才能实现升级的问题。
本发明提出的技术方案如下。
一种局域网中应用程序的自动更新方法,局域网中所有设备安装的所有可更新应用程序分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息;
局域网中安装该可更新应用程序的设备为该可更新应用程序所在的可更新应用程序组安装一个更新服务,该更新服务用于更新该可更新应用程序组包括的所有可更新应用程序;
该方法包括以下步骤:
设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求;
该更新服务接收到该更新请求后,首先在局域网内查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过局域网中的联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取安装包;
使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
进一步地,所述更新信息包含可更新应用程序的唯一标识符、安装包及其版本号;所述更新请求包含应用程序唯一标识符、应用程序当前版本号。
进一步地,局域网中联网设备安装的更新服务既可以为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新,也可以为局域网中的未联网设备上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新中转服务;局域网中未联网设备安装的更新服务为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新。
进一步地,联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,所述在局域网内查找是否存在该可更新应用程序的安装包,即在内部更新服务器上查找是否存在该可更新应用程序的安装包。
进一步地,所述如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息,具体包括如下子步骤:
该更新服务根据应用程序唯一标识符获取该应用程序的安装包的信息,该应用程序的安装包的信息包含应用程序唯一标识符和可更新版本号;如果存在多个该应用程序的安装包,则获取所有安装包的信息;
更新服务判断获取的安装包的信息中包含的可更新版本号是否高于应用程序当前版本号,如果安装包的信息中包含的可更新版本号高于应用程序当前版本号,则更新服务获取该安装包,并下载该安装包对应用程序进行更新,同时将应用程序的版本号变更为该安装包对应的版本号;如果存在多个安装包的信息中包含的可更新版本号高于应用程序当前版本号,则该更新服务按各安装包版本号的先后顺序下载安装包对应用程序进行更新,并且将应用程序的版本号变更为其中最新的版本号。
进一步地,所述如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,具体包括以下步骤:
若该设备为联网设备,联网设备的更新服务将该更新请求发送给与应用程序对应的远程更新服务器;若该设备为未联网设备,该未联网设备的更新服务将该更新请求转发给联网设备的更新服务,联网设备的更新服务接收到该未联网设备的更新服务转发的该更新请求后,将该更新请求发送给与应用程序对应的远程更新服务器;
该远程更新服务器根据接收到的更新请求,查找是否存在该可更新应用程序的安装包。
进一步地,在远程更新服务器上查找到存在该可更新应用程序的安装包时,由所述安装该可更新应用程序的设备的更新服务对该安装包的版本进行判断;
或者,在远程更新服务器上查找到存在该可更新应用程序的安装包时,由联网设备的与该可更新应用程序所在的可更新应用程序组对应的更新服务对该安装包的版本进行判断。
进一步地,该方法还包括:局域网中的每台设备安装可更新应用程序时,会检查该设备上是否已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,如果该设备上已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,则无需再次安装该更新服务;如果该设备上没有安装与该可更新应用程序所在的可更新应用程序组对应的更新服务,则在该设备上随该可更新应用程序安装与该可更新应用程序所在的可更新应用程序组对应的更新服务。
本发明还提出一种实现前述自动更新方法的系统,该系统包括一台连接外部网络的联网设备和一台或多台不直接连接外部网络的未联网设备,未联网设备与联网设备在局域网内互联;联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,供局域网内的设备下载。
本发明还提出了一种局域网中应用程序的自动更新系统,局域网中所有设备安装的所有可更新应用程序分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息;
局域网中安装该可更新应用程序的设备为该可更新应用程序所在的可更新应用程序组安装一个更新服务,该更新服务用于更新该可更新应用程序组包括的所有可更新应用程序;
该系统包括以下模块:
更新请求发起模块:设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求;
安装包获取模块:该更新服务接收到该更新请求后,首先在局域网内查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过局域网中的联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取安装包;
更新模块:使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
本发明的有益效果:
1.本发明通过局域网中未联网设备的应用程序主动发起更新请求,来进行该应用程序的更新,有效避免了现有局域网升级方案中未联网设备完全依赖局域网中的联网设备和下载服务器中存在更新文件才能实现升级的问题,从而可以保持应用程序为最新版本。
2.本发明通过在局域网内的每台设备上为同一单位或个人开发或管理的所有可更新应用程序配备一个更新服务,通过该更新服务实现同一单位或个人开发或管理的所有可更新应用程序的更新,因此无需对其中每个可更新应用程序都配置一套更新方案。
3.本发明通过在获取最新版本安装包的同时获取过渡版本的安装包,解决了低版本直接升级到最新版本时可能遇到的版本不匹配的问题。
附图说明
图1为本发明提出的局域网中应用程序的自动更新系统的结构框图;
图2为本发明提出的局域网中应用程序的自动更新方法的流程图;
图3为本发明提出的局域网中应用程序的自动更新系统的系统架构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。但本领域技术人员知晓,本发明并不局限于附图和以下实施例。
本发明提出的局域网中应用程序的自动更新系统如图1所示。局域网中的设备包括一台连接外部网络的联网设备和一台或多台不直接连接外部网络的未联网设备,未联网设备与联网设备在局域网内互联。联网设备和未联网设备对其上安装的可更新应用程序可以执行手动更新、自动更新,也可以执行差分更新、整包更新等操作,在执行自动更新操作时,未联网设备与联网设备的更新逻辑一致。
联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符(例如全局唯一标识符GUID),以供局域网内的各设备下载。
局域网中所有设备安装的所有可更新应用程序分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息,更新信息主要包含可更新应用程序的唯一标识符(例如全局唯一标识符GUID)、安装包及其版本号等,这里的安装包不仅包括可更新应用程序最新版本的安装包及其版本号,还包括升级到该最新版本的各个必要的过渡版本的安装包及其版本号,以避免出现低版本直接升级到最新版本时可能遇到的版本不匹配的问题。
局域网中安装该可更新应用程序的设备为该可更新应用程序所在的可更新应用程序组安装一个更新服务,该更新服务负责更新该可更新应用程序组包括的所有可更新应用程序,因此不需要对每个可更新应用程序都设置一套更新方案。局域网中的每台设备安装可更新应用程序时,会检查该设备上是否已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,如果该设备上已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,则无需再次安装该更新服务;如果该设备上没有安装与该可更新应用程序所在的可更新应用程序组对应的更新服务,则在该设备上随该可更新应用程序安装与该可更新应用程序所在的可更新应用程序组对应的更新服务。
联网设备通过更新服务既可以为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新,也可以为未联网设备上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新中转服务。未联网设备通过更新服务为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新。
设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求,该更新服务接收到该更新请求后,首先在内部更新服务器中查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取安装包;使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
下面结合实施例对本发明提出的局域网中应用程序的自动更新方法进行描述。为了描述方便,以更新第一设备的应用程序A为例说明该方法,其中应用程序A为可更新应用程序,包括在第一可更新应用程序组中。
实施例1:
本实施例的局域网中应用程序的自动更新方法如图2所示。该自动更新方法包括如下步骤:
步骤S0:在第一设备中为第一可更新应用程序组安装更新服务A;
步骤S1:局域网中第一设备的应用程序A发送更新请求给更新服务A,该更新请求包含应用程序A唯一标识符(例如全局唯一标识符GUID)、应用程序A当前版本号等信息;
步骤S2:更新服务A根据应用程序A唯一标识符检查内部更新服务器中是否已经存在应用程序A的安装包;对于更新服务A检查到内部更新服务器中存在应用程序A的安装包并且其版本号高于应用程序A当前版本号的情况,进行步骤S211~步骤S212:对于更新服务A检查到内部更新服务器中不存在应用程序A的安装包,或者检查到的应用程序A的安装包的可更新版本号低于或等于应用程序A当前版本号的情况,进行步骤S221~步骤S223:
其中,步骤S211:更新服务A根据应用程序A唯一标识符获取该应用程序A的安装包的信息,该应用程序A的安装包的信息包含应用程序A唯一标识符、可更新版本号、是否为差分更新等信息;如果存在多个该应用程序A的安装包,则获取所有安装包的上述信息;
步骤S212:更新服务A判断获取的安装包的信息中包含的可更新版本号是否高于应用程序A当前版本号,如果安装包的信息中包含的可更新版本号高于应用程序A当前版本号,则更新服务A获取该安装包,并下载该安装包对应用程序A进行更新,同时将应用程序A的版本号变更为该安装包对应的版本号。如果存在多个安装包的信息中包含的可更新版本号高于应用程序A当前版本号,则更新服务A按各安装包版本号的先后顺序下载安装包对应用程序A进行更新,并且将应用程序A的版本号变更为其中最新的版本号。其中,如果是差分更新,获取的安装包为差分包,如果不是差分更新,则获取的安装包为整包。
步骤S221:若第一设备为联网设备,第一设备的更新服务A将该更新请求发送给与应用程序A对应的远程更新服务器;若第一设备为未联网设备,第一设备的更新服务A将该更新请求转发给联网设备的更新服务A,联网设备的更新服务A接收到第一设备的更新服务A转发的该更新请求后,将该更新请求及第一设备的信息保存到联网设备,并将该更新请求发送给与应用程序A对应的远程更新服务器;其中,第一设备的信息包含第一设备的唯一标识符;
步骤S222:联网设备的更新服务A从该远程更新服务器获取到更新应答信息后,将该更新应答信息保存在联网设备,其中更新应答信息包含应用程序A唯一标识符、可更新版本号、是否为差分更新等信息;可更新版本号可以为一个或多个,对于多个可更新版本号的情形,则表明应用程序A存在从当前版本到最新版本的必要的过渡版本;
步骤S223:若第一设备为联网设备,第一设备的更新服务A根据获取的该更新应答信息判断是否存在应用程序A的更新,若更新应答信息中的可更新版本号高于应用程序A当前版本号,则判断存在应用程序A的更新,否则判断不存在应用程序A的更新,并通知第一设备的应用程序A其不存在更新。如果存在应用程序A的更新,则第一设备的更新服务A从该远程更新服务器获取该应用程序A的安装包,并保存在内部更新服务器中,第一设备的更新服务A使用该安装包对应用程序A进行更新,同时将应用程序A的版本号变更为该安装包对应的版本号;如果存在多个可更新版本号高于应用程序A当前版本号,则更新服务A获取该多个可更新版本号的安装包并保存在内部更新服务器中,并按各安装包版本号的先后顺序使用各安装包对应用程序A进行更新,同时将应用程序A的版本号变更为其中最新的版本号。其中,如果是差分更新,获取的安装包为差分包,如果不是差分更新,则获取的安装包为整包;
若第一设备为未联网设备,联网设备的更新服务A转发获取的更新应答信息给第一设备的更新服务A,第一设备的更新服务根据获取的该更新应答信息判断是否存在应用程序A的更新,若更新应答信息中的可更新版本号高于应用程序A当前版本号,则判断存在应用程序A的更新,否则判断不存在应用程序A的更新。如果存在应用程序A的更新,则第一设备的更新服务A通知联网设备的更新服务A从该远程更新服务器获取该应用程序A的安装包,联网设备的更新服务A从该远程更新服务器获取该应用程序A的安装包后将其保存在内部更新服务器中,第一设备的更新服务A从内部更新服务器下载该安装包对应用程序A进行更新,同时将应用程序A的版本号变更为该安装包对应的版本号;如果存在多个高于应用程序A当前版本号的可更新版本号,则针对每个可更新版本号获取相应的安装包,并将获取的安装包保存在内部更新服务器中,第一设备的更新服务A按各安装包版本号的先后顺序从内部更新服务器下载安装包对应用程序A进行更新,并且将应用程序A的版本号变更为其中最新的版本号。
实施例2:
本实施例与实施例1的不同之处在于,在实施例1的步骤S223中,若第一设备为未联网设备,联网设备的更新服务A根据获取的该更新应答信息判断是否存在应用程序A的更新,而不是联网设备的更新服务A转发获取的更新应答信息给第一设备的更新服务A,由第一设备的更新服务A根据获取的该更新应答信息判断是否存在应用程序A的更新。
若更新应答信息中的可更新版本号高于应用程序A当前版本号,则联网设备的更新服务A判断存在应用程序A的更新,并通知第一设备的更新服务A应用程序A存在更新,否则判断不存在应用程序A的更新,并通知第一设备的更新服务A应用程序A不存在更新;如果存在应用程序A的更新,则联网设备的更新服务A从该远程更新服务器获取该应用程序A的安装包,并保存在内部更新服务器中,第一设备的更新服务A从内部更新服务器下载该安装包对应用程序A进行更新,同时将应用程序A的版本号变更为该安装包对应的版本号;如果存在多个高于应用程序A当前版本号的可更新版本号,则针对每个可更新版本号获取相应的安装包,并将获取的安装包保存在内部更新服务器中,第一设备的更新服务A按各安装包版本号的先后顺序从内部更新服务器下载安装包对应用程序A进行更新,并且将应用程序A的版本号变更为其中最新的版本号。
本实施例与实施例1相同之处不再赘述。
本发明还提出了一种局域网中应用程序的自动更新系统,局域网中所有设备安装的所有可更新应用程序分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息;局域网中安装该可更新应用程序的设备为该可更新应用程序所在的可更新应用程序组安装一个更新服务,该更新服务用于更新该可更新应用程序组包括的所有可更新应用程序。
该系统如图3所示,包括以下模块:
更新请求发起模块:设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求;
安装包获取模块:该更新服务接收到该更新请求后,首先在局域网内查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过局域网中的联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取安装包;
更新模块:使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
所述更新信息包含可更新应用程序的唯一标识符、安装包及其版本号;所述更新请求包含应用程序唯一标识符、应用程序当前版本号。
局域网中联网设备安装的更新服务既可以为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新,也可以为局域网中的未联网设备上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新中转服务;局域网中未联网设备安装的更新服务为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新。
联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,所述在局域网内查找是否存在该可更新应用程序的安装包,即在内部更新服务器上查找是否存在该可更新应用程序的安装包。
所述如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息,具体为:
该更新服务根据应用程序唯一标识符获取该应用程序的安装包的信息,该应用程序的安装包的信息包含应用程序唯一标识符和可更新版本号;如果存在多个该应用程序的安装包,则获取所有安装包的信息;
更新服务判断获取的安装包的信息中包含的可更新版本号是否高于应用程序当前版本号,如果安装包的信息中包含的可更新版本号高于应用程序当前版本号,则更新服务获取该安装包,并下载该安装包对应用程序进行更新,同时将应用程序的版本号变更为该安装包对应的版本号;如果存在多个安装包的信息中包含的可更新版本号高于应用程序当前版本号,则该更新服务按各安装包版本号的先后顺序下载安装包对应用程序进行更新,并且将应用程序的版本号变更为其中最新的版本号。
所述如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,具体为:
若该设备为联网设备,联网设备的更新服务将该更新请求发送给与应用程序对应的远程更新服务器;若该设备为未联网设备,该未联网设备的更新服务将该更新请求转发给联网设备的更新服务,联网设备的更新服务接收到该未联网设备的更新服务转发的该更新请求后,将该更新请求发送给与应用程序对应的远程更新服务器;
该远程更新服务器根据接收到的更新请求,查找是否存在该可更新应用程序的安装包。
在远程更新服务器上查找到存在该可更新应用程序的安装包时,由所述安装该可更新应用程序的设备的更新服务对该安装包的版本进行判断;
或者,在远程更新服务器上查找到存在该可更新应用程序的安装包时,由联网设备的与该可更新应用程序所在的可更新应用程序组对应的更新服务对该安装包的版本进行判断。
局域网中的每台设备安装可更新应用程序时,会检查该设备上是否已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,如果该设备上已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,则无需再次安装该更新服务;如果该设备上没有安装与该可更新应用程序所在的可更新应用程序组对应的更新服务,则在该设备上随该可更新应用程序安装与该可更新应用程序所在的可更新应用程序组对应的更新服务。
以上,对本发明的实施方式进行了说明。但是,本发明不限定于上述实施方式。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种局域网中应用程序的自动更新方法,其特征在于,局域网中所有设备安装的所有可更新应用程序按照同一单位或个人分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息;所述所有设备包括一台连接外部网络的联网设备和一台或多台不直接连接外部网络的未联网设备,所述未联网设备与所述联网设备在所述局域网内互联,所述联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,以供局域网内的各未联网设备下载;
局域网中安装该可更新应用程序的设备以可更新应用程序组为单位,为每个可更新应用程序组安装一个更新服务,该更新服务用于更新该可更新应用程序组包括的所有可更新应用程序;
该方法包括以下步骤:
局域网中的设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求;
该更新服务接收到该更新请求后,首先在局域网内查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过局域网中的联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取所有版本高于该可更新应用程序的版本的安装包;
使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
2.根据权利要求1所述的方法,其特征在于,所述更新信息包含可更新应用程序的唯一标识符、安装包及其版本号;所述更新请求包含应用程序唯一标识符、应用程序当前版本号。
3.根据权利要求1所述的方法,其特征在于,局域网中联网设备安装的更新服务既能够为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新,也能够为局域网中的未联网设备上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新中转服务;局域网中未联网设备安装的更新服务为其上安装的与该更新服务对应的可更新应用程序组所包括的所有可更新应用程序提供更新。
4.根据权利要求1-3中任一项所述的方法,其特征在于,联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,所述在局域网内查找是否存在该可更新应用程序的安装包,即在内部更新服务器上查找是否存在该可更新应用程序的安装包。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息,具体包括如下子步骤:
该更新服务根据应用程序唯一标识符获取该应用程序的安装包的信息,该应用程序的安装包的信息包含应用程序唯一标识符和可更新版本号;如果存在多个该应用程序的安装包,则获取所有安装包的信息;
更新服务判断获取的安装包的信息中包含的可更新版本号是否高于应用程序当前版本号,如果安装包的信息中包含的可更新版本号高于应用程序当前版本号,则更新服务获取该安装包,并下载该安装包对应用程序进行更新,同时将应用程序的版本号变更为该安装包对应的版本号;如果存在多个安装包的信息中包含的可更新版本号高于应用程序当前版本号,则该更新服务按各安装包版本号的先后顺序下载安装包对应用程序进行更新,并且将应用程序的版本号变更为其中最新的版本号。
6.根据权利要求1-3中任一项所述的方法,其特征在于,所述如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,具体包括以下步骤:
若该设备为联网设备,联网设备的更新服务将该更新请求发送给与应用程序对应的远程更新服务器;若该设备为未联网设备,该未联网设备的更新服务将该更新请求转发给联网设备的更新服务,联网设备的更新服务接收到该未联网设备的更新服务转发的该更新请求后,将该更新请求发送给与应用程序对应的远程更新服务器;
该远程更新服务器根据接收到的更新请求,查找是否存在该可更新应用程序的安装包。
7.根据权利要求1-3中任一项所述的方法,其特征在于,在远程更新服务器上查找到存在该可更新应用程序的安装包时,由所述安装该可更新应用程序的设备的更新服务对该安装包的版本进行判断;
或者,在远程更新服务器上查找到存在该可更新应用程序的安装包时,由联网设备的与该可更新应用程序所在的可更新应用程序组对应的更新服务对该安装包的版本进行判断。
8.根据权利要求1-3中任一项所述的方法,其特征在于,该方法还包括:局域网中的每台设备安装可更新应用程序时,会检查该设备上是否已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,如果该设备上已经安装有与该可更新应用程序所在的可更新应用程序组对应的更新服务,则无需再次安装该更新服务;如果该设备上没有安装与该可更新应用程序所在的可更新应用程序组对应的更新服务,则在该设备上随该可更新应用程序安装与该可更新应用程序所在的可更新应用程序组对应的更新服务。
9.一种实现如权利要求1-8中任一项所述的自动更新方法的自动更新系统,其特征在于,该系统包括一台连接外部网络的联网设备和一台或多台不直接连接外部网络的未联网设备,未联网设备与联网设备在局域网内互联;联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,供局域网内的各未联网设备下载。
10.一种局域网中应用程序的自动更新系统,其特征在于,局域网中所有设备安装的所有可更新应用程序按照同一单位或个人分成多个可更新应用程序组,每个可更新应用程序组中包括一个或多个可更新应用程序,每个可更新应用程序组包括的所有可更新应用程序由同一单位或个人在其远程更新服务器上提供更新信息;所述所有设备包括一台连接外部网络的联网设备和一台或多台不直接连接外部网络的未联网设备,所述未联网设备与所述联网设备在所述局域网内互联,所述联网设备配备有内部更新服务器,用于保存局域网内各可更新应用程序的安装包及其版本号以及相应的应用程序唯一标识符,以供局域网内的各未联网设备下载;
局域网中安装该可更新应用程序的设备以可更新应用程序组为单位,为每个可更新应用程序组安装一个更新服务,该更新服务用于更新该可更新应用程序组包括的所有可更新应用程序;
该系统包括以下模块:
更新请求发起模块:局域网中的设备中安装的可更新应用程序向与该可更新应用程序所在的可更新应用程序组对应的更新服务发送更新请求;
安装包获取模块:该更新服务接收到该更新请求后,首先在局域网内查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取该安装包的信息;如果不存在或者安装包的版本低于或等于该可更新应用程序的版本,则通过局域网中的联网设备访问外部网络,在该可更新应用程序对应的远程更新服务器上查找是否存在该可更新应用程序的安装包,如果存在且安装包的版本高于该可更新应用程序的版本,则获取所有版本高于该可更新应用程序的版本的安装包;
更新模块:使用获取的安装包对该发出更新请求的可更新应用程序进行更新。
CN201611036447.XA 2016-10-28 2016-11-16 一种局域网中应用程序的自动更新方法及系统 Active CN106775816B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN2016109735515 2016-10-28
CN201610973551 2016-10-28

Publications (2)

Publication Number Publication Date
CN106775816A CN106775816A (zh) 2017-05-31
CN106775816B true CN106775816B (zh) 2019-12-27

Family

ID=58970986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611036447.XA Active CN106775816B (zh) 2016-10-28 2016-11-16 一种局域网中应用程序的自动更新方法及系统

Country Status (1)

Country Link
CN (1) CN106775816B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108076224B (zh) * 2017-12-21 2021-06-29 Oppo广东移动通信有限公司 应用程序控制方法、装置及存储介质和移动终端
CN110099208B (zh) * 2018-01-31 2021-06-22 浙江宇视科技有限公司 一种视频监控系统中跨级跨域升级摄像机的方法及装置
CN108376078A (zh) * 2018-02-26 2018-08-07 广东美的制冷设备有限公司 设备的升级方法、装置以及家电设备
JP7067232B2 (ja) * 2018-04-20 2022-05-16 コニカミノルタ株式会社 サービス提供装置およびプログラム
CN109358877B (zh) * 2018-09-30 2023-08-18 上海碳蓝网络科技有限公司 一种用于对用户设备中应用进行升级的方法与设备
CN111274433A (zh) * 2018-11-20 2020-06-12 比亚迪股份有限公司 语音资源库的更新方法及装置
CN110675166A (zh) * 2019-09-03 2020-01-10 宁波鱼讯信息技术有限责任公司 一种用于水产品追溯的信息采集系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103259808A (zh) * 2012-02-15 2013-08-21 腾讯科技(深圳)有限公司 更新服务提供方法及装置
CN104092732A (zh) * 2014-06-20 2014-10-08 裴兆欣 一种终端软件智能更新方法及装置
CN104899066A (zh) * 2015-06-19 2015-09-09 青岛海信移动通信技术股份有限公司 一种连续升级的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103259808A (zh) * 2012-02-15 2013-08-21 腾讯科技(深圳)有限公司 更新服务提供方法及装置
CN104092732A (zh) * 2014-06-20 2014-10-08 裴兆欣 一种终端软件智能更新方法及装置
CN104899066A (zh) * 2015-06-19 2015-09-09 青岛海信移动通信技术股份有限公司 一种连续升级的方法及装置

Also Published As

Publication number Publication date
CN106775816A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106775816B (zh) 一种局域网中应用程序的自动更新方法及系统
US10922073B2 (en) Distributed incremental updating of trays using a source control system
CN103678319B (zh) 资源文件更新方法、装置和系统及服务器
US7934210B1 (en) System and method for updating one or more programs and their environment
US7735079B1 (en) Securely hooking installations for compatibility with other applications
CN111381858B (zh) 一种应用程序升级方法、服务器及终端设备
JP6217034B2 (ja) 関連プラグインの管理方法、装置およびシステム
CN107483241B (zh) 一种在网元升级过程中下载升级镜像版本的方法和装置
CN102262544A (zh) 软件升级的方法和装置
US11132191B2 (en) Software and firmware updates of computing systems
CN107769949A (zh) 一种应用组件部署方法及部署节点
US20190354363A1 (en) Software Update Device and Software Update System
CN102833350A (zh) WebApp更新的处理方法和处理装置
US11876676B2 (en) Network node firmware update
WO2019056187A1 (zh) 应用部署方法、装置及系统
US8914490B2 (en) Automated discovery and procurement of management information bases (MIBs)
CN110888652A (zh) 基于jenkins插件的多版本构建方法及终端
US20160378553A1 (en) Resource Management Method and Device for Terminal System
US11726443B2 (en) Efficient controller data generation and extraction
US8453141B1 (en) High performance install update
CN112084254A (zh) 一种数据同步方法和系统
CN111769966B (zh) 一种克隆升级方法、系统和应用
CN108650320B (zh) 一种集群环境下同构级联设备配置文件同步方法
CN109522038A (zh) 一种cs架构的客户端升级方法及装置
CN114553860B (zh) 一种ota升级方法、装置及电子设备

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
GR01 Patent grant
GR01 Patent grant