uni-app WGT安装包中manifest.json文件不存在

uni-app WGT安装包中manifest.json文件不存在

操作步骤:

  • 通过uniapp的升级中心的一个功能升级,首先发布 1.0.0 apk 然后 发布 1.0.1 wgt

预期结果:

  • 安装成功是否重启

实际结果:

  • WGT安装包中 manifest.json 文件不存在

bug描述:

  • 热更新安装失败 提示 WGT安装包中 manifest.json 文件不存在

| 信息类别         | 信息内容           |
|------------------|--------------------|
| 产品分类         | uniapp/App         |
| PC开发环境       | Mac                |
| PC开发环境版本   | M1芯片             |
| HBuilderX类型    | 正式               |
| HBuilderX版本    | 3.95               |
| 手机系统         | Android            |
| 手机系统版本     | Android 14         |
| 手机厂商         | 小米               |
| 手机机型         | 小米10             |
| 页面类型         | nvue               |
| Vue版本          | vue3               |
| 打包方式         | 云端               |
| 项目创建方式     | HBuilderX          |

更多关于uni-app WGT安装包中manifest.json文件不存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html

13 回复

完成了,是 升级中心 uni-upgrade-center - App的bug ,为什么写的代码会蹦出 Runtime模块的错误提示 就很怪,而且这个升级中心存在了很久的,没想到前两天才把这个wgt升级修复

更多关于uni-app WGT安装包中manifest.json文件不存在的实战教程也可以访问 https://www.itying.com/category-93-b0.html


更具社区内某些回复 有人说是 这个文件中280行的一个if判断错误,原本是 this.isWGT,res.tempFilePath.split(’.’).slice(-1) 然后改成 if (this.isWGT && res.tempFilePath.split(’.’).slice(-1)[0] !== ‘wgt’) { 但是他依然回报错,但是它会提示你某某模块app未勾选,但是wgt存在此模块。我直接打包app,然后什么都不改,改个版本号生成wgt 怎么可能出现我没有勾选模块的情况

基座包和热更新包的模块勾选需要一致,如果基座包中没有地图模块,但是热更新包中有地图模块也不行

回复 BoredApe: 是一样的,完全一样!确认了是都勾选了的

回复 BoredApe: 这个不是主要的,主要是提示WGT安装包中manifest.json文件不存在

回复 BoredApe: 出现所谓的模块勾选不一致是因为我改了他这里的判断逻辑

回复 3***@qq.com: 打的wgt包不正确,不是通过HBuilder X打的吗?

如果是自己压缩的代码修改为wgt,需要注意目录层级

我是通过HBuilder X打的 就是发行-制作应用wgt安装包

请将安装包和wgt包上传到附件中。

回复 BoredApe: 刚刚看到升级插件更新了,我重新引入试一下

在 uni-app 项目中,manifest.json 文件是非常重要的配置文件,它包含了应用的基本信息、配置项、权限设置等。如果你在 WGT(Weex 增量包)安装包中发现 manifest.json 文件不存在,可能会导致应用无法正常运行或安装失败。

以下是可能的原因和解决方法:


可能的原因:

  1. 未正确生成 WGT 包
    • 在生成 WGT 包时,manifest.json 文件可能没有被正确打包进去。
  2. 项目结构问题
    • manifest.json 文件可能被意外删除或移动到了错误的位置。
  3. 构建工具问题
    • 使用的构建工具(如 HBuilderX)可能存在配置问题,导致 manifest.json 文件未包含在 WGT 包中。

解决方法:

  1. 检查项目结构

    • 确保 manifest.json 文件存在于项目的根目录下(通常与 pages.jsonApp.vue 等文件同级)。
    • 如果文件丢失,可以从备份中恢复,或重新创建一个 manifest.json 文件。
  2. 重新生成 WGT 包

    • 使用 HBuilderX 重新生成 WGT 包,确保在生成过程中 manifest.json 文件被正确包含。
    • 生成步骤:
      1. 打开 HBuilderX。
      2. 选择项目,右键点击项目名称。
      3. 选择 发行 > 原生 App-制作移动 App 资源升级包
      4. 检查生成的 WGT 包中是否包含 manifest.json
  3. 检查构建配置

    • 确保项目的构建配置没有排除 manifest.json 文件。
    • vue.config.jsmanifest.json 中检查是否有错误的配置。
  4. 手动添加文件

    • 如果 WGT 包已生成但缺少 manifest.json,可以尝试手动解压 WGT 包,将 manifest.json 文件添加到正确的位置,然后重新打包。
  5. 更新开发工具

    • 确保使用的 HBuilderX 或其他构建工具是最新版本,避免因工具问题导致的文件丢失。

示例 manifest.json 文件内容:

如果你需要重新创建 manifest.json 文件,可以参考以下基本结构:

{
  "name": "MyApp",
  "appid": "__UNI__APPID__",
  "description": "My uni-app project",
  "versionName": "1.0.0",
  "versionCode": "100",
  "transformPx": false,
  "networkTimeout": {
    "request": 60000,
    "connectSocket": 60000,
    "uploadFile": 60000,
    "downloadFile": 60000
  },
  "app-plus": {
    "splashscreen": {
      "alwaysShowBeforeRender": true,
      "autoclose": true,
      "waiting": true
    }
  }
}
回到顶部