开始使用实时活动

借助 Firebase Cloud Messaging HTTP v1 API,您可以在 iOS 设备上远程发送、更新和结束实时活动通知。请注意,您需要 iOS 16.1 才能使用实时活动,需要 iOS 17.2 来远程启动实时活动通知。

准备工作

在开始使用 Firebase Cloud Messaging 的实时活动之前,请按照设置 Firebase Cloud Messaging 客户端应用(Apple 平台)中的说明创建 Firebase Cloud Messaging 并将其添加到您的客户端应用。

开始实时活动

如需使用 Firebase Cloud Messaging 远程启动直播 activity,您需要从 Apple 获取“推送启动”令牌。您还需要目标应用的 FCM 注册令牌

如需构建用于启动直播 activity 的载荷,请填写以下代码示例中的 apns.payload 字段,以使用 FCM 远程启动直播 activity。您可以使用 API Explorer 构建和测试载荷。

"message":{
    "token": "<fcm_token:test>",
    "apns":{
      "live_activity_token": "<live_activity_push_to_start_token>",
      "headers":{
        "apns-priority": "10"
      },
      "payload":{
        "aps": {
          "timestamp": <timestamp>,
          "event": "start",
          "content-state": {
            "demo": 1
          },
          "attributes-type": "DemoAttributes",
          "attributes": {
            "demoAttribute": 1,
          },
          "alert": {
            "title": "test title",
            "body": "test body"
          }
        }
      }
    }
  }

更新实时活动

如需使用 Firebase Cloud Messaging 远程更新实时 activity,您需要从 Apple 获取推送令牌。您还需要目标应用的 FCM 注册令牌

如需构建用于更新实时 activity 的载荷,请填写以下代码示例中的 apns.payload 字段,以使用 FCM 远程更新实时 activity。您可以使用 API Explorer 构建和测试载荷。

"message":{
    "token": "<fcm_token:test>",
    "apns":{
      "live_activity_token": "<live_activity_push_token>",
      "headers":{
        "apns-priority": "10"
      },
      "payload":{
        "aps": {
          "timestamp": <timestamp>,
          "event": "update",
          "content-state": {
            "test1": 100,
            "test2": "demo"
          },
          "alert": {
            "title": "test title",
            "body": "test body"
          }
        }
      }
    }
  }
}

结束直播活动

如需使用 Firebase Cloud Messaging 结束实时活动,您需要从 Apple 获取推送令牌。您还需要目标应用的 FCM 注册令牌

如需构建用于结束实时 activity 的载荷,请填写以下代码示例中的 apns.payload 字段,以使用 FCM 远程结束实时 activity。您可以使用 API Explorer 构建和测试载荷。

"message":{
     "token": "<fcm_token:test>",
    "apns":{
      "live_activity_token": "<live_activity_push_token>",
      "headers":{
        "apns-priority": "10"
      },
      "payload":{
        "aps": {
          "timestamp": <timestamp>,
          "dismissal-date": <dismissal-date>,
          "event": "end",
          "content-state": {
            "test1": 100,
            "test2": "demo"
          },
          "alert": {
            "title": "test title",
            "body": "test body"
          }
        }
      }
    }
  }
}