要求
- 您的应用程序必须使用最新的 OneSignal SDK v5 版本
设置
示例场景:我们应用程序的最新版本是1.0.1
。我们希望通过应用内消息针对使用 1.0.0
及更旧版本的用户,提示他们更新。
1. 获取您的最新应用版本
OneSignal 根据以下内容检测应用版本
:
iOS:在 Xcode 您的主应用目标 > 通用 > 标识 中找到的 版本

iOS App Version found in Xcode
build.gradle
文件中找到的 versionCode

在您的应用 build.gradle 中找到的 Android 应用版本
如果您无法访问 Xcode 和/或 Android Studio,请向您的开发人员询问这些值。
注意 iOS 和 Android 的应用版本是不同的!这是我们需要创建两个单独分段和应用内消息的一个原因。我们应该使用两个单独分段的第二个原因是,应用内消息可能包含对 iOS 和 Android 不同的链接,正如我们接下来将看到的。
2. 设置分段
您需要创建两个分段,一个用于 iOS,一个用于 Android。 iOS:- 分段名称:
iOS App version less than 1.0.1
- 过滤器:
应用版本
小于
1.0.1
且设备类型
是iOS
。

iOS 分段过滤器
- 分段名称:
Android App version less than 10001
- 过滤器:
应用版本
小于
10001
且设备类型
是Android
。

Android 分段过滤器
3. 设置应用内消息
导航到消息 > 应用内 > 新消息 > 新应用内消息。 从预构建的设计新功能公告开始,或从头开始创建您自己的。
新功能公告
添加您的受众
选择特定分段 iOS App version less than 1.0.1。更新消息
根据需要更新消息。 要将用户导航到您的应用商店列表,请向按钮或多个元素添加 URL 点击操作
URL 点击操作
- iOS - https://developer.apple.com/library/archive/qa/qa1633/_index.html
- Android - https://developer.android.com/distribute/marketing-tools/linking-to-google-play.html
3. 触发器
我们建议使用应用打开时触发器来确保在用户打开应用时显示消息。4. 计划和频率
如果您将应用更新计划在将来某个时间,您可以计划消息在那时开始显示。 根据您希望更新提示的积极程度,您可以将”您希望多久显示一次此消息?“频率设置为:- 每次满足触发条件时 - 在此示例中意味着每次打开应用时都显示。
- 多次 - 设置显示消息的总次数以及之间的延迟。例如,100 次,间隔 3 天。将每 3 天显示一次消息,最多 100 次。
5. 保存为草稿并为 Android 复制
点击保存为草稿按钮保存消息。 在应用内消息页面中,点击刚保存的消息旁边的选项 > 复制。 为您的 Android 用户更新以下内容:- IAM 名称以反映这是针对 Android 用户的
- 将分段设置为 Android App version less than 10001
- 将 URL 更新为 Android 商店链接
- 对消息进行任何额外更改以使其对 Android 用户独特
测试
在发布您的消息之前,我们建议使用以下步骤进行测试:1
找到您的测试设备并设置为测试订阅
- 找到您的测试设备并将其设置为测试订阅。
- 确保测试设备使用的是应用的较低版本。
2
更新分段以包含测试用户
- 打开您要测试的应用内消息。
- 点击分段并为测试用户添加一个且过滤器。
- 这将确保消息只对您的测试设备显示
- 例如,如果您的测试设备是 iOS,分段将如下所示:
iOS 分段过滤器
- 点击更新分段保存更改。
3
发布消息
- 点击更新消息以更新应用内消息。
- 点击消息旁边的选项 > 恢复使其生效。
4
验证消息是否显示
- 在测试设备上关闭应用。
- 等待 1 分钟。
- 在测试设备上打开应用。
- 如果满足以下条件,您应该会看到消息:
- 设备是测试订阅
- 设备使用的是应用的较低版本。
- 分段设置为测试用户。
上线检查清单
当您准备上线时:- 更新分段以移除
测试用户
过滤器。 - 检查计划以确保设置了正确的日期和时间。
- 点击更新消息以更新应用内消息。
需要帮助?与我们的支持团队聊天或发送邮件至
support@onesignal.com
请包含以下信息:- 您遇到的问题详情以及复现步骤(如有)
- 您的 OneSignal 应用 ID
- 外部 ID 或订阅 ID(如适用)
- 您在 OneSignal 控制台中测试的消息 URL(如适用)
- 任何相关的日志或错误信息