乐于分享
好东西不私藏

Android实现APP在线下载更新

Android实现APP在线下载更新

本文作者

作者:Teprinciple

链接:http://www.jianshu.com/p/c089e222f820

本文由作者授权推送。

项目地址:

https://github.com/teprinciple/UpdateAppDemo

现在的android应用app会隔一段时间发布一个新的版本,当你打开某个app,如果有最新的版本,会提醒你是否下载更新。本文利用android自带的下载管理器DownloadManager进行下载最新版本的apk,下载完成后自动跳转安装。

效果如下:

1
检查版本并判断是否需要更新

通过获取当前app版本号与服务器上的版本号进行对比,如果本地的版本号低于服务器版本号,则弹出提示框:发现新版本,是否下载更新。

2
下载最新版apk

通过Android自带的DownloadManager下载管理器,下载服务器上最新版的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 文件下载引擎,稳定、高效、灵活、简单易用

如果你有想学习的文章直接留言,我会整理征稿。如果你有好的文章想和大家分享欢迎投稿,直接向我投递文章链接即可。

欢迎长按下图->识别图中二维码或者扫一扫关注我的公众号:

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » Android实现APP在线下载更新

评论 抢沙发

4 + 3 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮