
应用内消息示例
- 提示用户操作,如订阅推送通知或更新他们的位置。
- 向目标用户推广新功能或未充分利用的功能。
- 实时显示公告和新闻,无需发布应用更新。
- 创建调查和轮播。
- 帮助进行引导和教育内容。
设置和要求
您必须在应用中安装 OneSignal SDK 才能使用应用内消息。完成后,您可以从 OneSignal 仪表板创建和发送应用内消息,无需编写任何代码。我们的 SDK 还具有用于高级用例的方法,如:- 在特定时间触发消息
- 点击处理和深度链接
- 暂停消息
- 生命周期管理等等!
移动端 SDK 设置
将 OneSignal 添加到您的移动应用代码库中。
应用内消息 SDK 方法
开发者:访问触发器、点击处理器和生命周期 API。
应用内触发器
基于用户行为或应用活动控制消息何时出现。
应用内点击操作
定义用户与您的消息交互时会发生什么。
发送应用内消息
您可以从 OneSignal 仪表板和 历程 中发送应用内消息。选择消息渠道
- Go to Messages > In-App > New In-App
- Use the options menu to edit, resume, or duplicate messages.

复制或编辑应用内模板的选项
选择编写方法
- Choose either the Block Editor or HTML Editor
- Or use pre-built Templates or past messages.
设置名称和标签
- 添加内部跟踪元数据。
- API equivalent:
name
设置受众
Include or exclude Segments:
- 发送到默认细分:如果未设置,则默认为所有“订阅用户”。
- 发送到特定细分:明确包含和排除细分。多个细分具有“或”关系;重复的订阅会自动删除。
In-app messages are delivered to all mobile Subscriptions in the segment, regardless of push opt-in status. However, if your message contains a push prompt click action, it will not show to subscribed (opted-in) mobile Subscriptions.

Name, label, and audience segment selection interface
Targeting method | Dashboard | API |
---|---|---|
Segments | ✅ | ✅ |
Filters (API only) | ❌ | ✅ |
Aliases (API only) | ❌ | ✅ |
消息设计
使用我们的可视化拖放编辑器或 HTML 编辑器以获得更多控制。
Editing screen
拖放设计
使用我们的可视化编辑器快速构建消息。
HTML 设计
为开发者提供完全控制来自定义消息。
预构建 HTML 模板
从经过测试的布局和活动开始。
HTML 应用内 JavaScript API
Add OneSignal’s click actions to your HTML messages.
消息个性化
添加动态内容以为每个用户个性化消息。
多语言消息
为全球受众本地化您的内容。
点击操作
自定义用户点击消息中元素时发生的事情。
Click action options
触发器
定义消息在应用会话期间何时出现。
Trigger setup
应用打开时
用户启动应用时触发。
会话持续时间
Delay X seconds after app open.
从上次消息以来
Delay X time after last in-app message.
自定义触发器
Controlled via SDK
addTrigger(s)
.此消息何时应该被取消?
Messages can dismiss:- On user interaction (click, swipe)
- 设定时间后(自动取消)

Auto-dismiss after 90 seconds
计划和频率
- 开始显示:消息符合条件时
- Stop Showing: Set end date/time or “Show forever”
您希望多久显示一次此消息?
- Only once (default)
- Every time triggers are met
- Multiple times with custom repeat logic:
- Show 2 times with 1 hour gap
- Show 12 times with 30 days gap

示例将每 30 天显示消息总共 12 次。
应用内消息如何显示
应用内消息不是主动推送的。相反,它们在应用启动时根据受众被拉取。然后根据触发逻辑显示。
In-app message display logic flow
- 用户在 新会话 开始 之前 符合受众标准。
- A new session starts when the user opens your app after it has been in the background or closed for at least 30 seconds.
- 如果用户在消息上线时打开了应用或在同一会话期间进入细分,他们需要将应用失去焦点(关闭或后台)至少 30 秒才有资格看到消息。
- 触发条件得到满足。
- 计划的时间和频率有效。
测试
While testing, it is recommended to do the following:1
在应用中添加详细日志记录
Add our
setLogLevel
method to Verbose
in your app to get more detailed logs.2
确保您的订阅在细分中
如上所述在应用内消息如何显示中,用户必须在 新会话开始之前 符合受众标准。
- See Find Devices & Set Test Users if you don’t know your device’s Subscription ID.
- 确保您设备的订阅在包含的细分中,如果使用的话,不在排除的细分中。
- 提示:您可以将您的设备添加为测试订阅,并创建或更新细分以包含 测试用户 筛选器。
3
确保应用关闭或失去焦点至少 30 秒
这将确保您正在打开应用以创建新会话并符合接收消息的条件。
4
检查触发条件
确保您满足消息显示的触发器。
5
检查计划和频率
- Make sure the “Start showing” and “Stop showing” dates are set correctly.
- 在测试时将“您希望多久显示一次此消息?”设置为“每次触发条件得到满足时”。
6
更新消息并确保其处于活动状态
- 一旦消息处于活动状态,您可以在设备上打开应用。
- 您应该根据您的触发条件看到消息显示。
Test & Preview button
使用 测试和预览 按钮将向您选择的测试设备发送推送通知。当您点击推送打开应用时,应用内消息将显示。要使用此功能,您必须:- 确保您的设备是测试用户。
- 推送通知 仅用于测试目的。当消息正式上线时不会发送推送。
- 您可以打开应用并发送“测试消息”。应用内消息将显示。
- 标签替换不适用于测试应用内消息。
- 如果您没有看到消息,请确保您已遵循测试步骤。
需要帮助?与我们的支持团队聊天或发送邮件至
support@onesignal.com
请包含以下信息:- 您遇到的问题详情以及复现步骤(如有)
- 您的 OneSignal 应用 ID
- 外部 ID 或订阅 ID(如适用)
- 您在 OneSignal 控制台中测试的消息 URL(如适用)
- 任何相关的日志或错误信息
教程和用例
个性化应用内消息
Step-by-step guide to personalize your in-app message with tags.
针对过时的应用版本
提示用户更新其应用。
应用商店评价提示
通过及时的评价请求提高您的评分。
创建用户调查
在您的应用内收集反馈。
推送权限提示
Improve push opt-in rates.
位置权限提示
请求用户启用位置跟踪。
创建教程
设置教程来帮助用户了解您应用的新功能!