首页 > 解决方案 > 具有不同 bundleId 和 APNS 密钥的 FCM iOS 通知

问题描述

我正在尝试通过 FCM 发送推送通知。我有 2 个应用程序用于一个项目(客户和司机)。我已将它们添加到同一个 Firebase 项目中

我在 Apple 帐户中使用 APNS 密钥,因此我在 firebase 项目中使用了相同的 TeamId 和 APNS 密钥。现在的问题是如何将推送发送到每个应用程序?如何在 FCM 中指定应用程序,我们可以在“主题”或其他键中指定 bundleId 吗?我目前正在使用 cURL 和 Postman 进行检查,您可以为此或在 Node 端提供答案

如果我们使用 node-apn,我们可以在“topic”键中指定 bundleId,它也要求 KeyId/TeamId。

标签: iosfirebasefirebase-cloud-messagingapple-push-notifications

解决方案


实际上你不需要分离应用程序。当您在必须下载GoogleService-Info.plist文件并添加到项目中的任何项目下添加新应用程序时,Firebase 会管理所有内容。对于每个单独的项目,都有不同GoogleService-Info.plist的文件,该文件使用您的 xcode 项目进行配置,并为每个设备生成 FCM 令牌。

您可以测试从邮递员到使用POST方法的通知

https://fcm.googleapis.com/fcm/send

标头

Content-Type:application/json
Authorization:key=AAAAueCg8bE.......YOUR FIREBASE KEY

有效载荷

{
   "notification": {
      "category": "myNotificationCategory",
       "title": "Ticket Confirm",
       "subtitle": "Rajkot",
       "body": "Testing iOS App Notification",
       "mutable-content" : 1,
       "attachments": "www.google.com",
       "sound" : "default"
   },
   "registration_ids": [
       "YOUR FCM TOKEN"
   ]
}

如果您的响应是成功的,您就会得到message_id响应。而已。


推荐阅读