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

OTA 简介和常见源码目录-1相关推荐

  1. RTOS之uCOS-II源码下载及源码目录结构、常见的RTOS!

    RTOS有众多种,用得最火的是FreeRTOS,因为它即使用于商业途径,也是开源免费的:其次是就是uCOS-II和uCOS-III.uCOS-II用于商业途径是需要付费的,但是对于学习研究却是免费的. ...

  2. Chromium源码目录结构简介

    Chromium源码目录结构简介入门必备. High-level overview 高级概述 Chromium is separated into two main parts (excluding ...

  3. LwIP 之一 源码目录文件详解及移植说明

       lwIP 是 TCP/IP 协议套件的一个小型独立实现.lwIP TCP/IP 实现的重点是减少 RAM 使用同时仍然有一个完整的 TCP. 这使得 lwIP 适合使用在具有数 10 千字节的可 ...

  4. 树莓派内核开发准备(内核源码获取、启动过程、源码目录树)

    目录 1.交叉编译工具的安装 2.内核源码获取 3.嵌入式设备带操作系统的启动过程扫盲 4.Linux内核源码树扫盲 1.内核源码简介 2.Linux内核源代码目录树结构 tree指令查看 内核源码目 ...

  5. Android系统源码目录及功能介绍

    Android的移植按如下流程:     1.android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来.     2.正确挂载文件系统,确保内核启动参数和 android 源代码 ...

  6. Android 8.0学习(32)---Android 8.0源码目录结构详解

    Android 8.0源码目录结构详解 android的移植按如下流程:     (1)android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来.     (2)正确挂载文件系统 ...

  7. android 6.0 源码目录

    ##android6.0源码目录简单分析 ######目录abi ==>应用程序二进制接口     定义:应用程序和操作系统之间.一个应用和它的库之间.应用的组成部分之间的低接口        ...

  8. Java_io体系之BufferedWriter、BufferedReader简介、走进源码及示例——16

    Java_io体系之BufferedWriter.BufferedReader简介.走进源码及示例--16 一:BufferedWriter 1.类功能简介: BufferedWriter.缓存字符输 ...

  9. Java_io体系之RandomAccessFile简介、走进源码及示例——20

    Java_io体系之RandomAccessFile简介.走进源码及示例--20 RandomAccessFile 1.       类功能简介: 文件随机访问流.关心几个特点: 1.他实现的接口不再 ...

最新文章

  1. 大数据-spark-hbase-hive等学习视频资料
  2. 基于现有工程解读stm32的工程文件
  3. Ubuntu创建新用户并增加管理员权限
  4. Linux之最常用的20条命令
  5. POJ 1611 -The Suspects (并查集)
  6. 项目: 用数组实现反弹球消砖块
  7. 《零基础看得懂的C语言入门教程 》——(十三)socket服务端编写
  8. 前端开发 —— BOM
  9. 运用数组,输出从小到大的10个数
  10. c++突破网关屏蔽_通过API网关实现微服务管控-限流,熔断和降级
  11. 【构造】Gym - 101411F - Figure ans Spots
  12. Xbox360游戏收藏
  13. 【python基础语法】列表的查询操作(包括切片)
  14. session的基本原理
  15. HTML 第5章 Div+CSS布局技术
  16. NOIP2013普及组 车站分级
  17. 智慧园区导航可视化分析平台技术方案
  18. 轻快步伐远不足以跟上轻快心情
  19. 普通人想做自媒体赚钱,应该做什么呢?
  20. 绕过 iOS 代码签名验证 ldid

热门文章

  1. LabWindows_CVI测试技术及工程应用_学习笔记1(构建一个简单的程序)
  2. 容联云 PHP 实现短信发送验证码
  3. c++实现文件传输之三:断点续传与多线程传输
  4. winSocket第一步WSAStartup
  5. 关于spoolsv.exe 报错,并打印服务停止的问题
  6. 【C++】getchar()有什么用
  7. bat 脚本修改IE浏览器代理服务器
  8. iframe vue 宽度_vue 如何自适应调整嵌入的 iframe 的大小,让用户完全感觉不出有 iframe 这个东西?...
  9. 语法分析器 Java版
  10. 高等数值计算方法学习笔记第4章第一部分【数值积分(数值微分)】