uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?

文章目录

    • 问题描述
    • 问题分析
        • 应用代码调试所处的各种情况讲解
        • 观察对比
    • 问题解决
        • 情况1:云打包
        • 情况2:自定义壳子
        • 今天就写到这里啦~
      • 欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

今天看到一个BUG

问题描述

  • 我们使用uniapp的官方文档中uni.getAppBaseInfo()后获取的 appVersionCode appVersion ,发现获得的结果和我们实际设置的不一致,不是manifest.json里面的值,如下图所示
  • 官方文档:https://uniapp.dcloud.net.cn/api/system/getAppBaseInfo.html
    uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?_第1张图片

问题分析

  • 首先我们需要搞清楚我们是使用什么方式打的包,是uniapp云打包,安心打包,还是自定义壳子打包
  • 不同方式打包的原理不一样,所以会得到不一样的结果
  • 不同打包方式获取app info 的代码也可以有不同的写法
  • 我们的代码会运行在各种不同的情况下,所以要用不同的代码来处理
应用代码调试所处的各种情况讲解
  • 安心打包:App云端打包时需要将应用代码、打包证书等提交到DCloud云端打包机,在云端打包机的原生开发环境中生成安装包apk/ipa。 DCloud云端服务器虽然不会保存开发者应用代码和证书等信息,但开发者可能还是不放心,或者担心在网络传输过程中可能存在拦截泄漏的风险。
  • 标准基座运行:因手机差异较大,HBuilder并没有提供App的模拟器。不管uni-app或5+App/wap2app项目,都需要连接真实的手机或手机模拟器来运行测试,称之为“真机运行”。
  • 自定义基座:自定义运行基座可以所有配置生效(主要是manifest.json的配置)
  • 原生壳子自定义集成uni小程序SDK形式:uni小程序SDK,是为原生App打造的可运行基于 uni-app 开发的小程序前端项目的框架,从而帮助原生App快速获取小程序的能力
观察对比

标准基座运行
uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?_第2张图片
原生壳子自定义集成uni小程序SDK形式

问题解决

情况1:云打包

如果我们是使用云打包,其实我们的代码是被打包成wgt的格式,放进了官方提供的壳子里,这种情况下,我们应该使用这个方式去获取versionCode appVersion信息
uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?_第3张图片

const getAppInfo = () => {
		plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {
			console.log("云打包,安心打包方式获取设备信息:");
			console.log(wgtinfo);
		});
	}
情况2:自定义壳子
  • 如果我们使用自定义壳子,自己使用uniapp提供的sdk做了一个原生壳子等方式的话,我们可以使用这个代码来获取versionCode appVersion信息,这里还可以区分环境查看信息
  • hostVersion 是原生壳子里的配置版本号
  • appVersion 是uniapp项目配置的版本号
    uniapp系列-uni.getAppBaseInfo() versionCode appVersion 值不对应该怎么解决?_第4张图片
const getAppBaseInfo = () => {
		let res = uni.getAppBaseInfo()
		console.log("其他方式打包获取APP信息");
		console.log(res);
		uni.showModal({
			title: "其他方式打包获取APP信息",
			content: JSON.stringify(res),
		});
	}

今天就写到这里啦~
  • 小伙伴们,( ̄ω ̄( ̄ω ̄〃 ( ̄ω ̄〃)ゝ我们明天再见啦~~
  • 大家要天天开心哦

欢迎大家指出文章需要改正之处~
学无止境,合作共赢

在这里插入图片描述

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

你可能感兴趣的:(移动端开发,uni-app,前端)