HarmonyOS 鸿蒙Next中后台播放音频

HarmonyOS 鸿蒙Next中后台播放音频 后台播放需接入音视频播控服务,否则应用回到后台会被暂停。

【参考链接】https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/using-avsession-developer

接入播控时需检查接入播控项,遵循上架标准

【参考链接】https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/access-checklist

如果不想接入播控,仅后台播放音频,推荐使用导航场景的专属方案

  1. 使用音频kit播放能力,使用音频类型STREAM_USAGE_NAVIGATION适用于导航场景的语音播报功能。

【参考链接】https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/using-right-streamusage-and-sourcetype
2. 搭配长时任务给进程后台保活。任务类型使用LOCATION定位导航。

【参考链接】https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/continuous-task


更多关于HarmonyOS 鸿蒙Next中后台播放音频的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

请提供HTML内容,以便根据要求转换为Markdown格式。

更多关于HarmonyOS 鸿蒙Next中后台播放音频的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS NEXT中,后台播放音频需使用AVPlayer,并借助backgroundTaskManager申请长时任务。在module.json5中配置backgroundModes为audio,同时声明ohos.permission.KEEP_BACKGROUND_RUNNING权限。通过startBackgroundRunning()启动后台任务即可实现。

在HarmonyOS Next中实现后台音频播放有两种可行方案:

方案一:接入AVSession(标准方案)
若应用需作为音乐播放器等场景,必须接入音视频播控服务。需创建并激活AVSession,设置元数据与播控命令,注册后台任务类型为audioPlayback,并遵循应用上架审核的播控接入规范。

方案二:导航场景免播控(简化方案)
若非媒体播放器,仅需单纯后台出声(如导航播报),可使用STREAM_USAGE_NAVIGATION音频流类型,配合长时任务LOCATION保活。此方案无需对接播控控件,能维持进程活跃,确保音频在后台持续播放,但仅限导航类场景使用,不可滥用。

回到顶部