美文网首页
uniapp检查更新并安装

uniapp检查更新并安装

作者: 扶得一人醉如苏沐晨 | 来源:发表于2023-02-07 16:57 被阅读0次

思路

1、获取当前app的版本号
2、调用接口获取新版app的版本号
3、如果新版本号大于旧版本号(需要更新,否则不需要更新)
4、根据新版本的url下载apk
5、下载成功执行install方法安装

checkVeision() {
            // 获取manifest.json 的信息 版本信息
            plus.runtime.getProperty(plus.runtime.appid, wgtinfo => {
                this.curVersion = wgtinfo.version; //应用版本名称
                this.curVersionCode = wgtinfo.versionCode; //应用版本号
                console.log('this.curVersion:', wgtinfo);
            });
            // getObj获取新版本信息
            getObj('1').then(res => {
                console.log(res.data.data);
                // 当前版本code
                let curVersionCode = parseInt(this.curVersionCode);
                // 新版本code
                let newVersionCode = parseInt(res.data.data.versionCode);
                // 有新版本
                if (newVersionCode > curVersionCode) {
                    // 检测新版本提示
                    uni.showModal({
                        title: '版本检查',
                        content: '检测到新版本,是否下载安装包?',
                        confirmText: '下载',
                        success: res => {
                            // 安装包下载地址
                            const url = 'https://hikpublic.oss-cn-shanghai.aliyuncs.com/eamsoft/EAM.apk';
                            uni.showLoading({
                                title: '安装包下载中'
                            });
                            // 新建下载任务
                            let dtask = plus.downloader.createDownload(url, {}, (d, status) => {
                                if (status == 200) {
                                    uni.hideLoading();
                                    uni.showModal({
                                        title: '提示',
                                        content: '安装包下载成功,是否确认安装?',
                                        success: res => {
                                            if (res.confirm) {
                                                plus.runtime.install(
                                                    plus.io.convertLocalFileSystemURL(d.filename),
                                                    {},
                                                    success => {
                                                        uni.showToast({
                                                            title: '安装成功',
                                                            mask: false,
                                                            duration: 1500
                                                        });
                                                    },
                                                    error => {
                                                        uni.showToast({
                                                            title: '安装失败',
                                                            mask: false,
                                                            duration: 1500
                                                        });
                                                    }
                                                );
                                            }
                                        }
                                    });
                                } else {
                                    uni.hideLoading();
                                    uni.showToast({
                                        title: '安装包下载失败',
                                        mask: false,
                                        duration: 1500
                                    });
                                }
                            });
                            // 开始下载
                            dtask.start();
                        }
                    });
                } else {
                    // 已经是最新版本
                    uni.showModal({
                        title: '版本检查',
                        content: '当前已经是最新版本',
                        showCancel: false,
                        confirmText: '我知道了',
                        success: function(res) {}
                    });
                }
            });
        },

相关文章

  • uniapp检查更新

  • uniapp检查版本更新

    思路:我们现在的需求就是当我们修改了项目代码之后,用户的设备一打开App,就会提示软件有更新,自动开启下载安装最新...

  • docker的部署与使用

    1.更新yum环境 ①.更新yum源 ②.安装epel源 ③.清除yum缓存 2.安装并运行Docker 3.检查...

  • Ubuntu16.04搭建nginx服务器

    更新源并安装nginx 备注:遇到安装失败时,极大可能是因为端口冲突所致,注意检查80端口是否被其他进程占用 检查...

  • Mac TypeScript的安装和编译

    一、安装并检查 node 二、安装并检查 TypeScript 三、查看node的安装路径 四、配置安装路径

  • docker使用技巧

    环境配置 检查curl包有没有安装 如果curl没有安装的话,则先更新apt源,并安装curl包 设置当前用户为d...

  • 树莓派编译安装python3.6

    一、更新树莓派系统 二、安装python依赖环境 三、下载python3.6版本源码并解压 四、编译安装 五、检查...

  • app更新安装失败

    1、uniapp打包的app,新版本会上传到蒲公英,让用户可以直接更新下载,无需卸载再重新安装、这是发现更新安装时...

  • App 版本更新

    App更新流程:检查更新==>提示更新==>下载apk==>安装新版App 检查更新:根据不同的业务和后台逻辑实现...

  • 应用篇-Ubuntu18-安装Docker-2020-12-02

    Ubuntu18 安装Docker 1.检查并卸载旧版本Docker 2.更新 3.安装依赖包 4.配置秘钥 5....

网友评论

      本文标题:uniapp检查更新并安装

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