通过plus.runtime.install 安装包即可
- 发布:2026-03-16 15:59
- 更新:2026-03-17 20:06
- 阅读:36
产品分类: HTML5+
HBuilderX版本号: 5.01
手机系统: iOS
手机系统版本号: iOS 18
手机厂商: 苹果
手机机型: Iphone 15
打包方式: 离线
操作步骤:
预期结果:
安装成功
安装成功
实际结果:
安装失败
安装失败
bug描述:
使用xcode 26, 运行到真机. 安装wgt热更新包, H5端报错: The manifest.json in the WFT installation package is not a vaild JSON;
控制台提示: Manifest.JSON parsing failed, please make sure the format is correct and cannot contain comments
由于json格式正确,且没有更多的提示. 无法知道是否是缺少某个字段导致的错误. 如果是字段缺少,那么希望报出缺少的字段. 因为H5+APP的manifest文档已经不维护了.
实际上json 格式没有问题, 并且在同一个包在旧版SDK上工作正常.
此处json内容做了部分值隐藏
{
"@platforms": [
"android",
"iPhone",
"iPad"
],
"id": "*****",
"name": "*****",
"version": {
"name": "5.2.85",
"code": 5285
},
"description": "",
"icons": {
"72": "icon.png"
},
"launch_path": "xiao.html",
"developer": {
"name": "*****",
"email": "",
"url": "*****"
},
"permissions": {
"Accelerometer": {
"description": "访问加速度感应器"
},
"Audio": {
"description": "访问麦克风"
},
"Cache": {
"description": "管理应用缓存"
},
"Camera": {
"description": "访问摄像头"
},
"Console": {
"description": "跟踪调试输出日志"
},
"Contacts": {
"description": "访问系统联系人信息"
},
"Device": {
"description": "访问设备信息"
},
"Downloader": {
"description": "文件下载管理"
},
"Events": {
"description": "应用扩展事件"
},
"File": {
"description": "访问本地文件系统"
},
"Gallery": {
"description": "访问系统相册"
},
"Geolocation": {
"description": "访问位置信息"
},
"Invocation": {
"description": "使用Native.js能力"
},
"Messaging": {
"description": "访问通讯能力"
},
"Orientation": {
"description": "访问方向感应器"
},
"Proximity": {
"description": "访问距离感应器"
},
"Storage": {
"description": "管理应用本地数据"
},
"Uploader": {
"description": "管理文件上传任务"
},
"Runtime": {
"description": "访问运行期环境"
},
"XMLHttpRequest": {
"description": "跨域网络访问"
},
"Zip": {
"description": "文件压缩与解压缩"
},
"Barcode": {
"description": "管理二维码扫描插件"
},
"Maps": {
"description": "管理地图插件"
},
"Speech": {
"description": "管理语音识别插件"
},
"Webview": {
"description": "窗口管理"
},
"NativeUI": {
"description": "原生UI控件"
},
"Navigator": {
"description": "浏览器信息"
},
"NativeObj": {
"description": "原生对象"
},
"Share": {
"description": "分享"
},
"plugintest": {
"description": "5+和uniapp 插件demo "
},
"payment": {
"description": "支付"
}
},
"plus": {
"safearea": {
"background": "#CCCCCC",
"backgroundDark": "#2f0508",
"bottom": {
"offset": "auto"
},
"left": {
"offset": "auto"
},
"right": {
"offset": "auto"
}
},
"splashscreen": {
"autoclose": true,
"waiting": false
},
"popGesture": "close",
"runmode": "liberate",
"signature": "*****",
"statusbar": {
"immersed": "none",
"style": "light",
"background": "#000"
},
"distribute": {
"plugins": {
"share": {
"weixin": {
"appid": "*****",
"UniversalLinks": "*****"
},
"qq": {
"appid": "*****"
}
},
"maps": {
}
},
"apple": {
"urlschemewhitelist": [
"iosamap",
"baidumap"
]
},
"ios": {
"dSYMs": false
}
}
}
}
需要补充 hbuilderx 版本信息及详细的报错日志。
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
作为DCloud官方人员,对该bug反馈的评审意见如下:
1. 反馈内容完整性分析
优点:
- 基本信息完整:包含HBuilderX版本(5.01 Alpha)、平台(iOS)、设备信息(iPhone 15, iOS 18)等必要环境信息
- 错误描述清晰:提供了具体的错误提示("The manifest.json in the WFT installation package is not a valid JSON" 和 "Manifest.JSON parsing failed")
- 对比信息有价值:明确指出同一wgt包在旧版SDK工作正常,新版SDK(5.01.2026021122-alpha)出现异常,这是关键的回归测试线索
- 提供了manifest.json源码:虽然做了部分脱敏处理,但展示了完整的JSON结构,便于初步排查格式问题
待补充建议:
- 编码格式确认:建议确认manifest.json文件编码是否为UTF-8无BOM格式,某些情况下BOM头会导致JSON解析失败
- wgt包结构:建议提供wgt包内部文件结构列表(是否包含__MACOSX等隐藏目录,或文件路径是否包含特殊字符)
- 完整日志:建议提供从调用
plus.runtime.install开始到报错结束的完整原生日志(base日志),而不仅是H5端报错信息
2. Bug是否成立分析
经检索知识库,暂未找到关于H5+APP在iOS平台5.01版本wgt热更新manifest解析失败的已知问题或相关依据。
但根据反馈描述的特征:
- 旧版SDK正常,新版SDK异常
- 错误提示表明是manifest.json解析阶段失败
- 用户确认JSON格式正确且无注释
这符合版本回归bug的特征。由于H5+APP manifest.json解析逻辑在SDK升级后可能出现校验规则变更(如更严格的JSON校验、新增必填字段校验等),建议开发团队核查5.01版本iOS端wgt安装模块的manifest解析逻辑变更记录。
3. 基本概念与知识库依据
从知识库中未检索到与本次问题直接相关的技术依据。
初步排查建议(基于通用技术逻辑,非知识库依据):
- 检查manifest.json是否存在隐藏的BOM头(UTF-8 BOM)
- 检查wgt包压缩格式是否为标准zip格式,且未包含特殊文件(如.DS_Store等)
- 检查manifest.json中是否包含未转义的特殊字符(如换行符、制表符等)
结论:该反馈是一个完整度较高的有效bug反馈,提供了版本对比等关键线索。由于知识库中暂无相关依据,建议提交至官方issue系统并附上可复现的wgt测试包,以便开发团队核查新版SDK的manifest解析逻辑。