文章目录

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

今天看到一个BUG

问题描述

  • 我们使用uniapp的官方文档中uni.getAppBaseInfo()后获取的 appVersionCode appVersion ,发现获得的结果和我们实际设置的不一致,不是manifest.json里面的值,如下图所示
  • 官方文档:https://uniapp.dcloud.net.cn/api/system/getAppBaseInfo.html

问题分析

  • 首先我们需要搞清楚我们是使用什么方式打的包,是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快速获取小程序的能力

观察对比

标准基座运行

原生壳子自定义集成uni小程序SDK形式

问题解决

情况1:云打包

如果我们是使用云打包,其实我们的代码是被打包成wgt的格式,放进了官方提供的壳子里,这种情况下,我们应该使用这个方式去获取versionCode appVersion信息

const getAppInfo = () => {plus.runtime.getProperty(plus.runtime.appid, function(wgtinfo) {console.log("云打包,安心打包方式获取设备信息:");console.log(wgtinfo);});}

情况2:自定义壳子

  • 如果我们使用自定义壳子,自己使用uniapp提供的sdk做了一个原生壳子等方式的话,我们可以使用这个代码来获取versionCode appVersion信息,这里还可以区分环境查看信息
  • hostVersion 是原生壳子里的配置版本号
  • appVersion 是uniapp项目配置的版本号
const getAppBaseInfo = () => {let res = uni.getAppBaseInfo()console.log("其他方式打包获取APP信息");console.log(res);uni.showModal({title: "其他方式打包获取APP信息",content: JSON.stringify(res),});}

今天就写到这里啦~

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

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

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

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

  1. uni-app关于uni.navigateTo的坑以及解决方案

    我们在做的这个产品目前的结构是这样的,使用nvue编写的uni-app项目作为app端,使用vue编写的vue项目作为H5端.在app端一共有三个页面,分别为loading页面.setting页面.i ...

  2. uni-app用uni.chooseImage API调用相机或从相册中选择图片

    uni-app用uni.chooseImage API调用相机或从相册中选择图片 chooseImage: function() {var _this = this;uni.chooseImage({ ...

  3. uniapp使用uni.createInnerAudioContext()实现在app 小程序 h5有声书的播放

    实现读书软件的听书功能,适配app,小程序,h5 实现效果展示功能带你包括: 章节,倒计时,上一章,下一章,播放,暂停,倍速: uniapp官方uni.createInnerAudioContext( ...

  4. PDF签名系列(2):PDF的签名值到底存在哪里?

    来源:PDF签名系列(2):PDF的签名值到底存在哪里? - 知乎 研究过PDF签名的同学应该见过下面这张图, 来自ADOBE的文档Acrobat_DigitalSignatures_in_PDF.p ...

  5. uni-app关于uni.setStorageSync和uni.setStorage踩坑

    使用uni-app的uni.setStorageSync缓存数据报错: Error: setStorageSync:fail parameter `key`. Expected String with ...

  6. uniapp监测网络uni.onNetworkStatusChange uni.getNetworkType的使用区别

    uniapp监测网络uni.onNetworkStatusChange & uni.getNetworkType的使用区别 阐述: 在实际项目开发中,难免会监测网络,下面来具体详解下小程序这两 ...

  7. ajax xmlhttp.responsetext,用ajax实现异步刷新,xmlHttp.responseText接到的值不对

    用ajax实现异步刷新,xmlHttp.responseText接到的值不对 用ajax实现异步刷新,xmlHttp.responseText接到的值不对 js: var xmlHttp; var j ...

  8. STM32Gx系列进入NMI中断造成芯片死机的解决办法

    STM32Gx系列进入NMI中断造成芯片死机的解决办法 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 STM32Gx系列进入NMI中断造成芯片死机的解决办法 前言 一.问 ...

  9. HP Envy系列重装系统时找不到磁盘驱动器的解决办法

    HP Envy系列重装系统时找不到磁盘驱动器的解决办法 1.系统出现少量不正常,但可以进入桌面时:      采用硬盘法重装:      这种方法是最简单的,因为要解决上述的无法找到磁盘驱动器问题,只 ...

最新文章

  1. 同花顺函数API(转载)
  2. Angular NgRx MemoizedSelector的类型定义学习
  3. 一个封装比较完整的FTP类——clsFTP
  4. 如何在php中插入map热点,php中关于Map热点的运用
  5. Windows10+CUDA8.0+VS2015+CUDNN5下配置caffe
  6. C++STL::两种方式实现STL容器的reference语义
  7. java中调用 dll 动态库的简洁方法 JNative
  8. 关于面试,关于大学——大四狗的自述
  9. xpos兼容android最高版本,[原创]学习篇-xposed框架及高版本替代方案
  10. 利用python构建马科维茨_Markowitz投资组合之Python模拟
  11. 营销推广的好工具:博客营销
  12. 边缘计算是什么 优点
  13. C++ - priority_queue
  14. mip php,zblog php mip主题开发官方指南
  15. oCPC实践录 | oCPC产品设计与出价原理(1)
  16. 操作系统转载和注释___荷风听雨
  17. matlab画简单曲线,并进行标注、图例、加网格,等操作
  18. 通过淘宝链接获取解析获取商品id(淘宝API )
  19. 三分钟读懂双十二布局玩法,大促流量销量双翻倍so easy!
  20. 可重复读隔离级别如何解决脏读、不可重复读

热门文章

  1. 40岁,不想上班,干点什么生意合适?
  2. 详解CAN总线:CAN总线报文格式—数据帧
  3. SQL:结构化查询语言(Structured Query Language)。
  4. vmware16无法拖曳以及复制win11本机文件到ubuntu下的解决方案
  5. kali-linux vmwaretools 安装
  6. Microsoft Build 2020注册不仅是开放的,而且是免费的,实时的,是虚拟的,并且一切都为您服务
  7. 慢慢做一个模仿天猫网站-3
  8. 难道真的有人因为要分享squish测试工具而去学习QT吗
  9. css3蒲公英飘动效果_纯CSS3逼真的气球漂浮动画特效
  10. ABAP FICO F-37/F-47创建预收/预付款