CN109165048A - 基于android系统的升级后快速启动方法 - Google Patents

基于android系统的升级后快速启动方法 Download PDF

Info

Publication number
CN109165048A
CN109165048A CN201811184179.5A CN201811184179A CN109165048A CN 109165048 A CN109165048 A CN 109165048A CN 201811184179 A CN201811184179 A CN 201811184179A CN 109165048 A CN109165048 A CN 109165048A
Authority
CN
China
Prior art keywords
usb flash
flash disk
data
bytecode
android system
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
CN201811184179.5A
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.)
Sichuan Changhong Electric Co Ltd
Original Assignee
Sichuan Changhong Electric 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 Sichuan Changhong Electric Co Ltd filed Critical Sichuan Changhong Electric Co Ltd
Priority to CN201811184179.5A priority Critical patent/CN109165048A/zh
Publication of CN109165048A publication Critical patent/CN109165048A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种基于android系统的升级后快速启动方法,包括:将android系统编译生成的镜像文件写入终端;重新启动终端进入Recovery模式,并挂载U盘;Recovery模式下将虚拟逻辑设备节点的block数据,生成字节码数据并写入U盘;将字节码数据以img镜像文件方式导出,并替换android系统编译生成的镜像文件中;再次通过编译服务器进行U盘升级文件打包,生成U盘刷机程序进行刷机。本发明在Recovery模式下,对系统运行生成的字节码数据导出,高效和安全的实现了对字节码数据精准下载,并通过img镜像文件替换和重新二次构建升级文件的方式制作并生成到新的U盘升级文件,实现了刷机程序升级后,无需再次进行系统的字节码优化生成,极大提高了U盘升级后的快速启动。

Description

基于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文件目录下的字节码优化数据是否完备,然后通过串口命令reboot Recovery重新启动系统并强制进入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系统智能电视系统刷机时间对比如下表:
表1 android 5.1系统智能电视系统刷机时间对比表
通过实施后的效果比较,大幅度减小了U盘刷机后的总启动时间。对应生产厂在线生产和售后U盘升级效率等都要较大的性能提升。
尽管这里参照本发明的解释性实施例对本发明进行了描述,上述实施例仅为本发明较佳的实施方式,本发明的实施方式并不受上述实施例的限制,应该理解,本领域技术人员可以设计出很多其他的修改和实施方式,这些修改和实施方式将落在本申请公开的原则范围和精神之内。

Claims (2)

1.一种基于android系统的升级后快速启动方法,其特征在于,包括:
步骤S100:将android系统编译生成的镜像文件写入终端;
步骤S200:重新启动终端进入Recovery模式,并挂载U盘;
步骤S300:Recovery模式下将虚拟逻辑设备节点的block数据,生成字节码数据并写入U盘;
步骤S400:将字节码数据以img镜像文件方式导出,并替换android系统编译生成的镜像文件中;
步骤S500:再次通过编译服务器进行U盘升级文件打包,生成U盘刷机程序进行刷机。
2.根据权利要求1所述的基于android系统的升级后快速启动方法,其特征在于,所述步骤S300具体为:
步骤S310:复制虚拟逻辑设备节点的第一个block数据,并对该数据压缩后生成字节码数据,写入U盘文件中;
步骤S320:检查虚拟逻辑设备节点下是否还有下一个block数据,如果存在,则返回步骤S310,否则进入下一步;
步骤S330:对压缩后生成的字节码数据全部以img镜像文件方式导出。
CN201811184179.5A 2018-10-11 2018-10-11 基于android系统的升级后快速启动方法 Pending CN109165048A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811184179.5A CN109165048A (zh) 2018-10-11 2018-10-11 基于android系统的升级后快速启动方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811184179.5A CN109165048A (zh) 2018-10-11 2018-10-11 基于android系统的升级后快速启动方法

Publications (1)

Publication Number Publication Date
CN109165048A true CN109165048A (zh) 2019-01-08

Family

ID=64877858

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811184179.5A Pending CN109165048A (zh) 2018-10-11 2018-10-11 基于android系统的升级后快速启动方法

Country Status (1)

Country Link
CN (1) CN109165048A (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252363A (zh) * 2013-06-25 2014-12-31 上海博泰悦臻电子设备制造有限公司 基于Android系统的车载系统的快速启动方法
CN104484207A (zh) * 2014-12-23 2015-04-01 上海斐讯数据通信技术有限公司 交换机的镜像升级方法及适用的linux操作系统和交换机
CN104866365A (zh) * 2015-06-12 2015-08-26 联想(北京)有限公司 提升开机速度的方法、装置及电子设备
CN105138382A (zh) * 2015-09-24 2015-12-09 广东欧珀移动通信有限公司 一种Android系统升级的方法及终端
CN105528229A (zh) * 2015-12-16 2016-04-27 广东欧珀移动通信有限公司 提高移动终端首次开机速度的方法及装置
CN105677335A (zh) * 2015-12-29 2016-06-15 广东欧珀移动通信有限公司 提高移动终端首次开机速度的方法及装置
US20170220335A1 (en) * 2016-02-02 2017-08-03 ZeroTurnaround AS System and Method for Fast Initial and Incremental Deployment of Apps
WO2017128589A1 (zh) * 2016-01-26 2017-08-03 中兴通讯股份有限公司 可运行文件生成方法、art虚拟机运行方法和装置
CN107742078A (zh) * 2017-05-04 2018-02-27 四川大学 一种通用的dex自动脱壳方法与系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104252363A (zh) * 2013-06-25 2014-12-31 上海博泰悦臻电子设备制造有限公司 基于Android系统的车载系统的快速启动方法
CN104484207A (zh) * 2014-12-23 2015-04-01 上海斐讯数据通信技术有限公司 交换机的镜像升级方法及适用的linux操作系统和交换机
CN104866365A (zh) * 2015-06-12 2015-08-26 联想(北京)有限公司 提升开机速度的方法、装置及电子设备
CN105138382A (zh) * 2015-09-24 2015-12-09 广东欧珀移动通信有限公司 一种Android系统升级的方法及终端
CN105528229A (zh) * 2015-12-16 2016-04-27 广东欧珀移动通信有限公司 提高移动终端首次开机速度的方法及装置
CN105677335A (zh) * 2015-12-29 2016-06-15 广东欧珀移动通信有限公司 提高移动终端首次开机速度的方法及装置
WO2017128589A1 (zh) * 2016-01-26 2017-08-03 中兴通讯股份有限公司 可运行文件生成方法、art虚拟机运行方法和装置
US20170220335A1 (en) * 2016-02-02 2017-08-03 ZeroTurnaround AS System and Method for Fast Initial and Incremental Deployment of Apps
CN107742078A (zh) * 2017-05-04 2018-02-27 四川大学 一种通用的dex自动脱壳方法与系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵安璞: "《 基于差分镜像优化算法的Android系统升级架构设计与实现》", 《万方智搜在线平台》 *

Similar Documents

Publication Publication Date Title
CN104793946B (zh) 基于云计算平台的应用部署方法和系统
CN103744709B (zh) 补丁加载方法及装置
CN107506219A (zh) 一种基于Android系统的通用版本升级方法
CN104267978B (zh) 一种生成差分包的方法及装置
CN103077043B (zh) 一种快速启动及运行Linux的方法
US20200249925A1 (en) On-demand loading of dynamic scripting language code for reduced memory usage
CN105224370A (zh) 一种加载elf文件的方法和装置
US10248409B1 (en) Limiting the effects of source code patches on corresponding native-code patches
CN103019787A (zh) 函数调用关系确定方法、热补丁升级方法及装置
CN110442371A (zh) 一种发布代码的方法、装置、介质及计算机设备
CN111078279A (zh) 字节码文件的处理方法、装置、设备及存储介质
CN115291946A (zh) 鸿蒙系统移植方法、装置、电子设备及可读介质
CN104133743B (zh) 一种将文件烧录到emmc芯片的方法及装置
CN101334737A (zh) 一种嵌入式设备的启动或复位方法
CN112000334A (zh) 页面开发方法、装置、服务器及存储介质
US9588884B2 (en) Systems and methods for in-place reorganization of device storage
US20070169028A1 (en) Partitioning of non-volatile memories for vectorization
CN108694052B (zh) 一种固件升级方法、固件升级装置及固件升级系统
CN109426511B (zh) 软核更新方法和系统
CN109558121A (zh) 接口驱动程序的开发方法、装置、设备及存储介质
JP4768984B2 (ja) コンパイル方法、コンパイルプログラムおよびコンパイル装置
WO2023169164A1 (zh) 应用程序的修复方法、装置、计算机设备以及存储介质
CN104503776A (zh) 一种在APP开发平台上快速打包android应用程序的方法
CN109165048A (zh) 基于android系统的升级后快速启动方法
CN113721928B (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: 20190108