美文网首页Android相关
Android 如何实现增量更新

Android 如何实现增量更新

作者: 文质彬_已然未然 | 来源:发表于2020-10-22 00:39 被阅读0次

什么是增量更新?

现在的APP安装包体积越来越大,几百兆甚至上G的,当APP更新时不再是消耗大量的流量下载一个完整安装包,而是消耗相对很少的流量下载一个增量包(差分包),采用谷歌Smart App Updates更新机制,就能实现APP的更新了。

用户手机上已经安装着某个APP,然后只需下载一个增量包,手机上的APP和增量包合并生成完整的新APP,并引导用户安装,这个过程就是增量更新。

很多APP都采用了谷歌Smart App Updates更新机制,例如 :微信,支付宝,Play商店,豌豆荚等等。谷歌官方称采用Smart App Updates更新机制,可以使用户下载的apk是完整apk的三分之一,也就是说可以帮用户节省三分之二的下载流量。

据上图所示,更新一个APP,传统方式下载apk需要30M流量,而采用增量更新机制,只需下载10M的patch文件(增量包)就可以了。

如何用工具生成增量文件?

1.下载bsdiff_win_exe.zip并解压到本地。

2.打一个旧版本安装包(例如:v6.3.8.apk),再打一个新版本的安装包(例如:v6.3.9.apk),并一同放在刚才解压的目录下。

3.打开Windows命令行工具,进入到解压目录,输入  bsdiff.exe v6.3.8.apk v6.3.9.apk.apk v6patch.patch,然后回车可以看到下图:

bsdiff.exe 是用来生成增量包的,还有一个bspacth.exe是用来生成新的安装包的,v6patch.patch文件就是我们刚刚生成的增量包。

如何用工具生成新的安装包?

现在我们有了patch文件,和旧的安装包,就可以生成新的安装包了,下面介绍两种方式生成新的安装包。

方式一:

用工具生成的方法。打开Windows命令行工具,进入到解压目录,输入 bspacth.exe v6.3.8.apk new.apk v6patch.patch ,然后回车可以看到下图:

这个new.apk就是我们生成的新的安装包了。

方式二:

用移动端代码生成,也就是Android代码实现增量更新。增量文件服务端生成好后,当APP运行启动时,我们开始检查版本更新,如果有更新就开个子线程去下载增量文件,下载完成再与当前运行的APP进行合并生成新的APP,并安装.

1.在project的build.gradle添加如下代码(如下图)

2. 在Module的build.gradle添加依赖(如下图)

3.添加权限

4.集成代码(如下图)

以上就是android实现增量更新的代码,通过代码的方式就能像方式一那样生成新的APP安装包了。

最后记得将增量包上传至服务器,然后供移动端下载此包。就可以测试增量更新的功能了!

今天的分享结束了,再见~

相关文章

  • Android 如何实现增量更新

    什么是增量更新? 现在的APP安装包体积越来越大,几百兆甚至上G的,当APP更新时不再是消耗大量的流量下载一个完整...

  • ReactNative热更新&拆包

    目录 1)全量热更新-Android 2)拆包增量更新-Android 3)图片增量更新-Android 4)全量...

  • Android 实现增量更新

    一、概述 增量更新相较于全量更新的好处不言而喻,利用差分算法获得1.0版本到2.0版本的差分包,这样在安装了1.0...

  • Android 增量更新实现

    如果app依赖本地更新,更新比较频繁的话,每次更新都要让用户下载完整安装包,用户体验会比较差。目前,很多应用商店都...

  • android 增量更新

    android增量更新 android 4.1开始 google引入了应用程序的增量更新。增量更新的原理实际上是使...

  • Android 增量更新实现(Bsdiff)

    一,增量更新的原理,主要是根据新旧包生成差分包,这个差分包由服务器端生成,客户端下载,下载完成后,进行合并,合并成...

  • Android 增量更新的实现

    扯淡 最近闲来无事,学习了一下增量更新。 增量更新的概念就不扯了,有兴趣的看一下鸿洋大神的文章Android 增量...

  • 一、NDK:增量更新

    增量更新在Android开发中是一种很常见的技术。 增量更新的原理 增量更新的原理非常简单,就是将本地apk与服务...

  • Android 增量更新bsdiff和bspatch

    Android 增量更新 最近的项目需求,最近对这个增量更新有了一些认识,另外把增量更新的一下资料整理给大家分析一...

  • Android平台-实现应用增量更新

    1.概述 1.1.什么是应用增量更新 当我们要更新一个应用的时候,以前很多更新的做法是下载一个新版本去覆盖一个旧版...

网友评论

    本文标题:Android 如何实现增量更新

    本文链接:https://www.haomeiwen.com/subject/egqipktx.html