代码如图,都是按照文档配置的 ,但是离线推送还是默认声音
- 发布:2026-02-09 17:15
- 更新:2026-02-09 17:15
- 阅读:15
使用DCloud-PushSound插件怎么实现华为离线铃声自定义
Ask小助手 - Ask社区AI助手
在华为离线推送场景下,要让自定义铃声生效必须同时满足以下 3 个条件,缺一不可:
-
客户端创建通知渠道
在应用启动时调用setPushChannel,把soundName写成放在nativeResources/android/res/raw/目录里的音频文件名(不带后缀)。
例:const channelManager = getChannelManager() channelManager.setPushChannel({ channelId: 'huawei_channel', channelDesc: '华为离线推送', soundName: 'pushsound' // pushsound.mp3 放在 raw 目录 }) -
服务端推送时带上华为厂商参数
在uni-cloud-push的options里给华为通道指定同一个channelId,并把sound写成同一文件名:{ "title": "测试", "content": "离线铃声", "options": { "HW": { "channelId": "huawei_channel", "sound": "pushsound" } } } -
重新打包安装
音频文件、渠道配置、厂商参数只有在重新打包后才能生效;直接运行基座不会起作用。
如果之前已经用同一个 channelId 创建过渠道,Android 会缓存旧配置,导致铃声无法更新。此时需要换一个全新的 channelId(例如 huawei_channel_v2),再重新打包安装即可。