本文作者
作者:Teprinciple
链接:https://www.jianshu.com/p/c089e222f820
本文由作者授权推送。
项目地址:
https://github.com/teprinciple/UpdateAppDemo
现在的android应用app会隔一段时间发布一个新的版本,当你打开某个app,如果有最新的版本,会提醒你是否下载更新。本文利用android自带的下载管理器DownloadManager进行下载最新版本的apk,下载完成后自动跳转安装。
效果如下:
1
检查版本并判断是否需要更新
通过获取当前app版本号与服务器上的版本号进行对比,如果本地的版本号低于服务器版本号,则弹出提示框:发现新版本,是否下载更新。
2
下载最新版apk
注意添加权限:
<uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
3
下载完成后跳转安装
通过广播接收者,接收到下载完成后发出的广播,跳转到系统的安装界面,进行安装。
注意需要在AndroidMainfest.xml中注册receiver:
** 通过上面三步就可以快速实现APP的在线更新 。**
项目地址:
https://github.com/teprinciple/UpdateAppDemo
更新改进说明
本项目进行了比较大的改进。主要改进之处:
1、将以前的Library发布到Jcenter,更方便集成
dependencies { compile 'com.teprinciple:updateapputils:1.1'}
2、新增更新判断方式以及apk下载方式
3、简化API使用
UpdateAppUtils.from(this) .serverVersionCode(2) //服务器versionCode .serverVersionName("2.0") //服务器versionName .apkPath(apkPath) //最新apk下载地址 .update();
小tip:
如果担心DownloadManager被系统阉割,可以自己实现下载模块,这里也给大家推荐一个非常优秀的下载库。
https://github.com/lingochamp/FileDownloader
Android 文件下载引擎,稳定、高效、灵活、简单易用
标签: 有看头安卓版