console.log('版本名不一致,请使用整包更新'); let downloadPath = "https://zys201811.boringkiller.cn/shianonline/apk/app.apk" uni.showModal({ //提醒用户更新 title: "更新提示", content: "有新的更新可用,请升级", success: (res) => { if (res.confirm) { // plus.runtime.openURL(downlo...
网页端后台(统一管理多个app的整包和热更新): https://ext.dcloud.net.cn/plugin?id=4470 网页端后台我是自己搭了一个,并且通过uniCloud托管后台网页 新增一个app的更新步骤 1、把uni-upgrade-center - App插件引入项目 2、 找到/uni_modules/uni-upgrade-center-app/uniCloud/cloudfunctions/check-version,右...
这里是我写成了一个下载更新的组件 downloadUp.vue,组件放在项目首页,如果版本需要更新,就会唤起组件弹窗,让用户手动强制更新,热更新的话,进入首页就自动触发了 1 2 3 4 5 6 7 created() {// 获取设备是安卓还是ios const appUpdate = uni.getStorageSync('platform'); // #ifdef APP-PLUS this.type = ...
前端打包 app 即把写好的静态资源文件套壳打包成 app ,而热更新即下载并替换 app 内部的静态资源文件,实现 app 的版本升级。 在uni-app 中,我们是如何实现热更新的呢?下面来看代码 //检测升级//#ifdef APP-PLUS//var ver = plus.runtime.version;varaid =plus.runtime.appid; uni.request({ url:this.B...
// 热更新 wgtUpload:function(){ const that=this; //plus.runtime.getProperty(),获取本机安装的版本,具体使用请参照如下链接 ///doc/zh_cn/runtime.html#plus.runtime.WidgetInfo plus.runtime.getProperty(plus.runtime.appid,function(widgetInfo) { //'Home/getShopAppVersion' 获取服务端的版本 ...
打开App,进入首页(首次),检测线上是否存在新版本,如果存在,弹窗提示用户是否进行版本更新。Android有热更新和整包更新,若为热更新,更新完会自动重启;若为整包更新,则进入浏览器(如果上架了应用市场,对应逻辑可以写成跳转到应用市场)进行下载。ios 则只能跳转到App Store进行更新。
⚠️热更新内容使用https下载,避免被三方网络劫持; 🙅不要更新违法内容、不要通过热更新破坏应用市场的利益,比如iOS的虚拟支付要老老实实给Apple分钱。 2.3.2 小结 用户对于热更新及整包更新的感知几乎是无差别的,同样需要主动触发用户下载安装,只不过包的大小不一致。
// 热更新 wgtUpload:function(){ const that=this; //plus.runtime.getProperty(),获取本机安装的版本,具体使用请参照如下链接 //https://www./doc/zh_cn/runtime.html#plus.runtime.WidgetInfo plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) { ...
// 热更新 hotRefresh() { const that = this; //plus.runtime.getProperty(),获取本机安装的版本,具体使用请参照如下链接 plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) { // 将本机版本号存起来,然后与接口返回的版本号进行对比 uni.setStorageSync('AndroidVersion', widgetInfo.versi...
"appPath": "https://xxx.oss.com/apk/app-release.apk", //整包更新地址 "wgtPath": "https://xxx.oss.com/apk/www.wgt" //热更新地址 } 1. 2. 3. 4. 5. 6. 当前代码是放在app.vue文件中 代码解读 import routingIntercept from '@/common/permission.js' import Vue...