CN109491684A - 应用程序热更新方法、装置、电子设备及存储介质 - Google Patents

应用程序热更新方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN109491684A
CN109491684A CN201811271663.1A CN201811271663A CN109491684A CN 109491684 A CN109491684 A CN 109491684A CN 201811271663 A CN201811271663 A CN 201811271663A CN 109491684 A CN109491684 A CN 109491684A
Authority
CN
China
Prior art keywords
electronic equipment
update
packet
app
request
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
CN201811271663.1A
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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN201811271663.1A priority Critical patent/CN109491684A/zh
Publication of CN109491684A publication Critical patent/CN109491684A/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

Landscapes

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

Abstract

本发明提供了一种基于优化系统性能的应用程序热更新方法,包括:执行第一更新包对安装在第一电子设备中的指定的第一App进行热更新,并保存所述第一更新包;在所述第一电子设备所处的局域网内广播一个更新通知;接收局域网内的第二电子设备发送过来的更新请求;向所述第二电子设备发出要求提供验证资料的请求;接收所述第二电子设备发出验证资料,并当根据所接收的验证资料确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。本发明还提供一种应用于第二电子设备的应用程序热更新方法、实现所述应用程序热更新方法的电子设备、装置,及存储介质。本发明能够解决解决热更新效率低下,网络资源消耗多的问题。

Description

应用程序热更新方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,具体涉及一种应用程序热更新方法、装置、电子设备、及存储介质。
背景技术
现有业界的热更新方法,需要基于一个热更新后台服务器进行更新,如果热更新后台服务器无法访问,则热更新服务不能正常执行。并且,对于每一个用户来说,都需要消耗流量进行下载,对用户和服务提供商来说都是比较大的资源消耗。即现有技术中的热更新方法更新效率低下,网络资源消耗多。
发明内容
鉴于以上内容,有必要提出一种应用程序热更新方法、装置、电子设备、及存储介质,用以解决热更新效率低下,网络资源消耗多的问题。
本发明的第一方面提供一种应用程序热更新方法,应用于第一电子设备中,所述方法包括:执行第一更新包对安装在所述第一电子设备中的指定的第一App进行热更新,并保存所述第一更新包;在所述第一电子设备所处的局域网内广播一个更新通知;接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;向所述第二电子设备发出要求提供验证资料的请求;接收所述第二电子设备发出的验证资料,并根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包;及当确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。
优选地,所述更新通知携带有所述指定的第一App的标识以及所述第一更新包的版本号。
优选地,所述验证资料为利用预设的加密算法加密过的字符串,其中,所述根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包包括:利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密;若所述解密后的验证资料与预设的资料相符,确定所述第二电子设备有权限获取所述第一更新包;及若所述解密后的验证资料与所述预设的资料不相符,确定所述第二电子设备没有权限获取所述第一更新包。
本发明第二方面提供一种应用程序热更新方法,应用于第二电子设备中,所述方法包括:从所述第二电子设备所在的局域网内侦测第一电子设备发出的更新通知,其中,所述第一电子设备于更新完指定的第一App时发出所述更新通知;当侦测到所述更新通知时,根据所述更新通知确定是否发出更新请求,其中,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;于确定要发出所述更新请求时,向所述第一电子设备发出所述更新请求;当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备;及接收所述第一电子设备发送的第一更新包,执行所述第一更新包以对所述指定的第二App进行热更新。
优选地,所述更新通知携带有所述指定的第一App的标识以及所述第一更新包的版本号,所述根据所述更新通知确定是否要发出更新请求包括:当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,确定无需发出所述更新请求,其中,所述第二更新包是指用于更新升级所述指定的第二App的更新包;及当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,确定需发出所述更新请求。
优选地,所述验证资料为利用预设的加密算法加密过的字符串,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
本发明第三方面提供一种应用程序热更新装置,运行于第一电子设备中,所述应用程序热更新装置包括:执行模块,用于执行第一更新包对安装在所述第一电子设备中的指定的第一App进行热更新,并保存所述第一更新包;发送模块,用于在所述第一电子设备所处的局域网内广播一个更新通知;接收模块,用于接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;所述发送模块,还用于向所述第二电子设备发出要求提供验证资料的请求;所述接收模块,还用于接收所述第二电子设备发出的验证资料;判断模块,用于根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包;及所述发送模块,还用于当确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。
本发明第四方面提供一种应用程序热更新装置,运行于第二电子设备中,其特征在于,所述应用程序热更新装置包括:侦测模块,用于从所述第二电子设备所在的局域网内侦测第一电子设备发出的更新通知,其中,所述第一电子设备于更新完指定的第一App时发出所述更新通知;确定模块,用于当侦测到所述更新通知时,根据所述更新通知确定是否发出更新请求,其中,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;发送模块,用于当确定要发出所述更新请求时,向所述第一电子设备发出所述更新请求;所述发送模块,还用于当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备;及执行模块,用于接收所述第一电子设备发送的第一更新包,执行所述第一更新包以对安装在所述第二电子设备的所述指定的第二App进行热更新。
本发明第五方面提供一种电子设备,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现所述应用程序热更新方法。
本发明第六方面提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现所述应用程序热更新方法。
本发明实施例中所述的应用程序热更新方法、装置、电子设备、及存储介质,在执行第一更新包对安装在第一电子设备中的指定的第一App进行热更新时并保存所述第一更新包;在所述第一电子设备所处的局域网内广播一个更新通知;接收局域网内的第二电子设备发送过来的更新请求;向所述第二电子设备发出要求提供验证资料的请求;接收所述第二电子设备发出验证资料,并当根据所接收的验证资料确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。利用本发明,使得第二电子设备可以直接从第一电子设备获取更新包,无需从服务器获取更新包,减少网络资源消耗、更新效率更快。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明实施例一提供的应用程序热更新方法的应用环境架构图。
图2是本发明实施例二提供的应用程序热更新方法的流程图。
图3是本发明实施例三提供的应用程序热更新方法的流程图。
图4是本发明实施例四提供的应用程序热更新装置的结构图。
图5是本发明实施例五提供的应用程序热更新装置的结构图。
图6是本发明实施例六提供的第一电子设备的示意图。
图7是本发明实施例七提供的第二电子设备的示意图。
如下具体实施方式将结合上述附图进一步说明本发明。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施例对本发明进行详细描述。需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
实施例一
参阅图1所示,为本发明实施例一提供的应用程序热更新方法的应用环境架构图。
本发明的用于应用程序热更新方法应用在一个第一电子设备与一个或多个第二电子设备所构成的环境中。例如,由第一电子设备3和至少一个第二电子设备4构成的环境中。第一电子设备3可以通过任何传统的有线网络及/或无线网络与第二电子设备4通讯连接。所述第一电子设备3和第二电子设备4还可以通过任何传统的有线网络及/或无线网络与服务器5通讯连接。所述有线网络可以为传统有线通讯的任何类型,例如因特网、局域网。所述无线网络可以为传统无线通讯的任何类型,例如无线电、无线保真(WirelessFidelity,WIFI)、蜂窝、卫星、广播等。无线通讯技术可以包括,但不限于,全球移动通信系统(Global System for Mobile Communications,GSM)、通用分组无线业务(GeneralPacket Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA),宽带码分多址(W-CDMA)、CDMA2000、IMT单载波(IMT Single Carrier)、增强型数据速率GSM演进(Enhanced Data Rates for GSM Evolution,EDGE)、长期演进技术(Long-TermEvolution,LTE)、高级长期演进技术、时分长期演进技术(Time-Division LTE,TD-LTE)、高性能无线电局域网(High Performance Radio Local Area Network,HiperLAN)、高性能无线电广域网(High Performance Radio Wide Area Network,HiperWAN)、本地多点派发业务(Local Multipoint Distribution Service,LMDS)、全微波存取全球互通(WorldwideInteroperability for Microwave Access,WiMAX)、紫蜂协议(ZigBee)、蓝牙、正交频分复用技术(Flash Orthogonal Frequency-Division Multiplexing,Flash-OFDM)、大容量空分多路存取(High Capacity Spatial Division Multiple Access,HC-SDMA)、通用移动电信系统(Universal Mobile Telecommunications System,UMTS)、通用移动电信系统时分双工(UMTS Time-Division Duplexing,UMTS-TDD)、演进式高速分组接入(Evolved HighSpeed Packet Access,HSPA+)、时分同步码分多址(Time Division Synchronous CodeDivision Multiple Access,TD-SCDMA)、演进数据最优化(Evolution-Data Optimized,EV-DO)、数字增强无绳通信(Digital Enhanced Cordless Telecommunications,DECT)及其他。
本实施例中,所述第一电子设备3、第二电子设备4可以为便携式终端,例如手机、平板电脑等设备。
实施例二
图2是本发明实施例二提供的应用程序热更新方法的流程图。
在本实施例中,所述应用程序热更新方法可以应用于第一电子设备中,对于需要进行应用程序热更新的第一电子设备,可以直接在第一电子设备上集成本发明的方法所提供的用于应用程序热更新的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在第一电子设备上。
如图2所示,所述应用程序热更新方法具体包括以下步骤,根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S11、第一电子设备于指定的第一App(Application,应用程序)在所述第一电子设备中运行时,执行第一更新包对所述指定的第一App进行热更新,并保存所述第一更新包。
在一个实施例中,所述指定的第一App可以为安装在所述第一电子设备中的任何类型的App。例如所述指定的第一App可以为游戏。所述第一电子设备可以为手机、平板电脑等设备。
在一个实施例中,所述第一电子设备从服务器中获取所述第一更新包。
在一个实施例中,所述第一更新包可以用于对所述指定的第一App的一个或多个Bug进行修正,或者对所述指定的第一App的一项或多项功能进行增减或更新。
在一个实施例中,所述第一更新包对应一个版本号。例如,当所述第一更新包是所述指定的第一App的软件开发商首次发行的更新包时,所述第一更新包对应的版本号为“V1”,当所述第一更新包是所述指定的第一App的软件开发商再次发行的更新包时,所述第一更新包对应的版本号为“V2”,依此类推。
步骤S12、当所述第一电子设备的所述指定的第一App完成热更新时,所述第一电子设备在所述第一电子设备所处的局域网内广播一个更新通知。
在一个实施例中,所述更新通知携带有,但不限于,所述指定的第一App的标识以及所述第一更新包的版本号。所述指定的第一App的标识是指所述指定的第一App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第一App,以使得所述指定的第一App在软件商店可以和其他App相区别。
在一个实施例中,所述第一电子设备每隔预设时间(例如5分钟或者10分钟)广播一次所述更新通知。
步骤S13、所述第一电子设备接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App。
在一个实施例中,所述第二电子设备实时或每隔预设时间(例如10秒钟)侦测所述局域网内的所述更新通知。
当所述第二电子设备侦测到所述更新通知时,所述第二电子设备根据所述更新通知中所携带的所述指定的第一App的标识以及所述第一更新包的版本号来确定是否要发出所述更新请求。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,所述第二电子设备确定无需发出所述更新请求。所述第二更新包是指用于更新升级所述指定的第二App的更新包。在一个实施例中,所述指定的第二App的标识是指所述指定的第二App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第二App,以使得所述指定的第二App在软件商店可以和其他App相区别。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,所述第二电子设备确定需发出所述更新请求,并向所述第一电子设备发出所述更新请求。
步骤S14、当接收到所述第二电子设备发送过来的所述更新请求时,所述第一电子设备向所述第二电子设备发出要求提供验证资料的请求,所述验证资料用于校验所述第二电子设备是否有权限获取所述第一更新包。
在一个实施例中,所述验证资料可以为所述第二电子设备利用预设的加密算法(例如,DES算法)加密过的字符串。在一个实施例中,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
步骤S15、所述第一电子设备接收所述第二电子设备发出验证资料,并根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包。若所述第一电子设备判断得出所述第二电子设备有权限获取所述第一更新包,执行步骤S16。若所述第一电子设备判断得出所述第二电子设备没有权限获取所述第一更新包,回到步骤S13,接收所述第一电子设备所在局域网内的其他第二电子设备发送过来的所述更新请求。
在一个实施例中,所述第一电子设备利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述解密后的验证资料与所述预设的资料相符,则确定所述第二电子设备有权限获取所述第一更新包。若所述解密后的验证资料与所述预设的资料不相符,则确定所述第二电子设备没有权限获取所述第一更新包。
在一个实施例中,所述预设的资料可以预先存储在所述第一电子设备中。在一个实施例中,所述预设的资料所携带的信息包括安装在所述第一电子设备的所述指定的第一App的开发商名称和所述指定的第一App名称。换句话来讲,所述第一电子设备比较所述解密后的验证资料是否与所述预设的资料相符,也即是确定所述第一电子设备的所述指定的第一App是否和所述第二电子设备的所述指定的第二App是同一个App。在一个实施例中,当所述第一电子设备的所述指定的第一App的开发商名称和安装在所述第二电子设备的所述指定的第二App的开发商名称相同,以及所述第一电子设备的所述指定的第一App的名称和安装在所述第二电子设备的所述指定的第二App的名称相同时,所述第一电子设备确定所述第二电子设备有权限获取所述第一更新包。当所述第一电子设备的所述指定的第一App的开发商名称和安装在所述第二电子设备的所述指定的第二App的开发商名称不相同,及/或所述第一电子设备的所述指定的第一App的名称和安装在所述第二电子设备的所述指定的第二App的名称不相同时,所述第一电子设备确定所述第二电子设备没有权限获取所述第一更新包。
步骤S16、当确定所述第二电子设备有权限获取所述第一更新包时,所述第一电子设备将所述第一更新包发送给所述第二电子设备,从而使得所述第二电子设备可以执行所述第一更新包来对安装在所述第二电子设备的所述指定的第一App进行热更新。
在一个实施例中,所述第二电子设备还可以将所述第一更新包进行存储,例如存储到所述第二电子设备的存储器中。
根据本发明的上述步骤可知,当局域网内包括多个第二电子设备时,所述第一电子设备也可以按照上述方法步骤使得分别安装在所述多个第二电子设备内的所述指定的第一App进行热更新。
综上所述,本发明实施例中所述的应用程序热更新方法,第一电子设备在执行第一更新包对指定的第一App进行热更新后保存所述第一更新包,以及在所述第一电子设备所处的局域网内广播一个更新通知,并接收局域网内的第二电子设备发送过来的请求更新安装在所述第二电子设备的指定的第二App的更新请求。所述第一电子设备于确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备,从而使得所述第二电子设备可以执行所述第一更新包来对安装在所述第二电子设备的所述指定的第二App进行热更新。即使得第二电子设备无需从服务器来下载更新包,减少网络资源消耗、更新效率更快。
实施例三
图3是本发明实施例三提供的应用程序热更新方法的流程图。
在本实施例中,所述应用程序热更新方法可以应用于第二电子设备中,对于需要进行应用程序热更新的第二电子设备,可以直接在第二电子设备上集成本发明的方法所提供的用于应用程序热更新的功能,或者以软件开发工具包(Software Development Kit,SDK)的形式运行在第二电子设备上。
如图3所示,所述应用程序热更新方法具体包括以下步骤,根据不同的需求,所述流程图中步骤的顺序可以改变,某些步骤可以省略。
步骤S21、所述第二电子设备从所述第二电子设备所在的局域网内侦测所述更新通知。当所述第二电子设备侦测到所述更新通知时,执行步骤S22。
如前面所述,当所述第一电子设备的所述指定的第一App完成热更新时,所述第一电子设备每隔预设时间(例如5分钟或者10分钟)在所述第一电子设备所处的局域网内广播所述更新通知。
在一个实施例中,所述更新通知携带有,但不限于,所述指定的第一App的标识以及所述第一更新包的版本号。所述指定的第一App的标识是指所述指定的第一App在软件商店的应用ID,用来唯一标识所述指定的第一App。
在一个实施例中,所述第二电子设备每隔预设时间(例如2分钟或者5分钟)侦测所述局域网内的所述更新通知。
步骤S22、当从所述第二电子设备所在的局域网内侦测到所述更新通知时,所述第二电子设备根据所述更新通知确定是否要发出更新请求。
如前面所记载,所述更新请求为请求更新安装在所述第二电子设备的所述指定的第二App。
在一个实施例中,所述第二电子设备根据所述更新通知所包括的所述指定的第一App的应用ID及所述第一更新包的版本号来确定是否发出所述更新请求。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,所述第二电子设备确定无需发出所述更新请求。所述第二更新包是指用于更新升级所述指定的第二App的更新包。在一个实施例中,所述指定的第二App的标识是指所述指定的第二App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第二App,以使得所述指定的第二App在软件商店可以和其他App相区别。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,所述第二电子设备确定需发出所述更新请求。
步骤S23、于确定要发出所述更新请求时,所述第二电子设备向所述第一电子设备发出所述更新请求。
步骤S24、所述第二电子设备接收所述第一电子设备所发出的要求提供验证资料的请求,并于接收到所述要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备。
如前面所述,当所述第一电子设备接收到所述第二电子设备发送的所述更新请求时,所述第一电子设备向所述第二电子设备发出要求提供所述验证资料的请求。由此,所述第二电子设备可以接收到所述第一电子设备发送的要求提供所述验证资料的请求。所述验证资料用于校验所述第二电子设备是否有权限获取所述第一更新包。
在一个实施例中,所述验证资料可以为所述第二电子设备利用预设的加密算法(例如,DES算法)加密过的字符串。在一个实施例中,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
步骤S25、所述第二电子设备接收所述第一电子设备发送过来的所述第一更新包,执行所述第一更新包以对安装在所述第二电子设备的所述指定的第二App进行热更新。
如前面所述,所述第一电子设备利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述所述解密后的验证资料与预设的资料相符,所述第一电子设备则确定所述第二电子设备有权限获取所述第一更新包,并将所述第一更新包发送给所述第二电子设备。
在一个实施例中,所述第二电子设备还可以将所述第一更新包存储到第二电子设备。
综上所述,本发明实施例中所述的应用程序热更新方法,当从局域网内侦测到第一电子设备发出的更新通知时,向所述第一电子设备发出更新请求,并当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备,以及接收所述第一电子设备发送过来的第一更新包,执行所述第一更新包对安装在所述第二电子设备的所述指定的第二App进行热更新。利用本发明,直接从第一电子设备获取更新包,无需从服务器获取更新包,减少网络资源消耗、更新效率更快。
上述图2-3详细介绍了本发明的应用程序热更新方法,下面结合第4~7图,分别对实现所述应用程序热更新方法的软件装置的功能模块以及实现所述应用程序热更新方法的硬件装置架构进行介绍。
应所述了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
实施例四
参阅图4所示,是本发明实施例四提供的应用程序热更新装置的结构图。
在一些实施例中,所述应用程序热更新装置30运行于第一电子设备中。所述第一电子设备通过网络连接了第二电子设备。所述应用程序热更新装置30可以包括多个由程序代码段所组成的功能模块。所述应用程序热更新装置30中的各个程序段的程序代码可以存储于第一电子设备的存储器中,并由所述至少一个处理器所执行,以实现(详见图2描述)应用程序热更新。
本实施例中,所述应用程序热更新装置30根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:执行模块301、发送模块302、接收模块303及判断模块304。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
第一电子设备的执行模块301于指定的第一App(Application,应用程序)在所述第一电子设备中运行时,执行第一更新包对所述指定的第一App进行热更新,并保存所述第一更新包。
在一个实施例中,所述指定的第一App可以为安装在所述第一电子设备中的任何类型的App。例如所述指定的第一App可以为游戏。所述第一电子设备可以为手机、平板电脑等设备。
在一个实施例中,所述第一电子设备从服务器中获取所述第一更新包。
在一个实施例中,所述第一更新包可以用于对所述指定的第一App的一个或多个Bug进行修正,或者对所述指定的第一App的一项或多项功能进行增减或更新。
在一个实施例中,所述第一更新包对应一个版本号。例如,当所述第一更新包是所述指定的第一App的软件开发商首次发行的更新包时,所述第一更新包对应的版本号为“V1”,当所述第一更新包是所述指定的第一App的软件开发商再次发行的更新包时,所述第一更新包对应的版本号为“V2”,依此类推。
当所述第一电子设备的所述指定的第一App完成热更新时,所述第一电子设备的发送模块302在所述第一电子设备所处的局域网内广播一个更新通知。
在一个实施例中,所述更新通知携带有,但不限于,所述指定的第一App的标识以及所述第一更新包的版本号。所述指定的第一App的标识是指所述指定的第一App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第一App,以使得所述指定的第一App在软件商店可以和其他App相区别。
在一个实施例中,所述第一电子设备的发送模块302每隔预设时间(例如5分钟或者10分钟)广播一次所述更新通知。
所述第一电子设备的接收模块303接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App。
在一个实施例中,所述第二电子设备的接收模块303实时或每隔预设时间(例如10秒钟)侦测所述局域网内的所述更新通知。
当所述第二电子设备的接收模块303侦测到所述更新通知时,所述第二电子设备的判断模块304根据所述更新通知中所携带的所述指定的第一App的标识以及所述第一更新包的版本号来确定是否要发出所述更新请求。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,所述第二电子设备的判断模块304确定无需发出所述更新请求。所述第二更新包是指用于更新升级所述指定的第二App的更新包。在一个实施例中,所述指定的第二App的标识是指所述指定的第二App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第二App,以使得所述指定的第二App在软件商店可以和其他App相区别。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,所述第二电子设备的判断模块304确定需发出所述更新请求,并向所述第一电子设备发出所述更新请求。
当接收到所述第二电子设备发送过来的所述更新请求时,所述第一电子设备的发送模块302向所述第二电子设备发出要求提供验证资料的请求,所述验证资料用于校验所述第二电子设备是否有权限获取所述第一更新包。
在一个实施例中,所述验证资料可以为所述第二电子设备利用预设的加密算法(例如,DES算法)加密过的字符串。在一个实施例中,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
所述第一电子设备的接收模块303接收所述第二电子设备发出验证资料。所述判断模块304根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包。若所述判断模块304判断得出所述第二电子设备没有权限获取所述第一更新包,所述接收模块303接收所述第一电子设备所在局域网内的其他第二电子设备发送过来的所述更新请求。
在一个实施例中,所述判断模块304利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述解密后的验证资料与所述预设的资料相符,所述判断模块304则确定所述第二电子设备有权限获取所述第一更新包。若所述解密后的验证资料与所述预设的资料不相符,所述判断模块304则确定所述第二电子设备没有权限获取所述第一更新包。
在一个实施例中,所述预设的资料可以预先存储在所述第一电子设备中。在一个实施例中,所述预设的资料所携带的信息包括安装在所述第一电子设备的所述指定的第一App的开发商名称和所述指定的第一App名称。换句话来讲,所述判断模块304比较所述解密后的验证资料是否与所述预设的资料相符,也即是确定所述第一电子设备的所述指定的第一App是否和所述第二电子设备的所述指定的第二App是同一个App。在一个实施例中,当所述第一电子设备的所述指定的第一App的开发商名称和安装在所述第二电子设备的所述指定的第二App的开发商名称相同,以及所述第一电子设备的所述指定的第一App的名称和安装在所述第二电子设备的所述指定的第二App的名称相同时,所述判断模块304确定所述第二电子设备有权限获取所述第一更新包。当所述第一电子设备的所述指定的第一App的开发商名称和安装在所述第二电子设备的所述指定的第二App的开发商名称不相同,及/或所述第一电子设备的所述指定的第一App的名称和安装在所述第二电子设备的所述指定的第二App的名称不相同时,所述判断模块304确定所述第二电子设备没有权限获取所述第一更新包。
当所述判断模块304确定所述第二电子设备有权限获取所述第一更新包时,所述第一电子设备的发送模块302将所述第一更新包发送给所述第二电子设备,从而使得所述第二电子设备可以执行所述第一更新包来对安装在所述第二电子设备的所述指定的第一App进行热更新。
在一个实施例中,所述第二电子设备的发送模块302还可以将所述第一更新包进行存储,例如存储到所述第二电子设备的存储器中。
综上所述,本发明实施例中所述的应用程序热更新装置,在执行第一更新包对指定的第一App进行热更新后保存所述第一更新包,以及在所述第一电子设备所处的局域网内广播一个更新通知,并接收局域网内的第二电子设备发送过来的请求更新安装在所述第二电子设备的指定的第二App的更新请求。所述的应用程序热更新装置于确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备,从而使得所述第二电子设备可以执行所述第一更新包来对安装在所述第二电子设备的所述指定的第二App进行热更新。即使得第二电子设备无需从服务器来下载更新包,减少网络资源消耗、更新效率更快。
实施例五
参阅图5所示,是本发明实施例五提供的应用程序热更新装置的结构图。
在一些实施例中,所述应用程序热更新装置40运行于第二电子设备中。所述第二电子设备与第一电子设备通过网络建立通讯连接。所述应用程序热更新装置40可以包括多个由程序代码段所组成的功能模块。所述应用程序热更新装置40中的各个程序段的程序代码可以存储于第一电子设备的存储器中,并由所述至少一个处理器所执行,以实现(详见图3描述)所述第二电子设备的应用程序热更新。
本实施例中,所述应用程序热更新装置40根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:侦测模块401、确定模块402、发送模块403,及执行模块404。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
所述第二电子设备的侦测模块401从所述第二电子设备所在的局域网内侦测所述更新通知。
如前面所述,当所述第一电子设备的所述指定的第一App完成热更新时,所述第一电子设备每隔预设时间(例如5分钟或者10分钟)在所述第一电子设备所处的局域网内广播所述更新通知。
在一个实施例中,所述更新通知携带有,但不限于,所述指定的第一App的标识以及所述第一更新包的版本号。所述指定的第一App的标识是指所述指定的第一App在软件商店的应用ID,用来唯一标识所述指定的第一App。
在一个实施例中,所述侦测模块401每隔预设时间(例如2分钟或者5分钟)侦测所述局域网内的所述更新通知。
当所述侦测模块401侦测到所述更新通知时。所述第二电子设备的确定模块402根据所述更新通知确定是否要发出更新请求。
如前面所记载,所述更新请求为请求更新安装在所述第二电子设备的所述指定的第二App。
在一个实施例中,所述确定模块402根据所述更新通知所包括的所述指定的第一App的应用ID及所述第一更新包的版本号来确定是否发出所述更新请求。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,所述确定模块402确定无需发出所述更新请求。所述第二更新包是指用于更新升级所述指定的第二App的更新包。在一个实施例中,所述指定的第二App的标识是指所述指定的第二App在软件商店的应用ID,所述应用ID用来唯一标识所述指定的第二App,以使得所述指定的第二App在软件商店可以和其他App相区别。
在一个实施例中,当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,所述确定模块402确定需发出所述更新请求。
于确定要发出所述更新请求时,所述第二电子设备的发送模块403向所述第一电子设备发出所述更新请求。
所述第二电子设备的执行模块404接收所述第一电子设备所发出的要求提供验证资料的请求,并于接收到所述要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备。
如前面所述,当所述第一电子设备接收到所述第二电子设备发送的所述更新请求时,所述第一电子设备向所述第二电子设备发出要求提供所述验证资料的请求。由此,所述执行模块404可以接收到所述第一电子设备发送的要求提供所述验证资料的请求。所述验证资料用于校验所述第二电子设备是否有权限获取所述第一更新包。
在一个实施例中,所述验证资料可以为所述执行模块404利用预设的加密算法(例如,DES算法)加密过的字符串。在一个实施例中,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
所述第二电子设备的执行模块404接收所述第一电子设备发送过来的所述第一更新包,执行所述第一更新包以对安装在所述第二电子设备的所述指定的第二App进行热更新。
如前面所述,所述第一电子设备利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密,并比较所述解密后的验证资料是否与预设的资料相符。若所述所述解密后的验证资料与预设的资料相符,所述第一电子设备则确定所述第二电子设备有权限获取所述第一更新包,并将所述第一更新包发送给所述第二电子设备。
在一个实施例中,所述执行模块404还可以将所述第一更新包存储到第二电子设备。
综上所述,本发明实施例中所述的应用程序热更新装置,当从局域网内侦测到第一电子设备发出的更新通知时,向所述第一电子设备发出更新请求,并当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备,以及接收所述第一电子设备发送过来的第一更新包,执行所述第一更新包对安装在所述第二电子设备的所述指定的第二App进行热更新。利用本发明,直接从第一电子设备获取更新包,无需从服务器获取更新包,减少网络资源消耗、更新效率更快。
实施例六
参阅图6所示,为本发明实施例六提供的第一电子设备的结构示意图。在本发明较佳实施例中,所述第一电子设备3包括存储器31、至少一个处理器32、至少一条通信总线33、应用程序34。
本领域技术人员应所述了解,图6示出的第一电子设备的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述第一电子设备3还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述第一电子设备3包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。
需要说明的是,所述第一电子设备3仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器31用于存储程序代码和各种数据,例如安装在所述第一电子设备3中的应用程序热更新装置30、应用程序34,并在第一电子设备3的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器31包括只读存储器(Read-OnlyMemory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在一些实施例中,所述至少一个处理器32可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器32是所述第一电子设备3的控制核心(Control Unit),利用各种接口和线路连接整个第一电子设备3的各个部件,通过运行或执行存储在所述存储器31内的程序或者模块,以及调用存储在所述存储器31内的数据,以执行第一电子设备3的各种功能和处理数据,例如执行应用程序热更新的功能以对第一应用程序34进行热更新。
在一些实施例中,所述至少一条通信总线33被设置为实现所述存储器31以及所述至少一个处理器32等之间的连接通信。
尽管未示出,所述第一电子设备3还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器32逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述第一电子设备3还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应所述了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台第一电子设备(可以是手机,平板电脑等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图4,所述至少一个处理器32可执行所述第一电子设备3的操作装置以及安装的各类应用程序(如所述的应用程序热更新装置30、第一应用程序34)、程序代码等,例如,上述的各个模块。
所述存储器31中存储有程序代码,且所述至少一个处理器32可调用所述存储器31中存储的程序代码以执行相关的功能。例如,图4中所述的各个模块是存储在所述存储器31中的程序代码,并由所述至少一个处理器32所执行,从而实现所述各个模块的功能以达到对第一应用程序34进行热更新的目的。
在本发明的一个实施例中,所述存储器31存储多个指令,所述多个指令被所述至少一个处理器32所执行以实现对第一应用程序34进行热更新。
具体地,所述至少一个处理器32对上述指令的具体实现方法可参考图2对应实施例中相关步骤的描述,在此不赘述。
实施例七
参阅图7所示,为本发明实施例七提供的第二电子设备的结构示意图。在本发明较佳实施例中,所述第二电子设备4包括存储器41、至少一个处理器42、至少一条通信总线43、第二应用程序44。
本领域技术人员应所述了解,图7示出的第二电子设备的结构并不构成本发明实施例的限定,既可以是总线型结构,也可以是星形结构,所述第二电子设备4还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述第二电子设备4包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的终端,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。需要说明的是,所述第二电子设备4仅为举例,其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器41用于存储程序代码和各种数据,例如安装在所述第二电子设备4中的应用程序热更新装置40、第二应用程序44,并在第二电子设备4的运行过程中实现高速、自动地完成程序或数据的存取。所述存储器41包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在一些实施例中,所述至少一个处理器42可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述至少一个处理器42是所述第二电子设备4的控制核心(Control Unit),利用各种接口和线路连接整个第二电子设备4的各个部件,通过运行或执行存储在所述存储器41内的程序或者模块,以及调用存储在所述存储器41内的数据,以执行第二电子设备4的各种功能和处理数据,例如对第二应用程序44进行热更新。
在一些实施例中,所述至少一条通信总线43被设置为实现所述存储器41以及所述至少一个处理器42等之间的连接通信。
尽管未示出,所述第二电子设备4还可以包括给各个部件供电的电源(比如电池),优选的,电源可以通过电源管理装置与所述至少一个处理器42逻辑相连,从而通过电源管理装置实现管理充电、放电、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述第二电子设备4还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应所述了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
上述以软件功能模块的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台第二电子设备(可以是个人电脑,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分。
在进一步的实施例中,结合图5,所述至少一个处理器42可执行所述第二电子设备4的操作装置以及安装的各类应用程序(如所述的应用程序热更新装置40、应用程序44)、程序代码等,例如,上述的各个模块。
所述存储器41中存储有程序代码,且所述至少一个处理器42可调用所述存储器41中存储的程序代码以执行相关的功能。例如,图5中所述的各个模块是存储在所述存储器41中的程序代码,并由所述至少一个处理器42所执行,从而实现所述各个模块的功能以达到对第二应用程序44进行热更新的目的。
在本发明的一个实施例中,所述存储器41存储多个指令,所述多个指令被所述至少一个处理器42所执行以实现对第二应用程序44进行热更新。
具体地,所述至少一个处理器42对上述指令的具体实现方法可参考图3对应实施例中相关步骤的描述,在此不赘述。
在本发明所提供的几个实施例中,应所述理解到,所揭露的装置,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种应用程序热更新方法,应用于第一电子设备中,其特征在于,所述方法包括:
执行第一更新包对安装在所述第一电子设备中的指定的第一App进行热更新,并保存所述第一更新包;
在所述第一电子设备所处的局域网内广播一个更新通知;
接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;
向所述第二电子设备发出要求提供验证资料的请求;
接收所述第二电子设备发出的验证资料,并根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包;及
当确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。
2.如权利要求1所述的应用程序热更新方法,其特征在于,所述更新通知携带有所述指定的第一App的标识以及所述第一更新包的版本号。
3.如权利要求1所述的应用程序热更新方法,其特征在于,所述验证资料为利用预设的加密算法加密过的字符串,其中,所述根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包包括:
利用与所述预设的加密算法所对应的解密算法对所接收到的所述验证资料进行解密;
若所述解密后的验证资料与预设的资料相符,确定所述第二电子设备有权限获取所述第一更新包;及
若所述解密后的验证资料与所述预设的资料不相符,确定所述第二电子设备没有权限获取所述第一更新包。
4.一种应用程序热更新方法,应用于第二电子设备中,其特征在于,所述方法包括:
从所述第二电子设备所在的局域网内侦测第一电子设备发出的更新通知,其中,所述第一电子设备于更新完指定的第一App时发出所述更新通知;
当侦测到所述更新通知时,根据所述更新通知确定是否发出更新请求,其中,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;
于确定要发出所述更新请求时,向所述第一电子设备发出所述更新请求;
当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备;及
接收所述第一电子设备发送的第一更新包,执行所述第一更新包以对所述指定的第二App进行热更新。
5.如权利要求4所述的应用程序热更新方法,其特征在于,所述更新通知携带有所述指定的第一App的标识以及所述第一更新包的版本号,所述根据所述更新通知确定是否要发出更新请求包括:
当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,且所述第二电子设备存储的第二更新包的版本号等于所述更新通知中所携带的所述第一更新包的版本号时,确定无需发出所述更新请求,其中,所述第二更新包是指用于更新升级所述指定的第二App的更新包;及
当所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识不相同;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备所存储的所述第二更新包的版本号低于所述更新通知中所携带的所述第一更新包的版本号时;或者所述更新通知中所携带的所述指定的第一App的标识与所述指定的第二App的标识相同,但是,所述第二电子设备没有存储用于更新升级所述指定的第二App的更新包时,确定需发出所述更新请求。
6.如权利要求4所述的应用程序热更新方法,其特征在于,所述验证资料为利用预设的加密算法加密过的字符串,所述字符串所携带的信息包括安装在所述第二电子设备的所述指定的第二App的开发商名称和所述指定的第二App名称。
7.一种应用程序热更新装置,运行于第一电子设备中,其特征在于,所述应用程序热更新装置包括:
执行模块,用于执行第一更新包对安装在所述第一电子设备中的指定的第一App进行热更新,并保存所述第一更新包;
发送模块,用于在所述第一电子设备所处的局域网内广播一个更新通知;
接收模块,用于接收局域网内的第二电子设备发送过来的更新请求,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;
所述发送模块,还用于向所述第二电子设备发出要求提供验证资料的请求;
所述接收模块,还用于接收所述第二电子设备发出的验证资料;
判断模块,用于根据所接收的验证资料判断所述第二电子设备是否有权限获取所述第一更新包;及
所述发送模块,还用于当确定所述第二电子设备有权限获取所述第一更新包时,将所述第一更新包发送给所述第二电子设备。
8.一种应用程序热更新装置,运行于第二电子设备中,其特征在于,所述应用程序热更新装置包括:
侦测模块,用于从所述第二电子设备所在的局域网内侦测第一电子设备发出的更新通知,其中,所述第一电子设备于更新完指定的第一App时发出所述更新通知;
确定模块,用于当侦测到所述更新通知时,根据所述更新通知确定是否发出更新请求,其中,所述更新请求为请求更新安装在所述第二电子设备的指定的第二App;
发送模块,用于当确定要发出所述更新请求时,向所述第一电子设备发出所述更新请求;
所述发送模块,还用于当接收到所述第一电子设备所发出的要求提供验证资料的请求时,将所述验证资料发送给所述第一电子设备;及
执行模块,用于接收所述第一电子设备发送的第一更新包,执行所述第一更新包以对安装在所述第二电子设备的所述指定的第二App进行热更新。
9.一种电子设备,其特征在于,所述电子设备包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至3中任意一项所述应用程序热更新方法或实现如权利要求4至6所述应用程序热更新方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3中任意一项所述应用程序热更新方法或实现如权利要求4至6所述应用程序热更新方法。
CN201811271663.1A 2018-10-29 2018-10-29 应用程序热更新方法、装置、电子设备及存储介质 Pending CN109491684A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811271663.1A CN109491684A (zh) 2018-10-29 2018-10-29 应用程序热更新方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811271663.1A CN109491684A (zh) 2018-10-29 2018-10-29 应用程序热更新方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN109491684A true CN109491684A (zh) 2019-03-19

Family

ID=65693266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811271663.1A Pending CN109491684A (zh) 2018-10-29 2018-10-29 应用程序热更新方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN109491684A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312030A (zh) * 2021-06-15 2021-08-27 京东数科海益信息科技有限公司 构建应用程序的方法、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103716390A (zh) * 2013-12-25 2014-04-09 广西大学 一种数据分享方法及终端
CN104903857A (zh) * 2014-04-16 2015-09-09 华为技术有限公司 软件升级方法和终端
US20160196128A1 (en) * 2013-08-12 2016-07-07 Chigoo Interactive Technology Co., Ltd. Software updating method, system, and device
CN108388431A (zh) * 2018-02-13 2018-08-10 广东欧珀移动通信有限公司 应用程序热更新的控制方法、装置、存储介质及移动终端
CN108712281A (zh) * 2018-05-08 2018-10-26 广州优视网络科技有限公司 触发检测管理应用更新的方法、装置、存储介质和终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160196128A1 (en) * 2013-08-12 2016-07-07 Chigoo Interactive Technology Co., Ltd. Software updating method, system, and device
CN103716390A (zh) * 2013-12-25 2014-04-09 广西大学 一种数据分享方法及终端
CN104903857A (zh) * 2014-04-16 2015-09-09 华为技术有限公司 软件升级方法和终端
CN108388431A (zh) * 2018-02-13 2018-08-10 广东欧珀移动通信有限公司 应用程序热更新的控制方法、装置、存储介质及移动终端
CN108712281A (zh) * 2018-05-08 2018-10-26 广州优视网络科技有限公司 触发检测管理应用更新的方法、装置、存储介质和终端

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312030A (zh) * 2021-06-15 2021-08-27 京东数科海益信息科技有限公司 构建应用程序的方法、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN109359031B (zh) 多设备应用程序测试方法、装置、服务器及存储介质
CN110762775B (zh) 一种空调器的升级方法及空调器
CN109154890A (zh) 软件更新装置及软件更新系统
CN107846672A (zh) 多模IoT设备的通信模式选择方法、IoT设备及存储介质
CN106658756B (zh) 一种终端设备与热点连接的识别方法及装置
CN106970816B (zh) 一种软件升级处理方法、装置及音频播放设备
US8881177B2 (en) Communications driver management
CN107360633B (zh) 虚拟现实系统的配对连接方法、设备及虚拟现实系统
EP3702915B1 (en) Data processing method and device, storage medium, processor, and system
CN112019378B (zh) 一种故障排查方法及装置
CN109634630A (zh) 应用程序更新方法、装置、电子设备及存储介质
CN107615711A (zh) 用于事件传播的系统
CN102685679B (zh) 一种传输处理方法、装置及电子设备
CN104348583A (zh) 一种信息处理方法及电子设备
CN109491684A (zh) 应用程序热更新方法、装置、电子设备及存储介质
CN109343944A (zh) eSIM卡的数据处理方法、装置、终端及存储介质
CN109614186A (zh) 应用程序色彩切换方法、系统及终端设备
CN113727399A (zh) 一种目标小区确定方法及装置
US11758391B2 (en) User equipment (UE) identification in a wireless communication network
CN103685405A (zh) 网络服务系统及其更新固件的方法
US11889593B2 (en) Wireless communication service over an edge data network (EDN) between a user equipment (UE) and an application server (AS)
CN109144884A (zh) 程序错误定位方法、装置、及计算机可读存储介质
CN110401934A (zh) 一种管理设备的方法、管理设备及计算机可读存储介质
CN103220187B (zh) 一种三层接口状态的检测方法和装置
CN102891888B (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: 20190319