首页 > 其他分享 >uniapp打开app后检查更新版本功能

uniapp打开app后检查更新版本功能

时间:2023-02-28 14:45:51浏览次数:40  
标签:uniapp appinfo console log res app 版本 data

获取app最新版本信息,再获取本地版本信息,进行对比,如果不同,则提示用户前往下载更新

goContact() { 

uni.request({ 

url: 'https://www.pgyer.com/apiv2/app/builds',
method: 'POST', //建议使用post访问
// data: 'grant_type=client_credentials&client_id=nm6Os9qqOacgxXjKv8PIp45H&client_secret=BXHhGIpNU7Wi3GDYUt0AGY5cWbWklrov',
data: {
_api_key:你的apikey,
appKey:你的应用appkey
},
header: {
"content-type": "application/x-www-form-urlencoded"
},
success: (res) => {
// console.log('访问成功',res);
if(res.statusCode == 200){
//获取最新版本信息
var appinfo = res.data.data.list[0];
// console.log(appinfo);

//#ifdef APP-PLUS
console.log('当前版本',plus.runtime.versionCode)
// 获取本地应用资源版本号
plus.runtime.getProperty(plus.runtime.appid, (info) => {
var current_info = info;

if(appinfo.buildVersion == current_info.version){
console.log('这是最新版本app',appinfo.buildVersion);
}else{
//提示去更新
console.log('需要更新最新版本',appinfo.buildVersion);

uni.showModal({
title: '版本更新',
content: '应用不是最新版本,请立即前往下载更新',
showCancel: false,//没有取消按钮
success: function (res) {
if (res.confirm) {
console.log('用户点击确定',appinfo.buildKey);
var href = 'https://www.pgyer.com/' + appinfo.buildKey;//下载地址

// #ifdef APP-PLUS
plus.runtime.openURL(href)
// #endif
// #ifdef H5
window.open(href)
// #endif
// #ifdef MP
uni.setClipboardData({
data: href,
success: () => {
uni.hideToast();
this.$nextTick(() => {
this.$u.toast('链接已复制,请在浏览器打开');
})
}
});
// #endif
} else if (res.cancel) {
console.log('用户点击取消');
}
}
})

}

})
//#endif
}
},
fail: (err) => {
console.log('检查更新失败',err);
}
})

},

标签:uniapp,appinfo,console,log,res,app,版本,data
From: https://www.cnblogs.com/youantianqin/p/17164179.html

相关文章

  • Appstore和Androidmarket开发者账号申请的那点事
    作为一个开发者,不可避免的问题就是申请store的账户了,相信很多个人开发者一开始的时候都很迷茫,今天给大家收集整理下appstore和androidmarket的开发者申请流程,希望对大家有所......
  • JS获取浏览器版本信息
    /***获取浏览器信息*@returns{Object}{name:String,version:String}*/exportfunctiongetBrowserInfo(){constbrowserInfo={}conststr=naviga......
  • 给WPF示例图形加上方便查看大小的格子之完善版本
    去年10月份,我曾写过一篇"给WPF示例图形加上方便查看大小的格子"的BLOG,这次由于需要,将它完善一下,可以有效地区别100的整数倍逻辑像素(与设备无关像素)单位的显示。显示效......
  • appuploader 上架详解大全(上)
    Appuploader常见错误及解决方法 问题解决秘籍遇到问题,第一个请登录苹果开发者官网检查一遍账号是否有权限,是否被停用,是否过期,是否有协议需要同意,并且在右上角切换......
  • appuploader 上架详解大全(下)
    2022iosAPP最新开发测试教程1.本文详细介绍最新的在windows上进行iosapp开发编译打包安装到手机测试的完整流程。介绍ios开发经常遇到的问题和解决方法,包括ios开发证......
  • 距离北京奥运还有359天,发布WPF版本的北京2008标志(下)
    图片显示效果: XAML代码:<ViewboxWidth="463.548828"Height="370.816895"xmlns="​​​http://schemas.microsoft.com/winfx/2006/xaml/presentation​​​"xmlns:x=......
  • Failed to start bean ‘documentationPluginsBootstrapper’; nested exception is j
    Youmightencounterthe“Failedtostartbean'documentationPluginsBootstrapper';nestedexceptionisjava.lang.NullPointerException”errorwhileupgradingS......
  • Spring不同版本的AOP
    1、Spring4、SpringBoot11.1代码实现publicinterfaceCalculator{intdiv(inta,intb);}@ComponentpublicclassCalculatorImplimplementsCalcul......
  • 尝试window10系统下使用appuim获取ios元素
    一般来说搞iOS手机的APP自动化需通过Mac电脑,但当前APP出图自动化测试平台是基于windows系统环境开发。如果因iOSAPP需要再重新搭建Mac的开发及测试环境,会很大程度上浪费资......
  • Python多版本管理pyenv
    1背景&概述因某些需求,需要安装TensorFlow,很自然地在终端敲下了以下命令:pipinstalltensorflow1然后。。。好家伙???居然没有??因为是Python3.9,去pypi搜索了,居然......