Android 增量更新 -- 客户端bsdiff库的编译及jni调用

Android增量更新 bsdiff库的修改编译及使用

这一篇文章。来写一下我的android增量更新客户端bsdiff库的项目 ndk编译

这里简单说一下增量更新
增量更新就是 将两个版本的文件差分出补丁文件。更新版本时。客户端只需要下载差分补丁。从而不需要讲新版本安装包全部下载。减少下载数据包大小,减少客户端等待时间。

android增量更新现在常用的是bsdiff这个c开源的二进制差分库来做。由于涉及到NDK编译、
C程序修改、JNI的使用等。对于一些人比较麻烦或者困难。
我把这个增量更新的功能修改调试好的用bsdiff这个库来做增量更新的程序发布出来。
大家可以参考一下。当然我对C语言不怎么熟悉。大家看到的代码有错误的地方。麻烦帮忙提醒一下。也好让我修改修改,不至于误导更多的人。在这里先说声 谢谢

我把我写好的bsdiff的jni调用项目发布在了github上。

https://github.com/brok1n/androidBsdiffUpdate

大家可以下载下来看看。我在这个项目里。已经编译好了各种cpu平台的so大家可以选择使用。
但是注意。我代码里的JniApi不要修改包名。因为jni调用的c程序已经确定好了这个包名。大家可以吧我的包拷贝到你们程序里。吧我包里的测试activity删掉。

也可以将这个项目导出成jar包。当然。导出的也就只有那个JniApi这个类就可以了。
然后在libs下面找自己需要的cpu平台的so文件。然后放到自己项目里面。就可以直接使用了。

至于bsdiff差分库的差分工具。我也把他放到github上大家可以下载使用。

顺便。我也把我用这个库写的demo和可以直接导出jar包的项目也放到github上。大家参考一下。

下面来说一下增量更新的大概流程。以及测试、使用方式。

增量更新流程。

旧版本安装包、新版本安装包 -》 生成差分文件 update.patch –》 将update.patch 上传至版本服务器 -》 客户端检测到新版本,下载update.patch 差分文件 –》 客户端将update.patch 差分文件与当前安装的旧版本apk文件 生成新版本安装包 -》 客户端安装新版本安装包,完成增量更新

下面说一下。我们自己怎么测试。
先准备下面几个文件
旧版本安装包apk 例: old.apk
新版本安装包apk 例: new.apk
bsdiff.exe
将以上三个文件,放入同一个文件夹下。
bsdiff.exe 可以在我的github上面下载。
准备好三个文件

打开cmd.exe 控制台

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

他是个小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值