美文网首页
安卓版本升级(AppUdate)

安卓版本升级(AppUdate)

作者: Crassus | 来源:发表于2022-03-08 17:15 被阅读0次

    安卓端实现自身检测升级

    GitHub上对比各种开源库,避开各种坑位最后选择了AppUpdate, 其他的库要么就是年久失修,要么就是一个下载功能还要各种其他的库(ps:版本更新功能不就是显示一个UI和下载服务么,这都做不好开啥源)。
    然后找到这个够简洁,能用,问题也没啥,fork的人数也不少;

    具体集成步骤;

    1. app/build.gradle 引入

    implementation 'com.github.azhon:AppUpdate:3.0.7'
    

    2.app/AndroidManifest.xml添加适配安卓11应用安装权限

    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
    

    3.在MainActivity中协调后台提供个关于版本控制的接口

    然后成功调用第4步骤

    4.在3网络请求成功将下载的App信息进行配置调用

    private fun checkAppInfo(info: AppUpdateInfo){
            val configuration = UpdateConfiguration()
            configuration
                .setEnableLog(false)
                .setJumpInstallPage(true)
                .setDialogButtonColor(Color.WHITE)
                .setShowNotification(true)
                .setShowBgdToast(true)
                .setForcedUpgrade(false)
                .setDialogButtonColor(Color.parseColor("#76BBAD"))
                //设置对话框强制更新时进度条和文字的颜色
                .setDialogProgressBarColor(Color.parseColor("#76BBAD"))
    
            val manager = DownloadManager.getInstance(this);
            manager.setApkName("xxx.apk")
                .setApkUrl(info.url)
                .setSmallIcon(R.mipmap.ic_launcher)
                 // 是否显示提示最新版本
                .setShowNewerToast(false)
                .setConfiguration(configuration)
                //设置了此参数,那么会自动判断是否需要更新弹出提示框
                .setApkVersionCode(info.versionCode)
                .setApkVersionName(info.version)
                .setApkSize(info.appSize)
                .setApkDescription(info.updateContent)
                .download();
        }
    

    注意: 主要通过setApkVersionCode的值进行判断是否需要升级。

    相关文章

      网友评论

          本文标题:安卓版本升级(AppUdate)

          本文链接:https://www.haomeiwen.com/subject/vfiarrtx.html