OneSignal 的 Android 通知类别适用于 Google Android、华为 Android 和 Amazon FireOS。
要以编程方式定义类别,请参阅 Android 创建通知渠道指南。

设备上应用通知类别的示例
默认通知类别
OneSignal 自动创建两个默认类别:杂项
在未设置类别时使用。- 重要性: 高
- 声音: 默认
- 振动: 默认
- 徽章: 启用
- 锁屏: 私密
已恢复
在应用被强制退出并重新打开时使用,恢复之前清除的通知。- 重要性: 低
- 声音: 关闭
- 振动: 关闭
- 徽章: 禁用
- 锁屏: 私密
如果您始终使用自定义类别发送推送通知,“杂项”渠道将不会出现在用户设备上。“已恢复”渠道将始终出现,以处理强制关闭后恢复的通知。
华为特定行为
在华为设备上,OneSignal 不会设置默认类别。如果您不包含类别,华为将默认应用高重要性。在 OneSignal 中创建 Android 通知类别
- 在 OneSignal 仪表板中转到设置 > 推送和应用内 > Android 通知渠道。
- 点击添加组来组织您的类别(例如”新闻更新”、“社交活动”)。
- 在组内点击添加渠道来创建新类别。

在 OneSignal 中在哪里添加 Android 类别
名称
用户可见。 保持清晰和描述性。描述
用户可见。 简要说明此类别将处理的通知类型。重要性
控制通知的可见性和干扰性:- 低: 静音,无警报
- 中: 无声音/振动,最小视觉干扰
- 高: 播放声音或振动,无屏幕弹窗
- 紧急: 播放声音并显示全屏警报
声音
- 关闭: 无声音
- 默认: 设备的默认通知铃声
- 自定义: 上传并引用自定义声音(无文件扩展名)。
示例:
alert_beep
(不是alert_beep.wav
) 请参阅 通知声音 获取设置说明。
振动
- 关闭: 无振动
- 默认: 使用设备的振动模式
- 自定义: 使用模式(以毫秒为单位)定义您自己的。
示例:
0, 300, 500, 300
→ 等待 0ms,振动 300ms,暂停 500ms,振动 300ms。
LED 颜色
某些 Android 设备支持 LED 指示器:- 关闭: 无 LED
- 默认: 设备默认
- 自定义: ARGB 十六进制值(例如,
FF0000FF
代表蓝色)
徽章
在应用图标上显示徽章计数:- 启用: 显示徽章
- 禁用: 不显示徽章
锁屏可见性
- 公开: 显示完整内容
- 私密: 仅显示应用名称,隐藏内容
- 秘密: 锁屏上不显示通知
创建类别后,您就可以在通知中使用它。
更新类别
设备收到来自某个类别的通知后,Android 会锁定该类别的行为。对重要性、声音、振动或其他设置的更改不会追溯应用。 选项:- 更新行为: 创建新类别。
- 测试更改: 清除应用数据或卸载并重新安装应用。
- 渠道名称
- 渠道组名称
删除类别
要从用户设备中移除已删除的类别:- 从 OneSignal 仪表板中删除类别。
- 确保从通知中心清除所有通知。
- 让用户:
- 将应用放置在后台 60+ 秒
- 再次打开它(触发 SDK 同步)
在通知中使用类别
在 OneSignal 仪表板中
- 在您的消息编辑器中转到 Android 平台设置。
- 在”类别”下选择您的类别。
- 声音、锁屏和 LED 设置将从类别中提取并在 UI 中隐藏。
使用 REST API
在 创建消息 API 请求中使用android_channel_id
。

在 Android 类别设置屏幕中查找渠道 ID
existing_android_channel_id
。
常见问题
为什么我的 Android 类别不工作?
- 初始化错误: 确保 OneSignal 在
Application
类中初始化,而不是在Activity
中。请参阅 Android SDK 设置。 - 过时的类别: 如果您在发送推送后更改了类别,Android 可能不会应用这些更改。请创建一个新类别。
类别可以在勿扰 (DND) 模式下播放声音吗?
不可以。OneSignal 不在类别上设置setBypassDnd
。要覆盖 DND,请以编程方式创建您自己的渠道并启用此设置。请参阅 setBypassDnd。
我可以本地化类别名称或描述吗?
不可以。OneSignal 不支持类别的多种语言。要支持本地化,请定义您自己的 Android 渠道,并在推送 API 请求中通过existing_android_channel_id
引用它们。