一,版本号比较
获得packageInfo
PackageInfo packageInfo = packageManager.getPackageInfo(getPackageName(), 0);
packageInfo 中有versionCode 和versionName 分别对应build.gradle中的版本名称和版本名字。
通过app与服务器交互拿到最新版本的 versionCode 与本地版本versionCode比较,从而得知是否有新版本可更新。
二,下载新版本
拿到新版本apk下载地址后用DownloadManager进行下载,DownloadManager是官方推荐的做法,如果想自定义下载界面以及进度可自定义下载。
三,下载完成后自动跳转安装界面
在使用DownloadManager下载完成后会发出 广播“android.intent.action.DOWNLOAD_COMPLETE”,然后注册广播接收器,在接收到广播后进行安装处理。