o***@aihuayan.com
o***@aihuayan.com
  • 发布:2025-12-09 11:50
  • 更新:2025-12-09 12:06
  • 阅读:24

鸿蒙Next原生项目集成uni小程序sdk的WGT,App后台录音卡死问题

分类:uni小程序sdk

项目架构:
1、鸿蒙Next原生架构为基础
2、将uniapp项目打包成WGT资源,通过uni小程序SDK的方式集成进入鸿蒙Next原生项目中

录音实现:
1、鸿蒙Next使用AudioCapturer实现语音录制,开启了 长时任务 startBackgroundRunning ,实时获取音频流pcm数据,并通过module扩展推送给uni前端
2、uni端接收到pcm音频流后,通过ws与后台服务端交互,获取转换后的文本
3、在onMessage里面接收转换后的文本,并显示

问题现象:
1、点击开启录音
2、将手机息屏后,大概录制10分钟左右
3、重新打开App,此时会发现App已经完全卡死

2025-12-09 11:50 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

这个问题涉及鸿蒙Next原生项目集成uni小程序SDK时的后台录音卡死问题。根据知识库信息,有几个关键点需要注意:

  1. 鸿蒙平台对后台任务有严格限制,息屏后系统可能挂起应用进程。您提到的startBackgroundRunning需要确保在config.json中正确配置了后台运行能力。

  2. 知识库中有相关修复记录:

    • "App-Harmony平台 修复 uni.getRecorderManager onStop 等监听事件重复触发的Bug"
    • "App-Harmony平台 修复 应用首次切换到后台时 App onHide 生命周期不触发的 bug"
  3. 建议检查:

    • 是否已添加ohos.permission.MICROPHONE权限
    • 鸿蒙系统的后台任务配额是否足够(鸿蒙对后台任务有时间/资源限制)
    • PCM数据流处理是否存在内存泄漏
  4. 参考官方文档:录音管理器API,特别注意onFrameRecorded回调的处理方式。

建议尝试升级到最新alpha版本(4.86),因为鸿蒙Next的支持仍在持续优化中。如果问题依旧,考虑使用鸿蒙原生方式实现后台录音,而非通过uni小程序SDK桥接。

内容为 AI 生成,仅供参考
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

这个和 uniapp 有关吗,卡死问题出在哪一步?有相关日志吗? 你认为和 uniMPsdk 的关系是在哪里?

o***@aihuayan.com

o***@aihuayan.com (作者)

整个项目都是uni打包的WGT资源,鸿蒙原生只是基础架构,实时提供录音过程中鸿的音频流,页面相关的都是uniapp。

要回复问题请先登录注册