libbspatch.so
http://www.zhihu.com/question/21154099
http://blog.csdn.net/hmg25/article/details/8100896
91助手和Google Play的智能升级原理是什么?修改
前不久的google io 推出了应用智能升级,就是不用下载整个包,而是下载单纯的更新部分就可以完成app的升级,而iphone版的91助手也退出了这个功能,这里的原理是什么?望各位不吝赐教!
这是来自去年某一次google发布会提出的新内容。
从那时起,android sdk便提供了一个基于差分的增量升级包的制作工具。所以开发者可以轻易制作差分升级包。这个事情必须要由开发者完成,因为它需要和原先的软件有相同的数字签名。
豌豆莢等收集了这些差分升级包,并提供给用户。
多家android 服务提供商都提供了智能更新服务, 包括友盟, 豌豆荚,百度, Google Play等。 Google Play是最早推出该功能的。 由于该功能对于应用开发者和终端用户都是透明的, Google 也没有过多宣传这个功能, 只是android police 上有人破解了。
关于友盟的功能,官方页面的解释如下:
http://dev.umeng.com/doc/document_update_android.html
友盟自动更新SDK从2.0版本开始支持增量更新。增量更新下载的是您上传到友盟服务器最新版本的APK和用户手机上的APK的差异,而不需要下载新版完整包。增量更新通过减小下载升级包的方式极大加快用户升级速度,提高用户升级体验。而所有的增量更新过程完全对开发者透明, 您不需要做任何额外的工作,只需要添加libs 目录下的libs/armeabi/libbspatch.so。 集成SDK接口完全相同。关于增量更新更多问题, 请参考FAQ。
友盟增量更新的原理是什么?
应用集成友盟自动更新SDK之后,SDK会在应用启动时将手机端的Version Code 和应用APK文件的MD5 值发送到友盟的服务器端。服务器通过对MD5值查找到老版本的APK, 同新老版本的APK做diff, 生成patch 文件,返回给SDK。 SDK 再将patch 文件和手机上的老版本APK文件合成生成新版本的APK。手机端生成的新版APK文件的MD5值会和服务器端的新版APK MD5值保持严格一致。在此过程中, 要求友盟服务器必须存在新老两个版本的APK文件。 如果您发现不能使用增量更新, 可能是友盟服务器端没有老版本的APK,需要您先上传老版本的APK, 再上传新版本的APK。
OTA功能?
libBSPatch.so:支持增量更新功能的库文件
libwebp.so 好像是WebP的支持库,WebP是由谷歌推出的新一代图片格式,在压缩方面比当前JPEG格式更优越,图像体积要比JPEG格式图像小40%.
libbspatch.so的更多相关文章
- 【转】Android各大发布市场
前言 如果只有一个或者少许的两三个Android市场,本文也没用存在的必要性,本文谨献给同在Android奋战的同仁. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnbl ...
- 【Android市场】提交应用的一点经验分享
前言 如果只有一个或者少许的两三个Android市场,本文也没用存在的必要性,本文谨献给同在Android奋战的同仁. 声明 欢迎转载,但请保留文章原始出处:) 博客园:http://www.cnbl ...
- Android从零单排之自动跟新
自动更新原理 当我们发布我们的应用程序的时候,肯定会想到后续版本的更新,那么该怎么对我们的程序进行更新呢? 更新APK的原理实际上就是比较程序中的AndroidManifest.xml中的versio ...
- 解压Taobao手机客户端发现的东西
今天解压了Taobao手机客户端发现了几个.so文件, 其中有两个挺感兴趣的,查了一下,以后去研究下. libBSPatch.so 是用于支持增量更新功能的库文件. libwebp.so 好像是We ...
- android使用友盟第三方自动更新/手动更新
最近项目用到自动更新,发现一个方便快捷的第三方组件非常好用,只需要几行代码搞定,非常适合新手使用.分享给大家一起学习. 本文档帮助您以最快速最简洁的方式集成使用自动更新组件. 一.申请友盟开发者账号创 ...
- Android软件设置自动检查更新
如果让我推荐功能强大的第三方集成开发包,我一定会推荐友盟,有着强大的软件统计,分析功能(原谅我,我不是打广告). 这一篇介绍友盟的自动更新功能,但是首先你得拥有友盟. 友盟的集成步骤 1.1 导入SD ...
- Android友盟增量更新
1.增量升级的原理 增量更新的原理就是将本地apk与服务器端最新版本比对,并得到差异包.比如现在的版本是1.1.4,大小是7.2M,新版本是1.1.5.大小是7.3M.我们发现两个版本只有0.1M的差 ...
- 浅析android应用增量升级(转)
By 何明桂(http://blog.csdn.net/hmg25) 转载请注明出处 很久没有更新博客了,真是堕落啊,几次想提起笔,却总是被各种琐事耽搁,以后会多写文章记录点滴. 背景 ...
- Android ADB 实用总结
一.背景 从系统架构上来说,Android是基于Linux系统基础上,做了进一步的定制与修改,并融入了自身的特有功能,且向应用层提供应用程序接口,供开发者使用.系统内核层面,主体依然是Linux内核. ...
随机推荐
- python 练习 22
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false. Python 编程中 if 语句用于控制程序的执行,基本形式为: if 判断条件: 执行语句…… el ...
- HDFS使用0
创建上传文件的:
- FireFox 一键清理缓存
https://addons.mozilla.org/zh-CN/firefox/addon/empty-cache-button/
- oracle优化原则(二)
SQL优化原则 二.SQL语句编写注意问题 www.2cto.com 下面就某些SQL语句的where子句编写中需要注意的问题作详细介绍.在这些where子句中,即使某些列存在索引,但是由于编写了劣质 ...
- SecureCRT快捷键
ctrl + a : 移动光标到行首ctrl + e :移动光标到行尾crtl + b: 光标前移1个字符crtl + f : 光标后移1个字符 crtl + h : 删除光标之前的一个字符c ...
- CENTOS6 安装配置 pptpd 心得
1.你所需要的软件 pppd ppp拨号服务器pptpd 在pppd拨号的基础上增加pptpd的支持 2.确定你的内核是否支持mppe modprobe ppp-compress-18 &a ...
- cf卡中,wtmp文件较大,导致磁盘空间满了
看了一下,有一个wtmp 和wtmp.1的文件非常大.wtmp记录的是机器注销.启动的信息.由此可见,机器长时间的不断重启,造成该日志记录超级大,把cf的空间给占满了. wtmp日志可以用who和la ...
- Scala 入门——Eclipse开发环境搭建
Come From: http://lidrema.blog.163.com/blog/static/209702148201461145859142/ Scala: 一种类似java的编程.集成了面 ...
- 使用ContentProvider管理多媒体-----向多媒体数据中添加数据
//为add按钮的单击事件绑定监听器 add.setOnClickListener(new OnClickListener() { @Override public void onClick(View ...
- poj题目必做
OJ上的一些水题(可用来练手和增加自信) (poj3299T,poj2159T,poj2739T,poj1083T,poj2262T,poj1503T,poj3006T,poj2255T,poj309 ...