Skip to main content
Live Activities 允许您的 iOS 和 iPadOS 应用向锁屏和动态岛传递实时更新,让用户无需打开应用即可保持了解。在 iOS 16.1 中引入并在 iOS 17 中扩展,Live Activities 非常适合配送跟踪、游戏比分或交通更新等时效性信息。
Live Activities 是一个 iOS 功能,但您可以通过 Android Live Notifications 实现类似功能。

Live Activities 示例


为什么使用 Live Activities?

Live Activities 非常适合实时、交易或有时限的更新。
  • 可见长达 8 小时
  • 临时性——显示第一个 Live Activity 不需要权限
  • 在锁屏和动态岛等高端设备界面上高度吸引人且可见

为什么使用 OneSignal?

OneSignal 通过处理以下方面简化 Live Activities:
  • 临时推送令牌管理
  • 通过单个 API 调用扩展到数百万台设备
  • 实时分析和性能洞察
  • 与推送、电子邮件、短信和应用内消息的跨渠道编排
Live Activities 适用于所有计划,除了有超过 10,000 个选择加入订阅者的免费计划。查看定价或联系 support@onesignal.com 获取帮助。

Live Activities 入门

要求

Live Activities 工作原理

  • 可见持续时间:活动时间最长 8 小时(可使用更新 Live Activity API中的 dismissal_date 参数移除)。
  • 不需要权限:第一个活动是临时性的;未来的活动取决于用户设置。
  • 限制:每个应用最多同时 5 个 Live Activities。
  • 远程启动:从 iOS 17.2+ 通过推送支持。
  • 非促销用途:必须提供用户价值——不为广告而设计。

创建和更新 Live Activity

1

开始 Live Activity

Live Activities 可以通过 2 种方式启动:
  1. 使用我们的启动 Live Activity API,也就是“push-to-start”。
  2. 在应用内触发(Live Activities 开发者设置)。
2

更新 Live Activity

使用更新 Live Activity API并传递 activity_id 来更新所有相关设备。
3

结束 Live Activity

Live Activities 可以通过以下方式结束:
  • OneSignal SDK (`exitLiveActivity`)
  • 更新 Live Activity API
  • 用户操作
  • 向 OneSignal 的服务器发送请求以停止为给定的 activityId 发送更新。
  • 不会从屏幕上移除 Live Activity。它将在 4 小时后自动移除或通过用户操作移除。
SDK 方法不会在视觉上解散 Live Activity。
  • 开发者必须使用带有 dismissal_date 的 API 或原生 iOS 方法(如 activity.end(dismissalPolicy: .immediate))。
  • 用户必须点击”允许”才能以编程方式移除 Live Activity。

最佳实践和指南

功能

  • 将 Live Activities 用于交易或上下文更新(如 ETA、比分、计时器)。
    • 用户无需不断进入您的应用查看状态或变化,他们可以一瞥手机就获得更新。
    • 具有明确开始和结束的事件或任务。不要使用 Live Activity 来显示广告或提供纯粹的促销目的。您提供什么价值?
  • 避免过度更新以保护设备电池。
  • 确保 Live Activity 用于不超过 8 小时的事件或任务,并且只在对用户有用的时间内显示。

UI/UX

  • 支持所有 Live Activity 展示:紧凑、最小、展开、锁屏。
  • 正确使用品牌、间距和深色/浅色主题。
  • 优先考虑清晰度和点击目标。不要试图吸引对动态岛的注意。
  • 避免在 Live Activity 中显示敏感信息。
请参阅 Apple 的 Live Activities 人机界面指南以获取有关 Live Activities 最佳实践的更多信息。

定向和大规模发送

确保 Live Activity 在预期时出现,通常是当用户采取行动(如跟踪事件)或打开应用查看更新(如更新的配送时间)时。
  • 针对体育比赛、音乐会或其他现场活动等事件定向用户细分。
  • 针对个人或交易事件定向个别用户。
有关如何定向用户的详细信息可在我们的使用 OneSignal API 发送消息文档中找到。
更新 Live Activities 时,您可以选择设置”优先级”,Apple 使用它来确定更新的紧急程度。Apple 有内部阈值,会对过于频繁使用高优先级标志的请求进行限制。由于这个内部阈值,Apple 建议选择正常和高优先级的混合以防止限制。有关如何设置优先级的详细信息可在我们的更新 Live Activity API 参考中找到。 如果您的用例依赖于更频繁的高优先级更新,您可以按照 Apple 开发者文档的指示,将键 NSSupportsLiveActivitiesFrequentUpdates 作为布尔类型设置为 YES 添加到您的 Info.plist 中。当 Live Activity 超过其推送预算时,用户将看到一个对话框,如果他们允许 Live Activity 继续,预算将自动增加以提供无缝的用户体验。

FAQ

我是否可以在我的套餐中使用 Live Activities?

Live Activities 适用于所有计划,除了有超过 10,000 个选择加入订阅者的免费计划。如果您在免费计划上有超过 10,000 个选择加入的订阅者,您可以升级以使用 Live Activities。查看定价或联系 support@onesignal.com 获取帮助。

高优先级更新的预算是多少?

Apple 不为高优先级(priority: 10)更新提供固定限制,但他们确实执行动态系统级预算。在短时间内发送过多高优先级更新可能导致限制,更新被延迟或丢弃。 要降低限制风险:
  • 使用混合优先级:Apple 建议同时使用 priority: 5(标准)和 priority: 10(高)以取得平衡。
  • 仅为时效性或关键更新保留 priority: 10(如订单状态变化、游戏比分)。
如果您的用例需要频繁更新:
  • 将键 NSSupportsLiveActivitiesFrequentUpdates 添加到您应用的 Info.plist 文件中,设置为布尔值 YES
  • 当超过此预算时,iOS 可能会提示用户允许额外更新。如果用户同意,Apple 将自动扩展允许的更新限制以保持无缝体验。
有关更多详情,请参阅 Apple 开发者文档

我在哪里可以在 OneSignal 仪表板中查看 Live Activities?

Live Activities 只能通过我们的 Live Activities API 发送。但是,您可以在仪表板的已发送消息中查看历史发送的 Live Activities(最多 30 天),过滤 Live Activities 后。在这里您将能够看到发送了哪些 Live Activities、发送了什么更新信息以及接收更新的受众规模。

哪些设备支持 Live Activities?

Apple 保持更新的兼容性指南,列出所有支持 iOS 16+iPadOS 17+ 的设备。
您现在应该具备了关于 Live Activities 的所有必要知识。通过遵循我们的 Live Activities 开发者文档开始设置您的 Live Activities。

I