- 打开附件 demo 工程
futures-harmonyos-crash-demo - 配置鸿蒙签名,运行到 Mate 60 真机
- App 内选择 「复现」 模式
- 点击顶部 「快切 Tab(180s)」
- 约 3~4 分钟 App 闪退(无需额外操作)
- 发布:2026-06-30 16:56
- 更新:2026-07-10 19:06
- 阅读:757
【报Bug】鸿蒙 vue3:极速 Tab + web-view 必现 libjsruntime SIGSEGV(附生产 napi_delete_reference 日志)
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: macOS 26.2 (Build 25C56)
HBuilderX类型: 正式
HBuilderX版本号: 5.08
手机系统: HarmonyOS NEXT
手机系统版本号: HarmonyOS 6.0.0
手机厂商: 华为
手机机型: HUAWEI Mate 60 Pro (ALN-AL80)
页面类型: vue
vue版本: vue3
打包方式: 离线
项目创建方式: HBuilderX
操作步骤:
预期结果:
App 持续运行,不崩溃。
App 持续运行,不崩溃。
实际结果:
进程 SIGSEGV,生成 cppcrash。
demo 崩溃特征(B 类,附件日志)
进程 SIGSEGV,生成 cppcrash。
demo 崩溃特征(B 类,附件日志)
bug描述:
问题概述
鸿蒙 uni-app vue3 应用在 快速切换 Tab + 频繁 navigateTo 详情(含 web-view) 后进程 SIGSEGV 退出。
我们提供了最小复现 demo,可稳定打出 libjsruntime.so / libv8_shared.so 栈;正式 App 另有 napi_delete_reference + ArkFinalizersPack::ProcessAll 日志。怀疑为 页面/web-view 销毁与 NAPI 引用释放竞态 的不同表现,请一并排查,勿仅按单条栈修复。
环境
- HBuilderX:5.08 正式版
- uni-app 编译器:5.07(vue3)
- 设备:HUAWEI Mate 60 Pro (ALN-AL80)
- 鸿蒙:6.1.0.117(SP6C00E115R10P9)
- demo 包名:com.future.hyqhjskh.hm
- 运行方式:HBuilderX 运行到真机(debug 包;release 亦建议官方验证)
复现步骤(demo,高概率)
- 解压附件
futures-harmonyos-crash-demo.zip,HBuilderX 打开 - 配置鸿蒙签名后运行到 Mate 60 真机
- 选择 「复现」 模式
- 点击 「极速 Tab(180s)」
- 约 1~4 分钟 App 闪退(可选手动猛点底部 Tab)
生产环境关联(未在 demo 稳定复现的 A 类)
正式期货 App(包名 com.future.hmslzq)用户反馈:快速切换底部 Tab 约 1~2 分钟闪退。
附件日志 cppcrash-com.future.hmslzq-...162246572.log 特征:
使用 demo 工程进行测试:
HBuilderX 版本:5.08.2026050815-alpha
鸿蒙手机:Huawei Mate 60 Pro
测试表现:
- 点击「快切 Tab(180s)」,页面快速切换,前 1 分钟基本正常。
- 约 1 分钟开始,出现明显卡顿,卡一段时间,然后连续切换几次页面。
- 卡顿的时间越来越长,到 180s 的时候已经非常严重,结束的弹框提示“快切结束,请再等 1~2 分钟”晚了 1 分钟多才出现。
- 再等至少 3 分钟,不一定会出现崩溃。多次测试运行,只有一次出现崩溃。
- 在代码中看到,每次从详情页面退出后都会故意泄漏里面的 webview,并持续向其泵送数据,如果停掉这个泵送,就不会出现明显的卡顿现象,且未再观察到崩溃现象。
根据唯一抓到的一次崩溃日志,排查到一处空指针解引用的潜在风险,可能会在创建对象过程中出现“半失败”的场景出问题,也符合内存泄漏过载的故障场景。
由于未能稳定复现崩溃现象,暂时无法确认此修复有效,不过此修复肯定是正向的,可以提交,下次发版会带上。
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_uniCloud_WYQ @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_uniCloud_WYQ @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
@DCloud_App_Array @DCloud_uniCloud_WYQ @DCloud_heavensoft @DCloud_CHB @DCloud-HBuilderX团队 有大佬看到的话,麻烦反馈处理一下
1***@qq.com (作者)
请问napi gc这个有办法修复么还是说这次能优化?场景就是我们自定义的组件tabbar,切换重新渲染的的时候,tab切换使用时间一久,可能就崩溃了。
2026-07-10 21:07
DCloud_云服务_MAQ
回复 1***@qq.com: 这次并没有专门排查内存泄漏的问题,如果像 demo 工程这种由于业务代码导致的“泄漏”,运行时肯定是没办法的。
2026-07-11 09:26
1***@qq.com (作者)
回复 DCloud_云服务_MAQ: 好的,感谢
2026-07-13 15:48