基于android系统的升级后快速启动方法与流程

文档序号:16536073发布日期:2019-01-08 19:54阅读:476来源:国知局
基于android系统的升级后快速启动方法与流程

本发明涉及智能电视机技术领域,具体的说,是一种基于android系统的升级后快速启动方法。



背景技术:

随着这几年android智能电视市场整体平稳增长和软件功能的更新迭代,u盘刷机方式也越来越普及而且刷机包也越来越庞大。目前刷机只是将系统和应用刷入智能平台终端中,然后再通过android系统跨平台虚拟机dalvik(具体硬件平台相关)通过dexopt转化成适用该平台的另一个格式odex(字节码),并存在/data/dalvik-cache里面,而且转化和存储占整个刷机时间的70%以上。为此优化字节码转化时间,对系统刷机后实现快速启动显得尤为重要。



技术实现要素:

本发明的目的在于提供一种基于android系统的升级后快速启动方法,用于解决现有技术中u盘刷机后系统和应用需要通过android系统跨平台虚拟机转换为适用于平台的字节码时转化时间较长的问题。

本发明通过下述技术方案解决上述问题:

一种基于android系统的升级后快速启动方法,包括:

步骤s100:将android系统编译生成的镜像文件写入终端;

步骤s200:重新启动终端进入recovery模式,并挂载u盘;

步骤s300:recovery模式下将虚拟逻辑设备节点的block数据,生成字节码数据并写入u盘;

步骤s400:将字节码数据以img镜像文件方式导出,并替换android系统编译生成的镜像文件中;

步骤s500:再次通过编译服务器进行u盘升级文件打包,生成u盘刷机程序进行刷机。

通过recovery模式下,对系统运行生成的字节码部分(该部分跨平台编译器无法实现事前生成)进行虚拟逻辑设备节点下的数据导出,高效和安全的实现了对字节码数据精准下载,并通过img镜像文件替换和重新二次构建升级文件的方式制作并生成新的u盘升级文件,实现了刷机程序升级后,无需再次进行系统的字节码优化生成,极大提高了u盘升级后的快速启动。本方法也可以应用于手机、电视、机顶盒、平板电脑等android平台

进一步地,所述步骤s300具体为:

步骤s310:复制虚拟逻辑设备节点的第一个block数据,并对该数据压缩后生成字节码数据,写入u盘文件中;

步骤s320:检查虚拟逻辑设备节点下是否还有下一个block数据,如果存在,则返回步骤s310,否则进入下一步;

步骤s330:对压缩后生成的字节码数据全部以img镜像文件方式导出。

具体为读取该节点的第一个block数据,并通过gzip对该数据压缩后,并写入u盘文件中;检查该节点下是否还有下一个block数据,如果存在需继续读取拷贝下一个block数据,并继续执行压缩命令循环写入u盘镜像文件,直至该节点下所有block文件均已写入,完成对字节码数据全部导出(以img镜像文件方式)。

本发明与现有技术相比,具有以下优点及有益效果:

本发明通过recovery模式下,对系统运行生成的字节码部分(该部分跨平台编译器无法实现事前生成)进行设备节点下的数据导出,高效和安全的实现了对字节码数据精准下载,并通过img镜像文件替换和重新二次构建升级文件的方式制作并生成到新的u盘升级文件,实现了刷机程序升级后,无需再次进行系统的字节码优化生成,极大提高了u盘升级后的快速启动。

附图说明

图1为本发明的流程图。

具体实施方式

下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。

实施例1:

结合附图1所示,一种基于android系统的升级后快速启动方法,

a1、将android系统编译生成的目标代码(未优化的)写入中终端平台中,等待完成android系统的优化节码。

a2、重新启动终端平台进入进入recovery模式,并挂载u盘。

a3、通过recovery下的虚拟逻辑设备节点,将包含生成的字节码数据全部导出下载到u盘中。具体为读取该节点的第一个block数据,并通过gzip对该数据压缩后,并写入u盘文件中;检查该节点下是否还有下一个block数据,如果存在需继续读取拷贝下一个block数据,并继续执行压缩命令循环写入u盘镜像文件,直至该节点下所有block文件均已写入,完成对字节码数据全部导出(以img镜像文件方式)。

a4、将导出字节码数据(img镜像文件)替换到对应andriod系统编译生成的镜像文件中,这样系统编译生成的输出镜像文件中就包含了平台下要生成的字节码数据。

a5、再次通过编译服务器进行一次u盘升级文件打包,这样生成出来的u盘刷机程序因包含了字节码部分,节约了刷机后要转化生成字节码的时间。

本方法通过recovery模式下,对系统运行生成的字节码部分(该部分跨平台编译器无法实现事前生成)进行设备节点下的数据导出。高效和安全的实现了对字节码数据精准下载,并通过img替换和重新二次构建升级文件的方式制作并生成到新的u盘升级文件。实现了刷机程序升级后,无需再次进行系统的字节码优化生成,极大提高了u盘升级后的快速启动。

实施例2:

一种基于android系统的升级后快速启动方法,具体包括:

b1、将android系统编译生成的各逻辑分区数据进行打包为u盘升级文件,并通过u盘将该升级文件刷机到电视机终端平台中,通过log信息确认系统完成硬件平台的字节码优化过程。

b2、通过串口调试工装和工具,连接到电视机终端平台上,察看data/dalvik-cache文件目录下的字节码优化数据是否完备,然后通过串口命令rebootrecovery重新启动系统并强制进入recovery模式,并在recovery系统中通过mkdir创建挂载目录和mount挂载u盘。

b3、在recovery下通过包含该字节码优化数据的虚拟逻辑分区设备节点的映射(如:data分区对应/dev/block/mmcblk0p18)只将该单个逻辑分区数据全部导出并下载到u盘中。具体为读取该节点的第一个block数据,并通过gzip对该数据压缩后,并写入u盘文件中;检查该节点下是否还有下一个block数据,如果存在需继续读取拷贝下一个block数据,并继续执行压缩命令循环写入u盘镜像文件,直至该节点下所有block文件均已写入。完成对字节码数据(以img镜像文件方式)全部导出。

b4、将导出数据(img镜像文件)替换到对应andriod原生编译生成的镜像分区文件中(如:\out\target\product\下的userdata.img中,一般来说这部分文件比编译生成数据的分区文件要大得多)。

b5、通过编译服务器再次进行一次u盘升级文件打包,这样生成出来的u盘刷机程序因包含了字节码部分,节约了刷机后要转化生成字节码的时间。

android5.1系统智能电视系统刷机时间对比如下表:

表1android5.1系统智能电视系统刷机时间对比表

通过实施后的效果比较,大幅度减小了u盘刷机后的总启动时间。对应生产厂在线生产和售后u盘升级效率等都要较大的性能提升。

尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1