uniapp整包更新与热更新

uniapp整包更新与热更新

plus.runtime.getProperty(plus.runtime.appid, function(inf) {
                uni.request({
                    url: "你与后台约定的接口",
                    method: "POST",
                    data: {//把版本号传给后台进行比对
                        "appid": plus.runtime.appid,
                        "versionNumber": inf.version,//版本号
                        "name": plus.os.name
                    },
                    success(res) {
                        if (res.data.code == 201) {
                            // 整包更新
                            if (res.data.data.status == 1) {
                                uni.showModal({ //提醒用户更新  
                                    title: "更新提示",
                                    content: res.data.data.note,
                                    success: (e) => {
                                        if (e.confirm) {
                                            plus.runtime.openURL(res.data.data.downloadUrl);
                                        }
                                    }
                                })
                            } else if (res.data.data.status == 2) {
                                // 热更新
                                uni.downloadFile({
                                    url: res.data.data.downloadUrl,
                                    success: (downloadResult) => {
                                        plus.nativeUI.showWaiting("安装wgt文件...");
                                        plus.runtime.install(downloadResult.tempFilePath, {
                                            force: true
                                        }, function() {
                                            plus.nativeUI.closeWaiting();
                                            plus.nativeUI.alert("应用资源更新完成!", function() {
                                                plus.runtime.restart();
                                            });
                                        }, function(e) {
                                            plus.nativeUI.closeWaiting();
                                            plus.nativeUI.alert("安装wgt文件失败[" + e.code + "]:" + e.message);
                                        });
                                    }
                                });
                            }
                        }
                    },fail(res) {
                        console.log(res)
                    }
                })
            });

你可能感兴趣的:(uniapp整包更新与热更新)