一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种android升级包升级方法、系统与流程

2022-06-15 23:28:07 来源:中国专利 TAG:


1.本发明应用于移动设备系统升级领域,具体是一种android升级包升级方法、系统。


背景技术:

2.recovery是android手机备份恢复功能,指的是一种可以对android内部数据或系统修改的模式。现阶段的android升级都是采用增量包在rcovery下进行升级,由于该升级只能是一个增量包一次升级,当遇到多个增量包进行升级时,升级过程显得漫长,重启过程变得冗余。


技术实现要素:

3.本发明所要解决的技术问题是针对现有技术的不足,提供一种android升级包升级方法、系统。
4.为解决上述技术问题,本发明的一种android升级包升级方法,其包括如下步骤:s1,对升级包进行安全检查,校验其合法性;s2,recovery程序配合指纹识别进行升级包脚本的解析;s3,block块应用程序对块信息进行替换。
5.作为一种可能的实施方式,进一步的,所述步骤s1具体包括如下步骤:s11,遍历升级包所在路径,对升级包的命名是否规范化进行判断:是,则进行下一步骤,否,则不进行升级包的安装;s12,对升级包的签名是否合法进行判断:是,则进行下一步骤,否,则不进行升级包的安装,同时反馈签名错误;s13,检查升级包与当前版本是否适配:是,则进行下一步骤,否,则不进行升级包的安装,同时反馈版本错误;s14,对升级包进行安装。
6.作为一种可能的实施方式,进一步的,所述步骤s2具体包括如下步骤:s21,recovery程序解析命令进入升级模式;s22,recovery程序中的脚本解析程序解析recoverysystem所传下来的命令判断解析到的是一个还是多个升级包,若升级包为一个,则执行步骤s23,若升级包为多个,则执行步骤s24;s23,使用ro.build.fingerprint进行指纹检查判断指纹识别是否通过;通过,则进行步骤s25;未通过,则结束recovery程序;s24,使用sys.finger属性指向的ro.random属性的值进行检查判断指纹识别是否通过;通过,则进行步骤s25;未通过,则结束recovery程序;s25,进行升级。
7.作为一种可能的实施方式,进一步的,所述步骤s24中的ro.random属性中的
random是一个随机数。
8.作为一种可能的实施方式,进一步的,所述步骤s25具体为:安装升级包块信息,构造一个新的指纹存放与ro.random中,构建一个sys.finger属性指向ro.random属性。
9.作为一种可能的实施方式,进一步的,所述步骤s3进行块信息替换时,在block块应用程序中,无论对应的块是否被升级过,都需要再次替换对应的块信息。
10.一种android升级包升级系统,其包括:升级包校验模块,用于对升级包进行安全检查,校验其合法性;升级包解析模块,预载有recovery程序,用于配合指纹识别进行升级包脚本的解析;块信息替换模块,预载有block块应用程序,用于对块信息进行替换。
11.作为一种可能的实施方式,进一步的,所述升级包校验模块包括:命名判断单元,用于遍历升级包所在路径对升级包的命名是否规范化进行判断;签名判断单元,用于对升级包的签名是否合法进行判断;版本判断单元,用于检查升级包与当前版本是否适配。
12.作为一种可能的实施方式,进一步的,所述升级包解析模块包括:模式调节单元,用于解析命令后调节程序进入升级模式;升级包数量判断单元,预载有脚本解析程序,用于解析recoverysystem所传下来的命令判断解析到的是一个还是多个升级包;单个升级包指纹识别判断单元,用于使用ro.build.fingerprint进行指纹检查判断指纹识别是否通过;多个升级包指纹识别判断单元,用于使用sys.finger属性指向的ro.random属性的值进行检查判断指纹识别是否通过;升级单元,用于安装升级包进行升级。
13.本发明采用以上技术方案,具有以下有益效果:本发明采用多个升级包一次升级的升级方法,大幅缩短了原有的升级时间,提高了升级工作的效率,解决了android系统升级多个ota增量包时升级效率低下的问题,同时对升级包命名规范与合法性检查,有效防止非法升级包尝试升级。假设开机启动一次需要花费的时间是a,升级一次花费时间是b,其中开机时间在实际过程中是大于升级时间的,若进行n个升级包升级。所花费的时间复杂度在无多个增量包包一次升级时:。在有多个增量包一次升级时:。 采用多个升级包一次升级后的时间复杂度将由原来的o(n)降为o(1),大大地提高了升级的性能与效率。
附图说明
14.下面结合附图与具体实施方式对本发明做进一步详细的说明:图1为本发明对升级包进行安全检查校验其合法性的步骤流程简图;图2为本发明recovery程序配合指纹识别进行升级包脚本的解析升级n-s图;图3为本发明block块应用程序n-s图。
具体实施方式
15.为使本发明实施方式的目的、技术方案和优点更加清楚,下面将结合本发明实施
方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述。
16.如图1-3所示,本发明提供了一种android升级包升级方法,其包括如下步骤:s1,对升级包进行安全检查,校验其合法性;s2,recovery程序配合指纹识别进行升级包脚本的解析;s3,block块应用程序对块信息进行替换。进行块信息替换时,在block块应用程序中,无论对应的块是否被升级过,都需要再次替换对应的块信息。
17.作为一种可能的实施方式,进一步的,所述步骤s1具体包括如下步骤:s11,升级解析程序会遍历升级包所在路径,对升级包的命名是否规范化进行判断:是,则进行下一步骤,否,则不进行升级包的安装;s12,对升级包的签名是否合法进行判断:是,则进行下一步骤,否,则不进行升级包的安装,同时反馈签名错误;s13,检查升级包与当前版本是否适配:是,则进行下一步骤,否,则不进行升级包的安装,同时反馈版本错误;s14,对升级包进行安装。
18.作为一种可能的实施方式,进一步的,所述步骤s2具体包括如下步骤:s21,recovery程序解析命令进入升级模式;s22,recovery程序中的脚本解析程序解析recoverysystem所传下来的命令判断解析到的是一个还是多个升级包,若升级包为一个,则执行步骤s23,若升级包为多个,则执行步骤s24;s23,使用ro.build.fingerprint进行指纹检查判断指纹识别是否通过;通过,则进行步骤s25;未通过,则结束recovery程序;s24,使用sys.finger属性指向的ro.random属性的值进行检查判断指纹识别是否通过;通过,则进行步骤s25;未通过,则结束recovery程序;上述步骤s24中的ro.random属性中的random是一个随机数。而不是一个名为“random”的字符串。
19.s25,进行升级。步骤s25具体为:安装升级包块信息,构造一个新的指纹存放与ro.random中,构建一个sys.finger属性指向ro.random属性。当无需要再进行的升级包时进行升级。
20.一种android升级包升级系统,其包括:升级包校验模块,用于对升级包进行安全检查,校验其合法性;所述升级包校验模块包括:命名判断单元,用于遍历升级包所在路径对升级包的命名是否规范化进行判断;签名判断单元,用于对升级包的签名是否合法进行判断;版本判断单元,用于检查升级包与当前版本是否适配。升级包解析模块,预载有recovery程序,用于配合指纹识别进行升级包脚本的解析;所述升级包解析模块包括:模式调节单元,用于解析命令后调节程序进入升级模式;升级包数量判断单元,预载有脚本解析程序,用于解析recoverysystem所传下来的命令判断解析到的是一个还是多个升级包;单个升级包指纹识别判断单元,用于使用ro.build.fingerprint进行指纹检查判断指纹识别是否通过;多个升级包指纹识别判断单元,用于使用sys.finger属性指向的ro.random属性的值进行检查判断指纹识别是否通过;升级单元,用于安装升级包进行升级。块信息替换模块,预载有block块应用程序,用于对块信息进行替换。
21.采用多个升级包一次升级的升级方法,大幅缩短了原有的升级时间,提高了升级工作的效率,解决了android系统升级多个ota增量包时升级效率低下的问题,同时对升级包命名规范与合法性检查,有效防止非法升级包尝试升级。假设开机启动一次需要花费的时间是a,升级一次花费时间是b,其中开机时间在实际过程中是大于升级时间的,若进行n个升级包升级。所花费的时间复杂度在无多个增量包包一次升级时:。在有多个增量包一次升级时:。 采用多个升级包一次升级后的时间复杂度将由原来的o(n)降为o(1),大大地提高了升级的性能与效率。
22.以上所述为本发明的实施例,对于本领域的普通技术人员而言,根据本发明的教导,在不脱离本发明的原理和精神的情况下凡依本发明申请专利范围所做的均等变化、修改、替换和变型,皆应属本发明的涵盖范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献