OTA 简介和常见源码目录-1

来源:互联网 发布:jdk 8u60 linux x32 编辑:程序博客网 时间:2024/05/22 00:35

OTA 简介和常见源码目录

1、OTA 简介

OTA(OVER-the-air Technology)空中下载技术。是通过移动通信(GSM或CDMA)的空中接口对SIM卡数据以及应用进行远程管理的技术。空中接口可以采用WAP 、GPRS、CDMA1X及短消息技术。OTA技术应用,使得移动通信不仅可以提供语音和数据服务,而且还能够新业务下载。这样,应用和内容服务商可以不受平台的局限,不断开发出更具有个性化的贴近用户需求的服务,如信息点播、互动娱乐、位置服务以及银行交易等。通过OTA空中下载技术,手机用户只要进行简单操作,就可以按照个人爱好把网络上提供的各种业务菜单利用OTA机制下载到手机,并且还可以根据自己的意愿定制业务。
移动终端空中下载软件(FOTA)主要应用在手机领域,在FOTA出现之前,手机制造商和手机运营商,无法在手机最重要的18~24个月的生命周期内有效的对软件进行升级。需要手机升级时,他们不得不到手机运营商那里进行升级。FOTA使手机制造商能够通过无线网络将升级软件发送到用户的手机中,从而对软件或是软件的某个部位进行升级。
FOTA 技术特点:
1)、 Red Bend的FOTA客户端支持标准的OMA DM 服务器,兼容性好。
2)、 升级包采用差分包形式,减少下载浏览。
3)、 客户端必须要RED BEND提供基础库

2、android OTA 在线升级大致框架
这里写图片描述

Android 平台提供GOOGle diff arithmetic差分机制,升级包支持整包(Full Image)和差分包(differential image)。OTA运行原理如图。
上图就是运行OTA的基本原理示意图
1)、 OTA Server主要是对差分包的一个上传、下载以及版本管理
2)、 开发者通过差分包制作工具制作出差分包,使客户端进行上传和版本的管理。
3)、 手机联网下载更新。

3、服务器端差分包制作原理

差分包制作工具是google提供的制作工具,是由一些脚本和差分包制作工具组成,分散在code源码之中。考虑到工具可能被修改或者调整,因此每次制作都需要从code中重新提取。用于制作前后两个版本之间的差分包,工具如下:

这里写图片描述

Recovery这个目录主要是make用来检查recovery的版本号

这里写图片描述

Releasetools这个目录提供的是制作OTA package的脚本工具

这里写图片描述

Security 这个目录是用来生成OTA包的签名

这里写图片描述

  Bin image的差分工具  Framework是用来给APK包进行签名的

参考文章:
OTA (空中下载技术)
http://baike.baidu.com/link?url=EaeunTFa_y0FFaxg1UhZRYAkBHvr2tL_lyrUkXkiHThVYnZYdvJCjGGZ-kL8iF2EB7jVZ8J_oVJcJF0Dh3DV5K

Android OTA在线升级一(架构分析)
http://blog.csdn.net/huryjiang/article/details/7589625

2 0