OTA 简介和常见源码目录-1
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相关推荐
- RTOS之uCOS-II源码下载及源码目录结构、常见的RTOS!
RTOS有众多种,用得最火的是FreeRTOS,因为它即使用于商业途径,也是开源免费的:其次是就是uCOS-II和uCOS-III.uCOS-II用于商业途径是需要付费的,但是对于学习研究却是免费的. ...
- Chromium源码目录结构简介
Chromium源码目录结构简介入门必备. High-level overview 高级概述 Chromium is separated into two main parts (excluding ...
- LwIP 之一 源码目录文件详解及移植说明
lwIP 是 TCP/IP 协议套件的一个小型独立实现.lwIP TCP/IP 实现的重点是减少 RAM 使用同时仍然有一个完整的 TCP. 这使得 lwIP 适合使用在具有数 10 千字节的可 ...
- 树莓派内核开发准备(内核源码获取、启动过程、源码目录树)
目录 1.交叉编译工具的安装 2.内核源码获取 3.嵌入式设备带操作系统的启动过程扫盲 4.Linux内核源码树扫盲 1.内核源码简介 2.Linux内核源代码目录树结构 tree指令查看 内核源码目 ...
- Android系统源码目录及功能介绍
Android的移植按如下流程: 1.android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来. 2.正确挂载文件系统,确保内核启动参数和 android 源代码 ...
- Android 8.0学习(32)---Android 8.0源码目录结构详解
Android 8.0源码目录结构详解 android的移植按如下流程: (1)android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来. (2)正确挂载文件系统 ...
- android 6.0 源码目录
##android6.0源码目录简单分析 ######目录abi ==>应用程序二进制接口 定义:应用程序和操作系统之间.一个应用和它的库之间.应用的组成部分之间的低接口 ...
- Java_io体系之BufferedWriter、BufferedReader简介、走进源码及示例——16
Java_io体系之BufferedWriter.BufferedReader简介.走进源码及示例--16 一:BufferedWriter 1.类功能简介: BufferedWriter.缓存字符输 ...
- Java_io体系之RandomAccessFile简介、走进源码及示例——20
Java_io体系之RandomAccessFile简介.走进源码及示例--20 RandomAccessFile 1. 类功能简介: 文件随机访问流.关心几个特点: 1.他实现的接口不再 ...
最新文章
- 大数据-spark-hbase-hive等学习视频资料
- 基于现有工程解读stm32的工程文件
- Ubuntu创建新用户并增加管理员权限
- Linux之最常用的20条命令
- POJ 1611 -The Suspects (并查集)
- 项目: 用数组实现反弹球消砖块
- 《零基础看得懂的C语言入门教程 》——(十三)socket服务端编写
- 前端开发 —— BOM
- 运用数组,输出从小到大的10个数
- c++突破网关屏蔽_通过API网关实现微服务管控-限流,熔断和降级
- 【构造】Gym - 101411F - Figure ans Spots
- Xbox360游戏收藏
- 【python基础语法】列表的查询操作(包括切片)
- session的基本原理
- HTML 第5章 Div+CSS布局技术
- NOIP2013普及组 车站分级
- 智慧园区导航可视化分析平台技术方案
- 轻快步伐远不足以跟上轻快心情
- 普通人想做自媒体赚钱,应该做什么呢?
- 绕过 iOS 代码签名验证 ldid
热门文章
- LabWindows_CVI测试技术及工程应用_学习笔记1(构建一个简单的程序)
- 容联云 PHP 实现短信发送验证码
- c++实现文件传输之三:断点续传与多线程传输
- winSocket第一步WSAStartup
- 关于spoolsv.exe 报错,并打印服务停止的问题
- 【C++】getchar()有什么用
- bat 脚本修改IE浏览器代理服务器
- iframe vue 宽度_vue 如何自适应调整嵌入的 iframe 的大小,让用户完全感觉不出有 iframe 这个东西?...
- 语法分析器 Java版
- 高等数值计算方法学习笔记第4章第一部分【数值积分(数值微分)】