基于Android系统快速恢复出厂设置方法实现
基于Android系统快速恢复出厂设置方法实现
摘 要:针对使用Android系统的智能电视进行恢复出厂设置时重置速度慢的情况进行了研究和分析,从其重置原理入手,通过简化备份、导入、执行等设置方法以实现该系统的快速恢复出厂设置。实践证明,该方法有效,供相关人员参考和借鉴。
关键词:Android系统;电子产品;出厂设置;USB
中图分类号:TN949.2 文献标识码:A DOI:10.15913/j.cnki.kjycx.2017.08.113
随着消费类电子产品应用的不断发展,Android系统已成为电子产品是否能脱颖而出的重要决定因素,很多产品在追求即开即用的效果。在这样的行业需求下,针对Android系统,设计并实现了一种基于该系统恢复出厂设置的快速重置方法,以提高基于该平台的智能电视产品的开机启动速度。
1 Android系统恢复出厂设置原理分析
1.1 Android系统的原生恢复出厂设置
如图1所示,从Android系统接收到用户恢复出厂设置请求后,过程包含执行恢复出厂设置和重新启动系统各两次,最后重新系统初始化后才进入到待机模式。
恢复出厂设置步骤一和恢复出厂设置步骤二是整个恢复出厂设置过程的两个关键步骤。
1.1.1 执行恢复出厂设置步骤一
这是工厂应用程序接收到恢复出厂设置请求后完成的第一个关键步骤,主要完成了以下3项内容:①清除工厂频道信息;②将系统语言设置为默认的语言(比如英语);③打开开机向导菜单。
1.1.2 执行恢复出厂设置步骤二
这是经过第一次系统重启后进入到恢复(Recovery)模式下所要完成的主要步骤,在这里主要完成的动作是清除用户数据,但清除用户数据采用的方法是用格式化命令对用户数据区进行标准格式化。
1.2 Android系统快速恢复出厂设置
1.2.1 Android系统快速恢复出厂设置流程
在Android系统的快速恢复出厂设置流程中,当系统接收到恢复出厂设置请求后,直接调用执行恢复出厂设置的两个步骤,最后发送Power事件使系统进入待机状态,省去了两次系统重新启动及初始化过程,同时对恢复出厂设置步骤二的实现方式进行了优化,从而大大缩短了恢复出厂设置的总体时间。
1.2.2 原生与快速模式的比较
在两种模式下,恢复出厂设置步骤一所执行的动作完全相同,恢复出厂设置步骤二所完成的动作也都是清除用户数据,但主要区别在于采用的方法不同――原生模式采用的方法是直接对用户数据进行格式化处理,快速模式采用的方法则是从备份区中将原始初始数据复制过来覆盖当前用户数据。两种方法都达到了恢复出厂设置的目的,但效率不同。恢复出厂设置步骤二的详细比较如表1所示。
2 Android系统快速恢复出厂设置的实现
2.1 备份用户初始数据
由于快速恢复出厂设置采用的方法是从备份区复制数据过来覆盖当前用户数据,因此,在编译Android系统时需要额外保存一份完整的用户数据,它的内容与当前用户区被变更前的初始数据完全相同,但永远不会再被更改,相当于具有只读属性。具体实现方法是当前电视首次上电正常开机后,但还没有进行更改任何设置前,在串口命令模式下执行以下指令:
「busyboxcp-Rdp/data/tvcustomer/」
将/data目录下的所有数据完整复制到/tvcustomer目录下备份,以便在快速模式下执行恢复出厂设置步骤二时使用。
2.2 导出tvcustomer.img映像文件
接着上一个步骤,将一个存储空间足够大的U盘插入到电视上的USB接口,在电视端的串口中执行如下指令导出tvcustomer.img映像文件:
「busyboxddif=/dev/block/mmcblk0pxx of=/mnt/usb/sda1/
tvcustomer.img」
其中,mmcblk0pxx是tvcustomer分区所对应的设备,不同智能电视平台会有所差异,可用「ls-l」查询获得;sda1代码U盘挂载在USB接口1,如果不是USB接口1,则要进行更改。
2.3 重新生成emmc.bin文件
emmc.bin文件是编译Android系统最终编译生成的用于烧录eMMC Flash的二进制文件。将上一步获取的包含备份数据的tvcustomer.img复制到Android系统编译环境下的相应目录下,重新编译生成emmc.bin,这样工厂批量烧录的所有eMMC Flash都将包含了完整的备份数据。
2.4 执行快速恢复出厂设置
2.4.1 注册恢复出厂设置服务
由于在恢复出厂设置步骤二中涉及到从备份区复制数据覆盖当前用户数据,需要一定的