uni-app wap2app云打包时,app.js通过plus.runtime.versionCode获取manifest.json的version.code与配置不一致

uni-app wap2app云打包时,app.js通过plus.runtime.versionCode获取manifest.json的version.code与配置不一致

开发环境 版本号 项目创建方式
HBuilderX 4.08 云端打包

操作步骤:

调试打印,app.js里plus.runtime.versionCode获取版本号。但是实际获取到的是1408,和配置的不一样

预期结果:

调试打印,app.js里plus.runtime.versionCode获取版本号,应与manifest.json里的version.code一致

实际结果:

调试打印,app.js里plus.runtime.versionCode获取版本号,与manifest.json里的version.code不一致

bug描述:

wap2app通过云打包应用,app.js里获取manifest.json里的version.code时,说是通过plus.runtime.versionCode获取。但是实际获取到的是1408,和配置的不一样,怎么回事啊。求助求助


更多关于uni-app wap2app云打包时,app.js通过plus.runtime.versionCode获取manifest.json的version.code与配置不一致的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

顶,老哥有没有找到问题所在

更多关于uni-app wap2app云打包时,app.js通过plus.runtime.versionCode获取manifest.json的version.code与配置不一致的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在使用 uni-app 进行 Wap2App 云打包时,如果发现通过 plus.runtime.versionCode 获取的 manifest.json 中的 version.code 与配置不一致,可能是由于以下几个原因导致的。你可以按照以下步骤进行排查和解决:

1. 检查 manifest.json 文件

确保 manifest.json 文件中的 version.code 配置正确。例如:

{
  "appid": "your_app_id",
  "version": {
    "code": "1.0.0",
    "name": "1.0.0"
  }
}

2. 检查打包配置

在云打包时,确保你在 HBuilderX 或 uni-app 的云打包配置中正确填写了版本号。有时云打包的配置可能会覆盖本地的 manifest.json 文件。

3. 清理缓存并重新打包

有时缓存可能导致打包时版本号不一致。你可以尝试以下操作:

  • 清理 HBuilderX 的缓存。
  • 删除项目的 unpackage 目录。
  • 重新进行云打包。

4. 使用 plus.runtime.version 获取版本号

如果你需要获取 manifest.json 中的 version.name,可以使用 plus.runtime.version。例如:

let version = plus.runtime.version;
console.log("App Version: " + version);

5. 检查 plus.runtime.versionCode 的用法

plus.runtime.versionCode 通常用于获取应用的内部版本号(整数),而不是 manifest.json 中的 version.code。如果你想获取 version.code,可能需要直接读取 manifest.json 文件。

6. 手动读取 manifest.json

如果你需要获取 manifest.json 中的 version.code,可以手动读取并解析 manifest.json 文件。例如:

let manifestPath = plus.io.convertLocalFileSystemURL('manifest.json');
plus.io.resolveLocalFileSystemURL(manifestPath, function(entry) {
  entry.file(function(file) {
    let reader = new plus.io.FileReader();
    reader.onloadend = function(evt) {
      let manifest = JSON.parse(evt.target.result);
      console.log("Version Code: " + manifest.version.code);
    };
    reader.readAsText(file);
  });
});
回到顶部