适用于iOS应用的GCM(Google Cloud Messaging)

我正在开发一个iOS应用程序,我的客户要求在iOS平台上实现GCM(Google Cloud Messaging)。 我需要确定它是否可以在iOS上完成。 因为我们在iOS中使用APNS推送通知。 任何人都可以建议我这个。

提前致谢。

请查看此链接,其中包含在iOS中集成GCM的所有步骤,并且您需要设置CocoaPods依赖项。

https://developers.google.com/cloud-messaging/ios/start

https://developers.google.com/cloud-messaging/ios/client

这是一个迟到的答案。但我刚刚开始在iOS.SO上工作GCM。我想回答这个问题,因为它可能对某人有所帮助。 以下流程图简要介绍了GCM。 在此处输入图像描述

GCM可以用于向单个registrationID发送更新,将组发送到registrationID,或者我们可以在GCM服务器中注册主题,我们可以向订阅该特定主题的所有设备发送更新。

只需按照步骤操作即可轻松找到GCM集成。

第1步:完全观看此video: https : //www.youtube.com/watch?v = gJatfdattno这提供了有关GCM如何工作的基本概念。

第2步转到此链接: https : //developers.google.com/cloud-messaging/ios/client

这清楚地说明了如何配置项目。主要和重要的部分是正确配置GCM config file

您只需上传apns certificate (开发人员和生产)并获取gcm config file并将其添加到项目中(拖放到项目导航窗格)。

您应该在didFinishLaunchingWithOptions调用的以下代码将自动从配置文件中获取_gcmSenderID

 _gcmSenderID = [[[GGLContext sharedInstance] configuration] gcmSenderID]; 

另一个重要的部分是在kGGLInstanceIDAPNSServerTypeSandboxOption正确设置为yesno ,具体取决于您使用代码的环境(开发或生产).ie; 如果您使用它进行测试,则kGGLInstanceIDAPNSServerTypeSandboxOption键应为YES

这是一个 快速启动项目示例, 供您开始使用。(swift和objective-C)。在这个示例应用程序中,一切都得到了很好的解释。 如果您有任何疑问,请告诉我。

关于实际通信,只要应用程序在iOS设备上处于后台,GCM就使用APNS发送消息,该应用程序的行为与使用Apple的通知系统类似。 但是当应用程序处于活动状态时,GCM会直接与应用程序通信。 数据有效负载和通知有效负载均适用于iOS和Android。 在iOS上,不同之处在于通过APNS发送通知有效负载,而通过GCM自己的连接发送数据有效负载,这仅在app处于前台时才会发生。