跳转到主要内容
推送通知(也称为远程通知)是在设备上通过及时、个性化内容重新吸引用户的最有效方式之一——即使在用户没有主动使用您的应用程序或网站时也是如此。 OneSignal 提供了一个完整的平台来管理移动、网页和桌面的推送通知。无论您是营销人员、产品经理还是开发人员,您都可以在几分钟内启动影响力强大的推送活动。

您可以使用 OneSignal Push 做什么

  • 仪表板API发送营销活动和事务消息
  • 使用 Journey构建自动化推送和多渠道流程
  • 使用分段、过滤器或用户数据精确定向用户
  • A/B 测试并优化性能
  • 使用用户属性和动态内容个性化消息
  • 与 CRM 和工具集成,如 HubSpot、Mixpanel、Amplitude、Zapier 和更多

推送设置

在发送通知之前,请完成特定平台的设置:

请求用户给予推送权限

出色的选择加入体验能最大化您的推送受众:

功能和高级用法


分析

跟踪性能并优化参与度:

发送推送通知

选择您首选的发送方式:

A/B 测试

测试多达 10 种消息变体。

Journey

构建自动化和个性化的消息流。

API

通过 REST API 编程发送。

仪表板

继续阅读下面的内容来学习如何从 OneSignal 仪表板发送推送。
使用 OneSignal 发送消息的步骤:

选择消息渠道

转到 消息 > 推送 > 新建推送 或使用 创建消息 API

如何从 OneSignal 仪表板发送推送。

选择编辑方法

  • 从头开始
  • 使用 模板 或已保存的布局

选择空白推送或使用现有模板。

设置名称和标签

可选设置内部元数据用于跟踪。- API:name

设置受众

包含或排除 细分
  • 发送到默认细分:如果未设置,默认为所有“已订阅用户”。
  • 发送到特定细分:显式包含和排除细分。多个细分具有“OR”关系;重复的订阅会自动移除。

名称、标签和受众细分选择界面

Targeting methodDashboardAPI
Segments
Filters (API only)
Aliases (API only)

计划和每用户交付

最多可提前 30 天安排通知。推送可以在用户各自的时区发送,或者根据每个用户的行为进行智能优化。

OneSignal 仪表板中的计划和传递选项。

  • 定时传递:在特定时间发送,最多提前 30 天(API:send_after
  • 智能传递:按用户行为优化(API:delayed_option: last-active
  • 时区传递:在本地时间传递(API:delayed_option: timezonedelivery_time_of_day
  • Throttling: Limit delivery speed (API: throttle_rate_per_minute)
  • Frequency Capping: Limit per-user messages (API: enable_frequency_cap)

设计属性

推送消息可以显示面向用户的内容或执行后台操作。
  • 显示通知:需要 消息,可以包括标题、图像、操作按钮和其他视觉元素。
  • 后台/仅数据通知:省略消息,包含 content_available,可选包含 附加数据

1: 标题,2: 消息,3: 图标,4: 图像,5: 操作按钮,6: 应用名称或浏览器,7: 接收时间戳

尝试使用我们的 AI 消息编写器 来快速 生成您通知的标题和正文。轻松调整语调和 内容以匹配您的品牌,只需几次点击!

Title

通知的最顶部可自定义文本。文本外观由操作系统控制(不支持自定义字体或粗体、斜体等样式)。
  • 网页推送华为 必需
  • 在网页上未设置时默认为网站名称
  • 建议限制:25-50 个字符(移动端),60-80 个字符(网页)
  • 支持:AI 消息编写器、表情符号 👍、消息个性化多语言消息
  • API: headings

Subtitle

仅在 iOS 和 macOS 上支持的次要文本(通过 APNs)。在 Android 或网页上不可用。

Message

通知的主要内容。不支持自定义字体或粗体、斜体或下划线等样式。样式由操作系统设置。

Icons

在 Android 和网页上自定义小图标和大图标。iOS 始终使用应用图标。

Image

在 Android、iOS 和 Windows/Android 版 Chrome 上向通知添加大图像。
  • 所有平台的推荐尺寸:1024×512px(2:1 纵横比)
  • 最大尺寸:1 MB,最大宽度:2000 px
  • Safari(macOS/iOS)或 macOS 通知中心不支持
  • 在移动设备上必须点击或展开才能查看图像
  • 支持的格式:PNGJPGGIF(动画仅在 iOS 上)
  • API parameters:
    • ios_attachments – iOS
    • big_picture – Android
    • chrome_web_image – Chrome web
  • 请参阅 图像和富媒体

App name

显示通知的应用名称。
  • iOS:在 Xcode 中在 Display Name 下设置;需要重启设备才能更新
  • Android/Amazon/华为:在 AndroidManifest.xml 中在 <application android:label="YOUR APP NAME"> 下设置
  • 网页:显示网站名称和/或浏览器

功能属性

Action Buttons

向推送通知添加交互按钮。
  • 在 Android 4.1+ 和 iOS 8.0+ 上支持
  • 请参阅 操作按钮

Launch URL

控制用户点击通知时的去向。
  • API parameters:
    • url:单个通用 URL
    • app_url:深度链接(例如 your-app://screen
    • web_urlhttphttps 网页链接
  • 请参阅 URL、链接和深度链接

Badges

在应用图标上显示点或徽章数字。
  • iOS:红色数字徽章;可以设置、增加或清除
    • API: ios_badgeType, ios_badgeCount
  • Android:需要 通知类别
  • Web (Chrome/Android):
    • 在 Android 状态栏中显示的图标
    • 必须是 72×72 alpha PNG
    • API: chrome_web_badge
    • Example icon →
  • 请参阅 徽章

Sound

在推送传递时播放声音。
  • iOS:使用 sound 设置
  • Android:通过 通知类别 设置
  • 网页:不可用

Additional data

向载荷添加自定义键值对供 SDK 处理。

Collapse ID (mobile push)

如果通知共享相同的 collapse_id,则用更新的通知替换早期通知。
  • 最大长度:64 个字符
  • API: collapse_id
示例: 天气预警系统可能发送以下通知:
Notification 1. sent at 1:41 PM — "A storm is approaching. Grab an umbrella!"
Notification 2. sent at 2:20 PM — "Storm clearing up. Sunshine expected."
Notification 3. sent at 2:44 PM — "Storm has passed. Enjoy the sunshine!"
如果用户在下午4:00打开设备,只会显示最后一条消息。

Web push topic (web push)

通过使用独特的 web_push_topic 值来避免在网页上替换旧通知。
  • 最大长度:64 个字符
  • API: web_push_topic
Example:
Notification 1. web_push_topic: "breaking-news"   → Notification 1
Notification 2. web_push_topic: "breaking-news"   → Notification 2 (replaces #1)
Notification 3. web_push_topic: "sports"          → Notification 3 (stays visible)
Notification 4. web_push_topic: "weather"         → Notification 4 (stays visible)

Priority

设置推送的紧急程度,特别是在省电模式下。
  • (推荐):立即、基于警报的消息
  • 正常:用于后台/数据通知
API: priority Platform docs:

Time to live (TTL)

如果设备离线,消息保存多久。
  • 默认:3 天
  • 范围:0 到 2,419,200 秒(28 天)
  • API: ttl
如果用户离线且 TTL 过期,消息将被丢弃。 示例: 设置 ttl: 0 — 如果在发送消息时设备离线,消息将永远不会被传递。
iOS 限制:APNs 在离线时只存储 最新的 通知。 更早的通知会被丢弃。了解更多 →

Notification grouping

Android 和 iOS 在设备收到您应用的 4 条或更多通知后会自动将通知分组。 iOS 通知分组
  • 使用相同值的 thread_id REST API 属性将消息分组在一起。
Android 通知分组
  • 使用相同值的 android_group REST API 属性将消息分组在一起。
  • 在从仪表板发送推送消息时也可以设置 Android “组键”。
如果您需要更多自定义,请参阅 Android NotificationExtenderService 来分组消息并添加另一个 NotificationExtenderService 来更新摘要通知。有关更多详细信息,请参阅 Android 的组通知指南 请注意,Android 7+ 对这些摘要通知有一些限制。您只能修改文本、强调色和小图标(不能修改大图标)。但是,您仍然可以修改子通知。

取消推送通知

如果消息尚未 传递,您可以取消消息。OneSignal 将停止向所有尚未添加到队列的订阅发送消息。如果已经传递,这不会从设备中移除消息。 消息报告 中,选择 操作 > 取消 或使用 取消消息 API 来取消消息。

从设备中移除推送通知

一旦推送已被传递,从用户设备中移除它的选择就很少了。如果您设置了 折叠 ID网页推送主题,您可以用新的推送通知替换它。 如果您未设置折叠 ID 或网页推送主题,您就无法替换它。
I