前言
之前已经讲过了增量更新原理及增量更新动态库的制作,那么这节让我们学习下,如何在Android项目中利用代码实现增量更新吧。
今天涉及内容:
- 开始准备
- 三个文件
- 增量更新文件合成库
- 文件权限
- 在
androidmanifast.xml文件中添加文件读写和apk安装权限 - 动态读写权限申请
- Fileprovider 文件权限
-
apk安装兼容
- 在
- 增量更新的核心
- 增量更新实现步骤
- 将
app_1.0.apk和old-to-new.patch拷贝到手机的可访问路径下 - 将增量更新合成
so库拷贝到自己项目中 - 最后运行代码
- 将
- 项目结构图和项目效果图
先来波效果图

1.gif
一. 开始准备
在做增量更新时,我们需要准备以下东西:
- 三个文件
app_1.0.apk: 旧的apk
app_2.0.apk: 旧的apk
old-to-new.patch:app_1.0.apk与app_2.0.apk差异生成的patch文件,用作与app_1.0.apk合成生成新的apk。
如下图
image.png - 增量更新文件合成库
包括几个so文件夹(用于兼容不同的架构)和一个jar包(用于java调用文件合成方法),如下图:
image.png
二. 文件权限
我测试场景是将app_1.0.apk和old-to-new.patch 拷贝到手机的sdcard下(模拟增量更新场景),省去了文件下载流程。
在测试过程中会涉及到一些文件及安装权限。
- 在
androidmanifast.xml文件中添加文件读写和apk安装权限

