最近公司项目需要APK更新,使用到了DownLoadManager, 之前也写过一篇博客是:apk更新原理,可以看下。
使用DownLoadManaager优点无非就是,不需要自己去实现,只要给它一个Url,自己内部能够去实现,支持查看下载状态。
先说一下,更新的流程吧
- 请求服务器,获取到版本号
- 比较版本号大小,大于就更新,就弹出Dialog提示用户更新APK,小于就不显示Dialog。
- 点击更新APK ,此时先检查APK是否存在,不存在的话就下载;存在话,就比较版本号,大于本应用的version说明之前已经下载过了APK,只不过没安装,此时直接安装;小于本应用就直接下载。
- 使用DownLoadManager下载APK
- 下载成功之后,判断本Android版本是否是大于Android.N(7.0);7.0以上和7.0一下的安装方法是不一样的。
下面是原理图:
至于DownloadManager的使用,网上一大堆,在这不再叙述。
说一下注意点