总结:
我们使用delta编码算法减少Android应用升级程序的大小。我们通过bsdiff和bspatch工具在android上实现delta编码算法。服务器软件和android应用已经部署。当前,我们能够减少Android升级流量的50%,如果大量的部署,这将会减少网络的压力。
升级机制:
我们打算采用delta编码的patch升级Android应用。新的升级机制可以描述如下:
1、 在服务器上生成一个patch。
2、 下载patch到手机中。
3、 通过补丁获取一个已安装应用的新的安装apk。
4、 安装应用的新版本并删掉旧的版本和patch。
统计数据:
我们当前正在研究应用怎样在android中升级。这个研究结果将允许我们在新的升级机制下节约大量的流量。我们创建了一个android应用用来收集统计数据(可能会用于将来的研究)。
应用会收集以下数据:
1、 应用的名字,版本,大小和每个应用最后升级的时间。
2、 统计Wifi和3G的链接状态。
谷歌增量升级技术:
在谷歌2012 I/O大会上宣布Google Play Stroe的增量升级技术。它始于八月中旬。他们使用跟我们相同的升级机制。比较两个应用的不同,并将patch部署在终端上。
根据我们的统计,patch文件的平均大小为应用的34%。
用到的软件:
为了完成在服务器上部署patch软件和在手机上部署patch和升级应用。在服务器端我们使用bsdiff工具。在android,我们使用bspatch工具。
相关文章
- 【区分vue2和vue3下的element UI InfiniteScroll 无限滚动组件,分别详细介绍属性,事件,方法如何使用,并举例】
- 浅析Web实时通信的方法总结:短轮询/长轮询/SSE/Websocket的介绍及性能和兼容性对比、SSE的工作原理及如何实现
- uni-app&H5&Android混合开发三 || uni-app调用Android原生方法的三种方式 uni-app跨平台框架介绍和快速入门uni-app跨平台框架介绍和快速入门uni-app&H5&Android混合开发一 || 最全面的uni-app离线打包Android平台教程uni-app&H5&Android混合开发二 || 使用Android Studio打包应用APKuni-app&H5&Android混合开发三 || uni-app调用And
- Android ListView实现不同item的方法和原理分析
- Android Studio获取开发版SHA1值和发布版SHA1值的史上最详细方法
- 深入理解Java中的反射机制和使用原理!详细解析invoke方法的执行和使用
- 精华推荐 |【算法数据结构专题】「延时队列算法」史上非常详细分析和介绍如何通过时间轮(TimingWheel)实现延时队列的原理指南
- 精华推荐 |【算法数据结构专题】「延时队列算法」史上非常详细分析和介绍如何通过时间轮(TimingWheel)实现延时队列的原理指南
- 红黑树之 原理和算法详细介绍(阿里面试-treemap使用了红黑树) 红黑树的时间复杂度是O(lgn) 高度<=2log(n+1)1、X节点左旋-将X右边的子节点变成 父节点 2、X节点右旋-将X左边的子节点变成父节点
- Android判断和监听底座状态和类型的方法介绍