仅适用于移动应用。网页推送不支持自定义声音。
设置
创建声音文件
确保根据以下规则创建声音文件。如果设备找不到相关文件,或者文件不是支持的格式,它将回退到默认系统通知声音。保持声音文件名小写,因为某些平台忽略声音文件的大写字母。使用
awesomesound.wav
或 awesome_sound.wav
而不是 AwesomeSound.wav
。平台 | 扩展名 | 注释 |
---|---|---|
iOS | .wav .aiff .caf | 声音必须编码为 Linear PCM、MA4 (IMA/ADPCM)、µLaw 或 aLaw。必须少于 30 秒。 |
Android | .wav .mp3 .ogg | 建议长度少于 30 秒。保持文件大小较小,大文件可能在某些设备上无法播放。 |
Huawei | .wav .mp3 .wma | 建议长度少于 30 秒。保持文件大小较小,大文件可能在某些设备上无法播放。 |
Amazon | .wav .mp3 .ogg | 建议长度少于 30 秒。保持文件大小较小,大文件可能在某些设备上无法播放。 |
将声音文件添加到应用
要向通知添加声音,您必须将声音文件作为资源包含在应用程序中。不支持外部 URL。- iOS
- Android、Huawei 和 Amazon
根据您的 SDK,将声音文件添加到 Xcode 项目中的适当位置。
SDK | Folder |
---|---|
iOS Native | 将文件添加到 Xcode 项目根目录。添加文件时请确保选择 Add to targets,以便它们自动添加到包资源中。 |
Cordova, Ionic | 将文件添加到 Xcode 项目中的 Resources 目录,位于 <project-root>/platforms/ios/project-name.xcodeproj 。 |
Unity | 在 Unity 项目中的任何位置添加声音文件,构建项目,然后将这些声音文件移动到 Xcode 项目根目录。 |
发送通知
- iOS
- Android、Huawei 和 Amazon
- REST API
引用声音资源时添加文件扩展名。例如,
explode_sound.wav
。在发送推送消息时在仪表板中设置,或使用创建通知 API 的 ios_sound
属性。如需无声音,请在 声音 字段中传入 nil
。
如果您最近刚向应用添加了声音资源,您可能希望等待几天后再发送使用该声音的通知。这是因为大多数用户更新到包含您新声音资源的最新版本可能需要很多天甚至几周的时间。如果用户使用的是不包含声音资源的旧版本应用,并收到引用该声音的通知,他们将只听到默认的系统通知声音。
常见问题
我可以设置默认声音吗?
使用引用声音和/或 Android 通知渠道的模板。为什么我的通知没有播放自定义声音文件?
声音可能不播放的几个原因:- 声音文件扩展名不正确
- 声音文件未以支持的格式编码
- 声音文件位于错误的位置
- 声音文件过长
res/raw/
中来确保它已构建到您的 APK 中。
如果启用了资源压缩,您可以通过在 res/raw/ 中创建 keep.xml 文件来保护声音文件不被删除,代码如下:
xml