CN110879713B - 一种android端强加密插件热更新管理方法 - Google Patents
一种android端强加密插件热更新管理方法 Download PDFInfo
- Publication number
- CN110879713B CN110879713B CN201811036589.5A CN201811036589A CN110879713B CN 110879713 B CN110879713 B CN 110879713B CN 201811036589 A CN201811036589 A CN 201811036589A CN 110879713 B CN110879713 B CN 110879713B
- Authority
- CN
- China
- Prior art keywords
- plug
- encryption
- encrypted
- file
- description information
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 claims abstract description 58
- 230000008569 process Effects 0.000 claims abstract description 34
- 230000000694 effects Effects 0.000 claims abstract description 7
- 238000012795 verification Methods 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 19
- 238000011161 development Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 abstract description 27
- 241001122767 Theaceae Species 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000013496 data integrity verification Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- KDYFGRWQOYBRFD-UHFFFAOYSA-N succinic acid Chemical compound OC(=O)CCC(O)=O KDYFGRWQOYBRFD-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/14—Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种android端强加密插件热更新管理方法,包括步骤一:对已完成的插件进行加密处理,生成加密插件;步骤二:上传加密插件至服务端;步骤三:主动向服务端请求更新插件,并将加密插件存储到升级文件夹下;步骤四:加载加密插件;步骤五:立即生效新升级的插件。本发明避免了核心功能插件在整个流转和部署的过程中被破解,实现了主功能插件完善的版本管理和自校验功能,使整个的功能部署和升级的过程更加安全和完善;加密过程中实现了服务端和android端完整、严格的数据交换过程;实现了插件安装后立即生效的方法。
Description
技术领域
本发明涉及android功能插件升级技术领域,具体地说是一种android端强加密插件热更新管理方法。
背景技术
android系统app开发的过程中由于系统型号和版本很多,需要大量的适配和功能更新以及bug修复场景,app开发的过程中我们可以方便的通过RePlugin等android热更新框架实现android系统插件话热更新,但是热更新带来方便的同时带来了关键功能被反编译破解的安全隐患,同时由于没有具备完善的功能插件的版本控制技术,使得关键功能插件的版本管理混乱。
发明内容
本发明的目的是解决上述现有技术的不足,提供一种android端强加密插件热更新管理方法。
本发明解决其技术问题所采用的技术方案是:
一种android端强加密插件热更新管理方法,包括以下步骤:
步骤一:功能插件开发者在完成功能插件的开发后对已完成的插件进行加密处理,生成加密插件,并写入加密头;
步骤二:通过服务端增加加密插件的上传接口上传加密插件至服务端,并将上传的加密插件的时间戳加入到android端和服务端之间的心跳包中;
步骤三:android端收到服务端返回的心跳包后检查心跳包中的加密插件的时间戳,如果心跳包中的加密插件的时间戳和本地缓存的时间戳不一致,则主动向服务端请求更新插件,并将加密插件存储到升级文件夹下;
步骤四:加载加密插件;
步骤五:立即生效新升级的插件。
优选的,所述步骤一中加密头包括加密引擎版本信息、加密插件校验信息、加密插件描述信息大小和加密后插件的文件总大小;
加密引擎版本信息,用于判断生成加密插件的加密引擎版本号;
加密插件校验信息,用于校验加密后的插件是否被意外修改过或判断已完成的插件是否已经加密过;
加密插件描述信息大小,用于提取加密插件的描述信息;
加密后插件的文件总大小,用于对加密插件进行完整性校验。
进一步的,所述步骤一中生成加密插件的具体流程为:
步骤a、通过加密插件校验信息判断已完成的插件是否已经进行加密处理,如果已经进行加密处理,则不再进行加密处理,如果未进行加密处理,则执行步骤b;
步骤b、在需要加密的插件目录生成临时加密文件,用以存放未进行加密处理的插件的文本内容,临时文件名以未进行加密处理的插件的原有文件名+后缀.tmp处理,创建临时文件后使用秘钥通过tea加密算法进行加密处理;
步骤c、根据未进行加密处理的插件生成插件描述信息,并对插件描述信息通过tea加密算法进行加密处理;
步骤d、将加密后的插件描述信息大小写入加密头的加密插件描述信息大小对应的字段中,然后将加密后的插件描述信息大小、加密头大小和临时加密文件大小写入加密后插件的文件总大小对应的字段中;
步骤e、将完成的加密头和加密后的插件描述信息依次写入到加密插件中去,然后将临时加密文件存放的文本内容追加到加密插件中,生成加密插件。
进一步的,所述插件描述信息包括加密插件的版本号、插件支持android端宿主的起始版本、插件支持android端宿主的结束版本、插件的校验码、插件解密后的实际大小;所述插件的校验码用于对插件进行完整性校验。
进一步的,所述步骤二中加密插件上传服务端的具体流程为:读取需要上传插件的加密头,通过加密插件校验信息判断该插件是否是经过加密的插件,如果不是经过加密的插件,进行错误提示并终止上传过程,如果是经过加密的插件,则对该插件进行文件的一次完整性校验,如果文件内容不完整,则提示并终止该插件的上传动作,如果文件内容完整,则执行上传动作并获取加密后的插件描述信息并对其进行解密入库。
进一步的,所述一次完整性校验的具体方法为:通过读取需要上传插件的加密头获取加密后插件的文件总大小,将该上传插件的文件总大小与加密后插件的文件总大小进行比对,若一致,则说明文件内容完整,若不一致,则说明文件内容不完整。
进一步的,所述步骤四加载加密插件的具体过程为:android端宿主中插件加载模块会定时的枚举升级文件夹下的插件,如果发现有新的插件,获取插件描述信息中的加密插件的版本号信息,跟本地已加载的插件版本号信息进行比对,如果比本地已加载的插件版本号低或者相等,则中断操作并将该插件删除,如果比本地已加载的插件版本号高,则通过解密接口对新的插件进行解密处理,解密成功后,获取插件描述信息并进行二次完整性校验,如果校验失败,说明该插件不完整,直接删掉;如果校验成功,将加密插件的版本号信息写入本地配置文件备案。
进一步的,所述二次完整性校验的具体方法为:获取插件描述信息中插件解密后的实际大小与未进行加密处理的插件的文本内容的大小进行比较,若一致,则说明校验成功,若不一致,说明校验失败。
进一步的,所述步骤五立即生效新升级的插件的方法为:首先枚举加密插件对应的客户端的所有进程,仅保留当前进程,然后启动主功能服务,退出当前进程,主功能服务会加载新升级的插件并生效。
进一步的,所述步骤三中android端向服务端请求更新插件通过Http协议的Post请求发起,请求内容以Json格式描述;所述插件描述信息采用Json格式描述。
本发明在不影响android插件化更新的前提下通过强加密和校验方案避免了核心功能插件在整个流转和部署的过程中被破解,造成商业机密泄露的风险;实现了主功能插件完善的版本管理和自校验功能,使整个的功能部署和升级的过程更加安全和完善;加密过程中通过易扩展的Json描述数据实现了服务端和android端完整的,严格的数据交换过程;实现了基于扩展Json描述数据的插件安装后立即生效的方法。
附图说明
构成本发明的一部分附图用来提供对本发明的进一步理解。在附图中:
图1是本发明一种android端强加密插件热更新管理方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
缩略语和关键术语定义:
APK:APK是AndroidPackage的缩写,即Android安装包(apk),是android平台开发编译生成的应用安装包。
Json:JSON(JavaScript Object Notation,JS对象简谱)是一种轻量级的数据交换格式,使用“键”“值”的方式进行数据描述。
热更新,热修复:指不需要重启应用,用户无感知的前提下实现功能的调整和bug的修复。
RePlugin:360安全软件公司开源的一款android系统插件话组件,可以方便的实现android功能插件话部署。
宿主:加密插件的载体,相当于核心功能插件的“外壳”,进行加密插件的解密,校验和加载动作。
Http协议:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议,我们基于这个协议进行服务端和客户端的数据交换。
NDK:android开发底层c/c++开发的接口,能通过jni导出函数接口提供给Java层进行方便的调用。
ActivityManage:android活动管理接口,能够通过该接口枚举app的所有进程信息。
PID:进程标识,通常是一个整形数字,用于唯一标记一个活动的进程。
AlarmManager:android闹钟管理,能够通过该接口让android系统定时的执行特定的动作。
一种android端强加密插件热更新管理方法,包括以下步骤:
步骤一:功能插件开发者在完成功能插件的开发后对已完成的插件进行加密处理,生成加密插件,并写入加密头,加密头包括加密引擎版本信息、加密插件校验信息、加密插件描述信息大小和加密后插件的文件总大小;
加密引擎版本信息,用于判断生成加密插件的加密引擎版本号;
加密插件校验信息,用于校验加密后的插件是否被意外修改过或判断已完成的插件是否已经加密过;
加密插件描述信息大小,用于提取加密插件的描述信息;
加密后插件的文件总大小,用于对加密插件进行完整性校验。
加密头格式如下:
struct FileEncoderHeader
{
unsigned int m_uVersion;//加密引擎版本信息
unsigned int m_uVerify;//加密插件校验信息
unsigned int m_uDescSize;//加密插件描述信息大小
unsigned int m_uFileSize;//加密后插件的文件总大小
}
生成加密插件的具体流程为:
步骤a、通过加密插件校验信息判断已完成的插件是否已经进行加密处理,如果已经进行加密处理,则不再进行加密处理,如果未进行加密处理,则执行步骤b;
步骤b、在需要加密的插件目录生成临时加密文件,用以存放未进行加密处理的插件的文本内容,临时文件名以未进行加密处理的插件的原有文件名+后缀.tmp处理,创建临时文件后使用秘钥通过tea加密算法进行加密处理;
步骤c、根据未进行加密处理的插件生成插件描述信息,并对插件描述信息通过tea加密算法进行加密处理;插件描述信息以Json格式描述,具体如下:
{
"pluginVersion:":"插件版本",//加密插件的版本号
"hostStart":“998”,//插件支持android端宿主的起始版本
"hostEnd":"1111"//插件支持android端宿主的结束版本
“verify”:"校验码",//插件的校验码
"pluginSize":13232323//插件解密后的实际大小
}
所述插件描述信息包括加密插件的版本号、插件支持android端宿主的起始版本、插件支持android端宿主的结束版本、插件的校验码、插件解密后的实际大小。
pluginVersion字段是加密插件的版本号,android更新只能从低版本向高版本进行更新。
hostStart字段是插件支持android端宿主的起始版本,因为有的插件支持的宿主版本是一个范围而不是全部。
hostEnd字段是插件支持android端宿主的结束版本。
verify插件的校验码,用于框架对插件完整性校验。
pluginSize插件解密后的实际大小,用于框架对插件完整性校验。
步骤d、将加密后的插件描述信息大小写入加密头的加密插件描述信息大小对应的m_uDescSize字段中,然后将加密后的插件描述信息大小、加密头大小和临时加密文件大小写入加密后插件的文件总大小对应的m_uFileSize字段中;
步骤e、将完成的加密头和加密后的插件描述信息依次写入到加密插件中去,然后将临时加密文件存放的文本内容追加到加密插件中,生成加密插件,所述加密插件由加密头、加密过的插件描述信息和已进行加密处理的插件的文本内容三部分组成。
步骤二:通过服务端增加加密插件的上传接口上传加密插件至服务端,并将上传的加密插件的时间戳加入到android端和服务端之间的心跳包中;
加密插件上传服务端的具体流程为:读取需要上传插件的加密头,通过加密插件校验信息判断该插件是否是经过加密的插件,如果不是经过加密的插件,进行错误提示并终止上传过程,如果是经过加密的插件,则对该插件进行文件的一次完整性校验,如果文件内容不完整,则提示并终止该插件的上传动作,如果文件内容完整,则执行上传动作并获取加密后的插件描述信息并对其进行解密入库。校验成功之后根据加密插件头中的m_uDescSize字段抽取位于加密头后面的描述,该描述的起始位置即为加密插件头的长度,长度即为m_uDescSize大小,抽取出来的是加密后的插件描述信息,抽取出来之后对其进行解密获取原始的插件描述信息。抽取到插件信息后入库并将最新插件的时间戳加入到android端和升级服务端之间的心跳包中,android端收到时间戳变化过的标志即向升级服务器发起插件升级请求。
所述一次完整性校验的具体方法为:通过读取需要上传插件的加密头获取加密后插件的文件总大小,将该上传插件的文件总大小与加密后插件的文件总大小进行比对,若一致,则说明文件内容完整,若不一致,则说明文件内容不完整。
步骤三:android端收到服务端返回的心跳包后检查心跳包中的加密插件的时间戳,如果心跳包中的加密插件的时间戳和本地缓存的时间戳不一致,则主动向服务端请求更新插件,并将加密插件存储到升级文件夹下;
android端向服务端请求更新插件通过Http协议的Post请求发起,请求内容以Json格式描述,Json格式如下:
{
"devUnique":"设备标识"//设备标识
"pluginVersion":"1001",//android端本地插件版本
"hostVersion":“998”,//android端本地的宿主版本
}
pluginVersion字段是android端本地的插件版本号,hostVersion是插件宿主的版本号,服务端收到这个Json请求后会计算支持该宿主版本的最新插件版本,并将服务端存在的最新插件版本和请求Json中的pluginVersion比较,如果比pluginVersion更新(即版本号更高)即将新的插件作为Http请求回执反馈给请求android端,否则告诉android端,服务端没有更新的功能插件。
返回的Json格式如下:
{
"stat":0,
"size":3870544,
"update":"None",
"desc":"succ"
}
stat字段是请求状态,如果为0标识服务端有更新的功能插件,返回包中包含该插件内容,
其他值表示服务端没有更新的插件了。
size字段是插件的实际大小,反馈给android端用于做数据完整性校验。
update字段是服务端最新插件时间戳,android端收到后缓存到本地作为是否需要更新插件的标识。
desc字段是描述的文本信息,如果请求功能插件失败,这里是请求失败的原因。
如果android端请求插件成功,首先对请求的插件大小和Json中size大小进行对比,如果大小不一致说明数据不完整,删除文件重新进行下载,如果大小一致将文件存储到升级文件夹下等待升级模块进行功能插件的升级。
步骤四:加载加密插件,具体过程为:android端宿主中插件加载模块会通过NDK接口定时的枚举升级文件夹下的插件,如果发现有新的插件,获取插件描述信息中的加密插件的版本号信息,跟本地已加载的插件版本号信息进行比对,如果比本地已加载的插件版本号低或者相等,则中断操作并将该插件删除,如果比本地已加载的插件版本号高,则通过NDK接口对新的插件进行解密处理,解密成功后,获取插件描述信息并进行二次完整性校验,如果校验失败,说明该插件不完整,直接删掉;如果校验成功,将加密插件的版本号信息写入本地配置文件备案。
所述二次完整性校验的具体方法为:获取插件描述信息中插件解密后的实际大小与未进行加密处理的插件的文本内容的大小进行比较,若一致,则说明校验成功,若不一致,说明校验失败。
步骤五:立即生效新升级的插件,具体方法为:首先枚举加密插件对应的客户端的所有进程,仅保留当前进程,然后启动主功能服务,退出当前进程,主功能服务会加载新升级的插件并生效;即通过ActivityManage枚举自己app的包所有进程,如果PID是当前的进程将此进程结束掉,这样我们的app就只剩当前进程是活的了,然后通过AlarmManager在3秒后拉活主功能服务,然后退出当前的进程,新启动的进程自然就加载新的功能插件让新插件立即生效了,为了对用户影响最小,这一步操作可以在用户黑屏之后进行。
所述一种android端强加密插件热更新管理方法是基于Android系统的移动设备来实现的,所述移动设备包括处理器和存储器,所述处理器读取并执行存储器中实现android端强加密插件热更新管理方法的程序。
尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种android端强加密插件热更新管理方法,包括以下步骤:
步骤一:功能插件开发者在完成功能插件的开发后对已完成的插件进行加密处理,生成加密插件,并写入加密头;
步骤二:通过服务端增加加密插件的上传接口上传加密插件至服务端,并将上传的加密插件的时间戳加入到android端和服务端之间的心跳包中;
步骤三:android端收到服务端返回的心跳包后检查心跳包中的加密插件的时间戳,如果心跳包中的加密插件的时间戳和本地缓存的时间戳不一致,则主动向服务端请求更新插件,并将加密插件存储到升级文件夹下;
步骤四:加载加密插件;
步骤五:立即生效新升级的插件;
所述步骤一中加密头包括加密引擎版本信息、加密插件校验信息、加密插件描述信息大小和加密后插件的文件总大小;
加密引擎版本信息,用于判断生成加密插件的加密引擎版本号;
加密插件校验信息,用于校验加密后的插件是否被意外修改过或判断已完成的插件是否已经加密过;
加密插件描述信息大小,用于提取加密插件的描述信息;
加密后插件的文件总大小,用于对加密插件进行完整性校验。
2.根据权利要求1所述的一种android端强加密插件热更新管理方法,其特征在于:所述步骤一中生成加密插件的具体流程为:
步骤a、通过加密插件校验信息判断已完成的插件是否已经进行加密处理,如果已经进行加密处理,则不再进行加密处理,如果未进行加密处理,则执行步骤b;
步骤b、在需要加密的插件目录生成临时加密文件,用以存放未进行加密处理的插件的文本内容,临时文件名以未进行加密处理的插件的原有文件名+后缀.tmp处理,创建临时文件后使用秘钥通过加密算法进行加密处理;
步骤c、根据未进行加密处理的插件生成插件描述信息,并对插件描述信息通过加密算法进行加密处理;
步骤d、将加密后的插件描述信息大小写入加密头的加密插件描述信息大小对应的字段中,然后将加密后的插件描述信息大小、加密头大小和临时加密文件大小写入加密后插件的文件总大小对应的字段中;
步骤e、将完成的加密头和加密后的插件描述信息依次写入到加密插件中去,然后将临时加密文件存放的文本内容追加到加密插件中,生成加密插件。
3.根据权利要求2所述的一种android端强加密插件热更新管理方法,其特征在于:所述插件描述信息包括加密插件的版本号、插件支持android端宿主的起始版本、插件支持android端宿主的结束版本、插件的校验码、插件解密后的实际大小;所述插件的校验码用于对插件进行完整性校验。
4.根据权利要求1所述的一种android端强加密插件热更新管理方法,其特征在于:所述步骤二中加密插件上传服务端的具体流程为:读取需要上传插件的加密头,通过加密插件校验信息判断该插件是否是经过加密的插件,如果不是经过加密的插件,进行错误提示并终止上传过程,如果是经过加密的插件,则对该插件进行文件的一次完整性校验,如果文件内容不完整,则提示并终止该插件的上传动作,如果文件内容完整,则执行上传动作并获取加密后的插件描述信息并对其进行解密入库。
5.根据权利要求4所述的一种android端强加密插件热更新管理方法,其特征在于:所述一次完整性校验的具体方法为:通过读取需要上传插件的加密头获取加密后插件的文件总大小,将该上传插件的文件总大小与加密后插件的文件总大小进行比对,若一致,则说明文件内容完整,若不一致,则说明文件内容不完整。
6.根据权利要求1所述的一种android端强加密插件热更新管理方法,其特征在于:所述步骤四加载加密插件的具体过程为:android端宿主中插件加载模块会定时的枚举升级文件夹下的插件,如果发现有新的插件,获取插件描述信息中的加密插件的版本号信息,跟本地已加载的插件版本号信息进行比对,如果比本地已加载的插件版本号低或者相等,则中断操作并将该插件删除,如果比本地已加载的插件版本号高,则对新的插件进行解密处理,解密成功后,获取插件描述信息并进行二次完整性校验,如果校验失败,说明该插件不完整,直接删掉;如果校验成功,将加密插件的版本号信息写入本地配置文件备案。
7.根据权利要求6所述的一种android端强加密插件热更新管理方法,其特征在于:所述二次完整性校验的具体方法为:获取插件描述信息中插件解密后的实际大小与未进行加密处理的插件的文本内容的大小进行比较,若一致,则说明校验成功,若不一致,说明校验失败。
8.根据权利要求1所述的一种android端强加密插件热更新管理方法,其特征在于:所述步骤五立即生效新升级的插件的方法为:首先枚举加密插件对应的客户端的所有进程,仅保留当前进程,然后启动主功能服务,退出当前进程,主功能服务会加载新升级的插件并生效。
9.根据权利要求3或4或7所述的一种android端强加密插件热更新管理方法,其特征在于:所述步骤三中android端向服务端请求更新插件通过Http协议的Post请求发起,请求内容以Json格式描述;所述插件描述信息采用Json格式描述。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811036589.5A CN110879713B (zh) | 2018-09-06 | 2018-09-06 | 一种android端强加密插件热更新管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811036589.5A CN110879713B (zh) | 2018-09-06 | 2018-09-06 | 一种android端强加密插件热更新管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110879713A CN110879713A (zh) | 2020-03-13 |
CN110879713B true CN110879713B (zh) | 2023-06-20 |
Family
ID=69727469
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811036589.5A Active CN110879713B (zh) | 2018-09-06 | 2018-09-06 | 一种android端强加密插件热更新管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110879713B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112764827B (zh) * | 2020-12-31 | 2023-04-07 | 重庆广播电视大学重庆工商职业学院 | 一种具有安全验证的Java类热加载方法 |
CN112800418B (zh) * | 2020-12-31 | 2022-05-13 | 北京深思数盾科技股份有限公司 | 自定义程序集的文件保护方法及装置 |
CN115080077A (zh) * | 2021-03-01 | 2022-09-20 | 京东科技控股股份有限公司 | 插件更新方法、装置、电子设备、系统和存储介质 |
CN113391834A (zh) * | 2021-06-21 | 2021-09-14 | 网易(杭州)网络有限公司 | 数据更新方法、装置、电子设备和存储介质 |
CN114942774B (zh) * | 2022-07-26 | 2022-11-08 | 中恒信息科技(广州)有限公司 | 一种基于bim建模软件的插件功能的热更新方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468562A (zh) * | 2014-12-03 | 2015-03-25 | 南京信息工程大学 | 一种面向移动应用透明的数据安全保护便携式终端 |
CN105242910A (zh) * | 2014-06-24 | 2016-01-13 | 深圳市茁壮网络股份有限公司 | 基于中间件插件框架的插件状态控制方法及客户端 |
CN105871698A (zh) * | 2016-05-31 | 2016-08-17 | 北京交通大学 | 一种即时通讯服务的管理方法与系统 |
CN106095458A (zh) * | 2016-06-20 | 2016-11-09 | 腾讯科技(深圳)有限公司 | 一种应用程序中插件的管理方法和装置 |
WO2017008541A1 (zh) * | 2015-07-14 | 2017-01-19 | 伍威 | 一种融合VoIP电话功能的手机通讯录系统 |
WO2017118334A1 (zh) * | 2016-01-08 | 2017-07-13 | 阿里巴巴集团控股有限公司 | 一种日志收集客户端及其升级方法 |
CN107273151A (zh) * | 2017-05-25 | 2017-10-20 | 西安理工大学 | 一种安全的Android App功能插件化方法 |
CN107426309A (zh) * | 2017-07-17 | 2017-12-01 | 北京深思数盾科技股份有限公司 | 一种信息同步方法、装置及系统 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7095858B2 (en) * | 2001-05-10 | 2006-08-22 | Ranco Incorporated Of Delaware | System and method for securely upgrading firmware |
JP4864557B2 (ja) * | 2006-06-15 | 2012-02-01 | 富士通株式会社 | ソフトウェアの更新処理プログラム及び更新処理装置 |
CN102707977A (zh) * | 2012-05-17 | 2012-10-03 | 江苏中科梦兰电子科技有限公司 | 一种基于Android应用软件的增量升级方法 |
CN103297429B (zh) * | 2013-05-23 | 2016-12-28 | 北京大学 | 一种嵌入式升级文件传输方法 |
CN103684780B (zh) * | 2013-11-08 | 2017-02-15 | 国家电网公司 | 基于域的文件加密防护方法 |
CN105224874B (zh) * | 2014-06-24 | 2018-06-15 | 深圳市茁壮网络股份有限公司 | 基于中间件插件框架的插件安全控制方法及客户端 |
CN106933548B (zh) * | 2015-12-29 | 2021-01-12 | 阿里巴巴集团控股有限公司 | 全局信息获取、处理及更新、方法、装置和系统 |
CN108021427A (zh) * | 2017-11-23 | 2018-05-11 | 国家电网公司 | 基于Docker的信息系统部署及升级管理方法 |
-
2018
- 2018-09-06 CN CN201811036589.5A patent/CN110879713B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105242910A (zh) * | 2014-06-24 | 2016-01-13 | 深圳市茁壮网络股份有限公司 | 基于中间件插件框架的插件状态控制方法及客户端 |
CN104468562A (zh) * | 2014-12-03 | 2015-03-25 | 南京信息工程大学 | 一种面向移动应用透明的数据安全保护便携式终端 |
WO2017008541A1 (zh) * | 2015-07-14 | 2017-01-19 | 伍威 | 一种融合VoIP电话功能的手机通讯录系统 |
WO2017118334A1 (zh) * | 2016-01-08 | 2017-07-13 | 阿里巴巴集团控股有限公司 | 一种日志收集客户端及其升级方法 |
CN105871698A (zh) * | 2016-05-31 | 2016-08-17 | 北京交通大学 | 一种即时通讯服务的管理方法与系统 |
CN106095458A (zh) * | 2016-06-20 | 2016-11-09 | 腾讯科技(深圳)有限公司 | 一种应用程序中插件的管理方法和装置 |
CN107273151A (zh) * | 2017-05-25 | 2017-10-20 | 西安理工大学 | 一种安全的Android App功能插件化方法 |
CN107426309A (zh) * | 2017-07-17 | 2017-12-01 | 北京深思数盾科技股份有限公司 | 一种信息同步方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110879713A (zh) | 2020-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110879713B (zh) | 一种android端强加密插件热更新管理方法 | |
US20240340623A1 (en) | Method for sharing application between terminals, and terminal | |
TWI359597B (en) | Method,computer system ,and computer-readable medi | |
WO2016000493A1 (zh) | 一种安全终端的双芯片方案的固件更新方法 | |
WO2015184891A1 (zh) | Android系统的安全管控方法、装置及其系统 | |
JP6458133B2 (ja) | アプリケーションプログラムの修復方法、装置及び記録媒体 | |
US20150378714A1 (en) | Providing Context-Specific Software Updates to Client Applications | |
CN108845812A (zh) | 插件更新方法、装置、计算机设备和存储介质 | |
WO2008154862A1 (fr) | Procédé de gestion pour un système de terminal intelligent et terminal intelligent | |
US20160170735A1 (en) | Operating system updating method by using a checklist | |
US8544053B2 (en) | System and method for upgrading a multiprocessor set-top box device with a monolithilic firmware image | |
US11003435B2 (en) | Manifest trialing techniques | |
CN106559223B (zh) | 应用程序签名方法及装置 | |
CN104395879A (zh) | 在运行具有握手的客户端界面时的自动更新 | |
US20210234686A1 (en) | Information processing device, information processing method, and storage medium | |
JP2023525576A (ja) | ソフトウェア更新のための認証キーの制御範囲 | |
CN106709281B (zh) | 补丁发放和获取方法、装置 | |
US20060075401A1 (en) | Patch installation control | |
CN112637307B (zh) | 文件更新方法、系统、计算机设备及存储介质 | |
CN112788084B (zh) | 应用程序安装包下载方法、推送方法、装置和计算机设备 | |
CN110543323B (zh) | 一种应用程序修复方法及装置 | |
CN112416395A (zh) | 一种热修复更新方法和装置 | |
CN105141586B (zh) | 一种对用户进行验证的方法和系统 | |
WO2017036197A1 (zh) | 一种网元模型管理方法及装置 | |
CN110309655B (zh) | 一种检测app更新过程中安全性的方法以及检测装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 | ||
PP01 | Preservation of patent right |
Effective date of registration: 20231113 Granted publication date: 20230620 |
|
PP01 | Preservation of patent right |