iOS – Firebase消息:什么是kGCMMessageIDKey?

我正在尝试与Google Firebase实施聊天.我正在按照教程,但我无法继续,因为正在使用未声明的变量,我无法在任何地方找到它的起源.该变量称为kGCMMessageIDKey.

它在这里首先被用作:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {

  if (userInfo[kGCMMessageIDKey]) {

    NSLog(@"Message ID: %@", userInfo[kGCMMessageIDKey]);
  }

在示例项目中,kGCMMessageIDKey在AppDelegate中声明为

NSString * const kGCMMessageIDKey = @“gcm.message_id”;.

我有一种感觉,这是我应该从Firebase仪表板获得的常量,但我也找不到任何相应的ID.

最佳答案 该值应该是邮件的唯一ID,并且应与您在与Firebase Cloud Messaging API交互时看到的邮件的message_id参数匹配.在从设备使用FCM API /服务时,您还可以使用该值来引用消息.

是的,您似乎需要将该常量声明粘贴到代码中,或者将其替换为@“gcm.message_id”.该值似乎并不重要,此代码段主要用于调试.

我建议您在didReceiveRemoteNotification中设置断点并检查userInfo的内容,以熟悉消息有效负载以及FCM和iOS可用的各种属性.当命中断点时,在调试器中键入以下内容:

(lldb) po userInfo
点赞