该篇文章从eoeAndroid搬迁过来的,原文地址:【第三节】android增量升级之提供服务端代码,整理项目
前言
在之前的两节中分别讲了 【第一节】android增量升级之生成so文件 和【第二节】android增量升级之使用so文件进行增量升级,没看的童鞋可以去看一下,这一节,我这边提供一个下载差异包的服务端,并且增加app中下载合并差异包的操作。
一、ApkPatchServer项目
该项目的使用springmvc粗略架构的一个项目,项目里总共只有两个类,一个是DiffApk.java,另一个是ApkPatchController.java
DiffApk.java是调用电脑里的bsdiff.exe工具进行差分新旧apk获取差异包的,我们可以直接run as -> java application运行。
ApkPatchController.java是提供接口的类,里面有一个提供下载差异包的方法,调用接口需要先将该项目部署到tomcat上运行,下载的接口为
http://localhost:8080/ApkPatchServer/rest/download
服务端运行的顺序是,先使用DiffApk类获取差异包,然后启动服务器,这样就能调用接口下载差异包了。
二、SmartAppUpdate项目
该项目在第二节项目的基础上增加了FileDownloadThread.java类,可以进行差异包下载操作。增加权限
<uses-permission android:name="android.permission.INTERNET" />
备注:ApkPatchServer项目中代码里一些路径是根据本人的电脑设置的,所以需要童鞋们根据自己的电脑进行修改