Flutter中如何通过OneSignal向特定人员发送通知
使用OneSignal向单个特定用户发送通知(2024年最新操作方案)
前置准备
- 先获取目标用户的Player ID或External ID:
- Player ID是OneSignal为用户设备自动分配的唯一标识;
- External ID是你自身系统给用户设置的唯一标识(如用户ID、专属编码),需提前通过OneSignal SDK关联到用户设备记录。
方法一:通过OneSignal控制台手动发送
- 登录OneSignal后台,进入「Messages」→「New Push」
- 在「Audience」环节选择「Filter users」
- 添加筛选条件:
- 选择「Player ID」,输入目标用户的Player ID;
- 或选择「External ID」,输入已关联的用户唯一标识
- 配置通知标题、内容后,点击「Send」完成发送
方法二:通过OneSignal API发送(适用于自动化场景)
发起POST请求调用https://onesignal.com/api/v1/notifications接口,示例请求体如下:
{ "app_id": "你的OneSignal应用ID", "include_player_ids": ["目标用户的Player ID"], // 若用External ID则替换为:"include_external_user_ids": ["目标用户的External ID"], "contents": {"en": "通知内容"}, "headings": {"en": "通知标题"} }
- 请求头需携带
Authorization: Basic 你的REST API密钥 - 注意:
include_player_ids与include_external_user_ids二选一即可
核心注意事项
- 确保目标用户的Player ID/External ID有效且已绑定到你的OneSignal应用
- 使用External ID时,需在用户首次登录/注册时,通过OneSignal SDK调用
setExternalUserId()完成关联 - 发送失败可查看OneSignal后台「Delivery」报告排查问题
内容的提问来源于stack exchange,提问作者bil haj
相关产品推荐
相关产品推荐

