CN103577211A - 一种新的Android ROM系统打包和烧录、更新方式 - Google Patents
一种新的Android ROM系统打包和烧录、更新方式 Download PDFInfo
- Publication number
- CN103577211A CN103577211A CN201210279457.1A CN201210279457A CN103577211A CN 103577211 A CN103577211 A CN 103577211A CN 201210279457 A CN201210279457 A CN 201210279457A CN 103577211 A CN103577211 A CN 103577211A
- Authority
- CN
- China
- Prior art keywords
- android
- burning
- rom
- file
- subregion
- 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
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开一种新的Android ROM系统打包和烧录、更新方式提供了一种对Android ROM系统整体烧录和更新的解决方案。能够有效的提高Android ROM系统的烧录效率,降低烧录过程中复杂程度,同时也能保证烧录的正确性,从而有力的避免了当前Android ROM系统烧录的各种问题。所述的打包方式将Android ROM所有需要用到的文件包括分区表,uboot,uboot环境变量,Linux内核,uramdisk,system,data,recovery等按照特定的文件格式集成到一个单一的文件内,并通过CRC校验码确保正确性和完整性。实现了Android平板电脑或Android智能手机在开发、使用过程中,Android ROM快速、高效、安全的发布、烧录和更新的目标。
Description
技术领域
本发明涉及电子行业的软件领域,特别是Android系统开发领域,涉及到分区表,uboot,uboot环境变量,Linux内核,uramdisk,Android文件系统,具体的说就是利用一种新的打包方式把Android ROM版本信息,发布时间,分区表,uboot,uboot环境变量,Linux内核,uramdisk和Android的system,data,cache,recovery分区,另外还有CRC校验信息等打包到一个单一的文件,该文件可以被烧录或者更新到Android平板电脑或智能手机等移动互联网设备。
背景技术
随着美国谷歌公司的Android系统的问世,搭载Android系统的各种移动互联网设备如雨后春笋般出现,市场上随处都可以看到各种各样的Android平板电脑和Android智能手机。而Android的原生系统并没有提供非常完善的Android ROM烧录和系统更新功能,Android ROM的不同组成部分在存储设备中是不连续的,在烧录或更新时需要将这些不同的组成部分分批次、分多个步骤烧录或更新到指定的存储设备地址中,非常繁琐,烧录和更新时必须非常小心、细致,导致效率低下,并且容易出错。同时这些步骤(比如分区)等需要人手工参与,无法自动完成。而且发布ROM的时候需要分多个文件发布,容易造成不便和混乱。在这个背景下本公司开发了一种新的Android ROM打包方式,解决了上述问题。
发明内容
本发明一种新的Android ROM系统打包和烧录、更新方式,正如背景技术中所述,能够解决现存技术的不足之处,实现集成式一体化的烧录与更新。
为了解决上述的技术问题,本发明采用的技术方案是提供一种一体化的集成方法,其特征在于将Android ROM需要的所有文件放置在一个单一的文件内,称为打包文件。然后通过烧录程序或更新程序,实现Android ROM的烧录或更新。
所述的一种新的Android ROM系统打包和烧录、更新方式主要有以下的一些步骤来实现。
步骤一,确定需要打包的原生Android ROM数据,即打包的原材料或内容。这些包括以文件形式存在的uboot、Linux内核、system分区、data分区、cache分区、recovery分区等。通常这些是通过编译uboot、Linux内核或Android OS源代码来得到的。
步骤二,创建或编辑一个配置文件。这个配置文件包含了Android ROM的版本信息、发布日期等,更主要的,这个配置文件指定了ROM中各个组成部分在存储设备中的位置和烧录方式,这些信息将被打包进打包文件中,以便烧录和系统更新程序能够根据这些信息正确的烧录和更新ROM。配置文件是纯文本文件,用普通的文本编辑器即可以编辑。
步骤三,运行打包程序。打包程序根据配置文件中的信息,将分散的ROM的不同组成部分,按照特定的格式合并成一个单一的文件,即打包文件。同时对打包文件做CRC校验,确保文件的完整、正确性。所生成的打包文件可以用于ROM的发布,以便后续的烧录或系统更新。
步骤四,烧录程序按照特定的文件格式解析发布的Android ROM打包文件,根据文件中包含的信息,将ROM的各个组成部分按照指定的位置和方式烧写到Nand flash或SD卡中。
步骤五,Android平板电脑或手机的“设置”功能中,提供了“系统更新”这一个功能。用户运行系统更新应用程序来更新ROM时,系统更新程序按照特定的文件格式解析发布的Android ROM打包文件,根据文件中包含的信息,将ROM的各个组成部分按照指定的位置和方式烧写到Nand flash或SD卡中。
本发明的有益效果是:再也不用单独的烧写uboot、Linux内核、system分区、data分区等,而是简化了ROM发布、烧录和更新的方式,采用完全自动化的方法对各个数据进行统一的一次性烧录,大大降低了烧录系统的复杂程度,可以使得非常方便的对Android移动互联网设备的ROM进行发布、烧录和更新。
附图说明
图1是本发明一种新的Android ROM系统打包和烧录、更新方式的示意框图。图2是本发明打包好的单一数据包的具体细节。
具体实施方式
下面结合附图的最佳实施例对本发明作进一步详尽的描述。
如图1所示,本发明具体实施于辰汉电子的系列Android平板电脑。
所述的一种新的Android ROM系统打包和烧录、更新方式的示意框图如图1所示。首先准备好所有待打包的文件即分散的Android ROM数据1,然后根据配置文件2,进行打包3,生成单一的Android ROM打包文件4,文件生成之后就可以通过ROM烧录5烧如辰汉电子的系列平板电脑或者通过设置界面的更新,进行ROM系统更新烧录6。
如图2所示,本发明具体实施于辰汉电子的系列Android平板电脑。
所述的一种新的Android ROM系统打包和烧录、更新方式最终形成的打包文件中的内容分布如图2所示。
所述的分区表1,是分布在存储设备最前端的1K地址以内,其中包含了整个存储设备的各个分区的大小和位置。在打包过程中采取直接将已经生成好的分区表提取到包中即可。在烧录过程中,解包程序会将这1K代码直接覆盖到新存储设备即可。
所述的uboot 2,是紧随1K地址以后的内容,用来初始化各种设备,打包中直接根据当前的客户和存储方式将之前已经生成好的uboot直接打包到分区表后面即可。
所述的uboot环境变量3,是uboot用来启动内核,并传到内核中相关内容的部分,该部分占用特定的位置和大小。打包中直接把生成的uboot环境变量打包于uboot之后。
所述的Linux内核4,是系统运行中最底层的系统,在uboot释放控制权之后由内核进行接管。内核同样放在固定地址占用固定大小空间的位置。打包中也是将不同客户的内核直接打包入包中即可。
所述的uramdisk 5,是系统的根目录,运行的时候被挂载在根目录下。在打包过程中直接打包于Linux内核后面,占用指定的位置和内存。
所述的sdcard 6分区,是系统运行后进行挂载的分区,用于存放各种文件。该分区打包过程中只是在分区表中有它的位置和大小,并没有对应的数据被打包进去。
所述的system分区7,是android的系统分区,大量的配置文件,库文件,可执行程序均在该分区。在打包过程中,system分区会先被挂载在相关目录下,然后根据不同客户定制不同的库文件,不同的运行程序,不同的可执行程序,更新完毕会进行卸载并保存。这个时候客户定制的system分区就完成了,接下来将其打包到整个包中即可。
所述的data分区8,是android的数据分区,运行中产生的大量的临时文件和一些应用程序的配置文件会放在该分区。根据不同的客户,原始定制的data分区是不同的,在打包过程中会直接把事先准备好的data分区进行打包。
所述的cache分区9,是一个空分区,在打包过程中不进行打包。
所述的recovery分区10,是android的更新和恢复分区,用于在系统崩溃的恢复和更新过程中的文件替换。在打包过程中将recovery分区直接打包入整体包中即可。
所述的CRC校验11,是为了在解析打包文件过程中发生错误而进行的必要的校验过程。在上述所有的步骤之后整体包基本结束,这时只要进行CRC校验,将校验好的CRC数据打包在整体数据包最后。Android ROM数据包最终完成。
Claims (9)
1.一种新的Android ROM系统打包和烧录、更新方式,其特征在于所述可以根据不同客户需求和存储条件,在为基于Android OS的平板电脑或智能手机烧录或更新Android ROM前,将所有Android需要的数据,包括分区表,Uboot,Uboot环境变量,Linux内核,uramdisk,system分区,data分区,cache分区和recovery分区等Android ROM所包含的数据按照一定的格式打包在一个单一的文件内,在烧录和更新Android ROM时使用相应的工具来处理这个文件完成烧录、更新过程,从而使得在生产时对Android ROM的烧录、在用户使用时对Android ROM的更新升级更加方便,并且保证数据的完整、正确性,不容易出错。
2.如权利要求1所述,其特征在于将Android ROM数据按照一定的格式打包在一个单一的文件中,避免发布多个文件,从而方便Android ROM的发布、烧录和更新。
3.如权利要求1所述,其特征在于本打包方式使用了一个配置文件,此配置文件允许定义Android ROM的版本、发布时间、ROM中的各个数据组成部分的大小、在存储设备中的位置、烧写或更新的方式等信息,并且通过修改配置可以为多个产品的ROM打包。
4.如权利要求1所述,其特征在于本打包方式基于原生的Android操作系统编译环境,在Android操作系统编译完成后,通过简单的执行一个Linux脚本程序来打包,非常快捷和方便。
5.如权利要求1所述,其特征在于包含分区表,Uboot,Linux内核, uramdisk,system分区,data分区,cache分区,recovery分区,这些android必须使用到的文件系统和辅助资料。
6.如权利要求1所述,其特征在于打包文件包含CRC校验信息,使得文件损坏时能够正确检测到,确保文件的完整性。
7.如权利要求1所述,其特征在于本打包方式支持Nand flash和SD卡(或SD卡兼容的eMMC)这两种存储设备。
8.如权利要求1所述,其特征在于烧录时使用定制的烧写工具,使用打包后产生的单一文件,通过一次烧写即可完成整个Android ROM对Nand flash或SD卡的烧录,简化了原生烧录方式的繁琐过程。
9.如权利要求1所述,其特征在于Android用户通过“一键操作”的方式,在普通的Android应用程序环境中,通过使用与ROM烧录时相同的、单一的打包文件,仅一个步骤就可完成整个Android ROM的升级、更新过程,简化了原生的Android ROM更新的繁琐过程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210279457.1A CN103577211A (zh) | 2012-08-08 | 2012-08-08 | 一种新的Android ROM系统打包和烧录、更新方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210279457.1A CN103577211A (zh) | 2012-08-08 | 2012-08-08 | 一种新的Android ROM系统打包和烧录、更新方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103577211A true CN103577211A (zh) | 2014-02-12 |
Family
ID=50049059
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210279457.1A Pending CN103577211A (zh) | 2012-08-08 | 2012-08-08 | 一种新的Android ROM系统打包和烧录、更新方式 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103577211A (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104133743A (zh) * | 2014-07-22 | 2014-11-05 | 青岛智动精工电子有限公司 | 一种将文件烧录到emmc芯片的方法及装置 |
CN104731602A (zh) * | 2015-03-31 | 2015-06-24 | 上海盈方微电子有限公司 | 一种分离安卓镜像烧录流程的方法 |
CN104899066A (zh) * | 2015-06-19 | 2015-09-09 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN104965736A (zh) * | 2015-06-19 | 2015-10-07 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN105068851A (zh) * | 2015-09-11 | 2015-11-18 | 上海斐讯数据通信技术有限公司 | 一种移动终端rom包的安全打包方法、系统及移动终端 |
CN105160211A (zh) * | 2015-09-25 | 2015-12-16 | 广东欧珀移动通信有限公司 | 一种内核模块中设备文件权限的设置方法及装置 |
CN105279013A (zh) * | 2014-06-20 | 2016-01-27 | 深圳中兴力维技术有限公司 | 基于批量生产的程序发布方法及其装置 |
CN105590065A (zh) * | 2014-10-21 | 2016-05-18 | 中兴通讯股份有限公司 | 保护预置文件的方法及装置 |
CN106126297A (zh) * | 2016-06-30 | 2016-11-16 | 西安诺瓦电子科技有限公司 | 基于Android操作系统的系统升级方法 |
CN106155737A (zh) * | 2016-06-28 | 2016-11-23 | 深圳创维-Rgb电子有限公司 | 一种升级终端的方法及装置 |
CN106293799A (zh) * | 2015-06-23 | 2017-01-04 | 中兴通讯股份有限公司 | Android终端ROM包生成方法及装置 |
CN106933603A (zh) * | 2015-12-29 | 2017-07-07 | 深圳市博巨兴实业发展有限公司 | 一种芯片烧录的方法、装置和微控制器 |
CN107193580A (zh) * | 2017-03-31 | 2017-09-22 | 北京元心科技有限公司 | 系统更新方法及非短暂计算机可读介质 |
CN109032649A (zh) * | 2018-07-23 | 2018-12-18 | 青岛海信移动通信技术股份有限公司 | Ota升级方法、装置、设备及存储介质 |
CN109375937A (zh) * | 2018-10-30 | 2019-02-22 | Oppo广东移动通信有限公司 | 系统升级方法、装置、终端设备及存储介质 |
CN111475185A (zh) * | 2020-03-11 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种跨大版本稳定升级bmc镜像的方法及系统 |
CN112486514A (zh) * | 2020-11-27 | 2021-03-12 | 广州视源电子科技股份有限公司 | eMMC烧录文件的制作方法、装置和计算机设备 |
CN112698834A (zh) * | 2020-12-31 | 2021-04-23 | 深圳创维-Rgb电子有限公司 | 烧录文件生成方法及装置、烧录设备和计算机存储介质 |
CN112732275A (zh) * | 2019-10-14 | 2021-04-30 | 中车株洲电力机车研究所有限公司 | 一种列车软件分区与集成方法 |
WO2021129056A1 (zh) * | 2019-12-26 | 2021-07-01 | 晶晨半导体(深圳)有限公司 | 大容量emmc镜像制作方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123286A1 (en) * | 2002-12-23 | 2004-06-24 | Woochul Kang | Method for integrating Linux kernel and application software packages and generating installation file list based on CML2 computer language |
CN101986269A (zh) * | 2010-10-22 | 2011-03-16 | 福建鑫诺通讯技术有限公司 | 一种在Android平台下实现通过网络刷机的方法 |
-
2012
- 2012-08-08 CN CN201210279457.1A patent/CN103577211A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123286A1 (en) * | 2002-12-23 | 2004-06-24 | Woochul Kang | Method for integrating Linux kernel and application software packages and generating installation file list based on CML2 computer language |
CN101986269A (zh) * | 2010-10-22 | 2011-03-16 | 福建鑫诺通讯技术有限公司 | 一种在Android平台下实现通过网络刷机的方法 |
Non-Patent Citations (3)
Title |
---|
ONEXIN ! TEAM: "Android手机刷机包制作与研究", 《HTTP://WEB.ARCHIVE.ORG/WEB/20101115170925/HTTP://WWW.ONEXIN.NET/ANDROID-PHONES-MAKING-AND-RESEARCH-BRUSH-PACK/》, 15 November 2010 (2010-11-15), pages 1 - 6 * |
XANDY: "android recovery模式及ROM制作", 《HTTP://WWW.CNBLOGS.COM/XL19862005》, 23 March 2012 (2012-03-23), pages 1 - 13 * |
贺冯良 等: "基于Android+ARM 平台的车载信息系统的应用", 《信息与电子工程》, vol. 10, no. 3, 30 June 2012 (2012-06-30), pages 270 - 273 * |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105279013B (zh) * | 2014-06-20 | 2019-11-19 | 深圳力维智联技术有限公司 | 基于批量生产的程序发布方法及其装置 |
CN105279013A (zh) * | 2014-06-20 | 2016-01-27 | 深圳中兴力维技术有限公司 | 基于批量生产的程序发布方法及其装置 |
CN104133743B (zh) * | 2014-07-22 | 2016-02-10 | 青岛智动精工电子有限公司 | 一种将文件烧录到emmc芯片的方法及装置 |
CN104133743A (zh) * | 2014-07-22 | 2014-11-05 | 青岛智动精工电子有限公司 | 一种将文件烧录到emmc芯片的方法及装置 |
CN105590065B (zh) * | 2014-10-21 | 2020-07-31 | 南京中兴新软件有限责任公司 | 保护预置文件的方法及装置 |
CN105590065A (zh) * | 2014-10-21 | 2016-05-18 | 中兴通讯股份有限公司 | 保护预置文件的方法及装置 |
CN104731602A (zh) * | 2015-03-31 | 2015-06-24 | 上海盈方微电子有限公司 | 一种分离安卓镜像烧录流程的方法 |
CN104899066B (zh) * | 2015-06-19 | 2017-12-05 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN104965736B (zh) * | 2015-06-19 | 2018-04-27 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN104899066A (zh) * | 2015-06-19 | 2015-09-09 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN104965736A (zh) * | 2015-06-19 | 2015-10-07 | 青岛海信移动通信技术股份有限公司 | 一种连续升级的方法及装置 |
CN106293799A (zh) * | 2015-06-23 | 2017-01-04 | 中兴通讯股份有限公司 | Android终端ROM包生成方法及装置 |
CN105068851A (zh) * | 2015-09-11 | 2015-11-18 | 上海斐讯数据通信技术有限公司 | 一种移动终端rom包的安全打包方法、系统及移动终端 |
CN105160211B (zh) * | 2015-09-25 | 2018-06-29 | 广东欧珀移动通信有限公司 | 一种内核模块中设备文件权限的设置方法及装置 |
CN105160211A (zh) * | 2015-09-25 | 2015-12-16 | 广东欧珀移动通信有限公司 | 一种内核模块中设备文件权限的设置方法及装置 |
CN106933603B (zh) * | 2015-12-29 | 2024-03-05 | 深圳市博巨兴微电子科技有限公司 | 一种芯片烧录的方法、装置和微控制器 |
CN106933603A (zh) * | 2015-12-29 | 2017-07-07 | 深圳市博巨兴实业发展有限公司 | 一种芯片烧录的方法、装置和微控制器 |
CN106155737A (zh) * | 2016-06-28 | 2016-11-23 | 深圳创维-Rgb电子有限公司 | 一种升级终端的方法及装置 |
CN106126297A (zh) * | 2016-06-30 | 2016-11-16 | 西安诺瓦电子科技有限公司 | 基于Android操作系统的系统升级方法 |
CN107193580A (zh) * | 2017-03-31 | 2017-09-22 | 北京元心科技有限公司 | 系统更新方法及非短暂计算机可读介质 |
CN109032649A (zh) * | 2018-07-23 | 2018-12-18 | 青岛海信移动通信技术股份有限公司 | Ota升级方法、装置、设备及存储介质 |
CN109375937A (zh) * | 2018-10-30 | 2019-02-22 | Oppo广东移动通信有限公司 | 系统升级方法、装置、终端设备及存储介质 |
CN112732275A (zh) * | 2019-10-14 | 2021-04-30 | 中车株洲电力机车研究所有限公司 | 一种列车软件分区与集成方法 |
CN112732275B (zh) * | 2019-10-14 | 2022-06-03 | 中车株洲电力机车研究所有限公司 | 一种列车软件分区与集成方法 |
WO2021129056A1 (zh) * | 2019-12-26 | 2021-07-01 | 晶晨半导体(深圳)有限公司 | 大容量emmc镜像制作方法和装置 |
CN111475185A (zh) * | 2020-03-11 | 2020-07-31 | 苏州浪潮智能科技有限公司 | 一种跨大版本稳定升级bmc镜像的方法及系统 |
CN112486514A (zh) * | 2020-11-27 | 2021-03-12 | 广州视源电子科技股份有限公司 | eMMC烧录文件的制作方法、装置和计算机设备 |
CN112486514B (zh) * | 2020-11-27 | 2024-01-16 | 广州视源电子科技股份有限公司 | eMMC烧录文件的制作方法、装置和计算机设备 |
CN112698834A (zh) * | 2020-12-31 | 2021-04-23 | 深圳创维-Rgb电子有限公司 | 烧录文件生成方法及装置、烧录设备和计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103577211A (zh) | 一种新的Android ROM系统打包和烧录、更新方式 | |
CN106775723B (zh) | 基于Android平台的系统固件定制的方法和Android设备 | |
CN104793946B (zh) | 基于云计算平台的应用部署方法和系统 | |
CN107193615B (zh) | 项目代码信息的更新部署方法及装置 | |
CN104252342B (zh) | 一种可配置参数的嵌入式应用实现方法及装置 | |
WO2017092672A1 (zh) | 一种Docker容器运行方法和装置 | |
CN101937340B (zh) | 使用补丁对软件进行动态升级与控制的方法和装置 | |
TWI341992B (en) | Method and system for quickly developing an embedded operating system through utilizing an automated building framework | |
US10228993B2 (en) | Data dump for a memory in a data processing system | |
CN100472447C (zh) | 一种实现软件更新的方法及装置 | |
CN103207797A (zh) | 基于通用可扩展固件接口固件系统的胶囊式定制更新方法 | |
US20200057654A1 (en) | Method and system for mirror image package preparation and application operation | |
CN109542459A (zh) | 应用程序打包方法及装置、计算机装置及计算机存储介质 | |
CN101620542B (zh) | 一种超声成像设备软件数据的兼容更新方法 | |
CN105579953A (zh) | 灵活引导程序代码架构 | |
CN104267978A (zh) | 一种生成差分包的方法及装置 | |
CN104407878A (zh) | C6000数字信号处理器在线升级方法 | |
CN103473097A (zh) | Android系统固件升级系统、装置及升级方法 | |
CN115185531A (zh) | 一种应用编译方法、装置、计算设备及存储介质 | |
CN103761107A (zh) | 软件包定制的装置及方法 | |
CN104182257A (zh) | 应用软件的安装方法和应用软件的安装装置 | |
US9588884B2 (en) | Systems and methods for in-place reorganization of device storage | |
CN114756290A (zh) | 一种操作系统安装方法、设备及可读存储介质 | |
US10318262B2 (en) | Smart hashing to reduce server memory usage in a distributed system | |
CN104484207A (zh) | 交换机的镜像升级方法及适用的linux操作系统和交换机 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140212 |