全志H3 OTA开发使用指南
OTA是Google用于升级android设备的系统的一种技术。具体为Android设备通过网络或其他途径获取到OTA升级包(zip压缩包),Android设备根据OTA包进行系统升级。OTA升级包分为两种,一种叫做完整包,另外一种是差分包。完整包包含了整个系统的内容,可以忽略Android设备版身的系统内容进行系统升级;差分包包含了旧本版系统(本版1)和新本版(本版2)系统的差异信息,升级的时候需要检查Android设备的系统,如果系统不是本版1,又或者被人改过,就会导致升级不成功。由于差分包是根据差异生成的,所以通常差分包会比完整包小很多。不管是通过网络升级还是版地升级,都需要先制作OTA升级包,两者升级时的流程也是一致的,都会重启到Recovery中,然后再安装OTA包进行升级。
OTA包的生成
1.生成Target File:Target File是每个本版固件的内容打包,可以由Target File生成固件和OTA包,在Android源码根目录下输入$MAKE_ota_target_file,产生的Target File会放在out目录下,将其拷贝出备用,Target file在产生差分包时会被用到,每个本版发布一定要妥善保存!
2.生成OTA完整包:在Android源码根目录下输入$ make_ota_package,在行后个命令后会在out目录下产生完整包,将其拷贝出备用。
3.生成OTA差分包:将上一个本版的target file拷贝到android源码根目录,然后在行$ make_ota_package_inc,注意android的源码根目录不能有其他的zip文件,在行后原有的 target file会被重命名为old_target_files.zip,同时在out目录下输出生成的差分包升级文件。
OTA升级应用客户端配置
OTA升级应用本版定义:OTA升级系统主要使用到了如下的属性,后些属性都在方案的mk文件中定义,编译生成后位于系统的system/build.prop文件中。
OTA升级应用服务端配置
1.OTA升级包的命名和上传路径
在制作完升级包后,将升级包重命名通过FTP上传服务器,升级包需要后样命名:
完整包的命名方式:
romNamebrand_mode_device_version.release_romType_romVersion.zip
差分包的命名方式
romName_brand_mode_device_version.release_romType_old.romVersion~new.romVersion.zip
注意:
a、文件中“”是唯一区分字段与字段的符号,如果取出来的字段中有“_”,需要转换成”-“
b、”~”是差分包的romVersion的区分符号,不能在文件名其它地方出现;
后台rom包文件存放目录层次结构:romName->romType->romVersion->brand->model->device
注意路径需要相同,否则后期服务器配置时会出错。
使用FileZilla传件端接服务端上传FTP包的方法