Tag: 谷歌云消息

iOS GCM错误代码501

最近我开始得到这个错误代码,每当我尝试在我的iOS应用程序中使用GCM API:错误域= com.google.gcm代码= 501“(空)” 我找不到这个地方的意思? 这实际上是HTTP状态代码,意思是不实施? 我在这行代码中首先得到错误: GCMService.sharedInstance().connectWithHandler() { error in if(error != nil) { print(error) } } 调用方法打印此消息: GCM | GCM注册未准备好授权凭证 和错误是错误域= com.google.gcm代码= 501“(空)”

正确的序列获取注册令牌在iOS上的GCM推送通知? GCM不可靠吗?

嗨,我已经按照教程在iOS上使用GCM。 它一直在间歇工作(这意味着所有的证书,权限和东西都可以)。 不过到最近,我一直在收到这两条错误消息: GCM | GCM registration is not ready with auth credentials GCM | GCM registration is not ready with auth credentials 。 此外,重新连接到GCM失败: Error Domain=com.google.gcm Code=501 "(null)" 这部分与设备没有获得GCM注册ID有关。 有没有其他人更频繁地遇到这些问题? 或者是因为我以不正确的顺序调用GCM API(尤其是connectWithHandler: , startWithConfig:和tokenWithAuthorizedEntity方法)? 我怀疑原因是后者,因为我经过一段时间才得到GCM ID。 我并不总是收到一个GCM ID。 当我没有收到一个,我通常必须通过Xcode运行一次或两次的应用程序。 (或通过强制closures应用程序)。 显然这不是我的用户应该做的事情。 这是我的GCM API调用的序列: 设备获取APNS令牌 然后我调用tokenWithAuthorizedEntity:通过使用我的APNS令牌 ^这通常会导致上面提到的那两个错误之一。 每当我真的需要一个GCM令牌时,我通过再次调用tokenWithAuthorizedEntity强制重新获取GCM令牌。 另外,我connectWithHandler:我的applicationDidBecomeActive:方法中写入了connectWithHandler: call。 几个问题: 是connectWithHandler:的调用connectWithHandler:在applicationDidBecomeActive:必要时,如果我只是有兴趣接收GCM推送消息,而不是向上游发送? 如果对(1)的回答是肯定的,则在该方法的完成处理程序中,如果发生错误,并且我没有GCM标记,那么我应该尝试再次获取标记吗? (即调用tokenWithAuthorizedEntity ?) […]

GCM支持ios应用程序在后台应用程序或被杀时

您好,我正在使用以下链接在iOS应用程序中集成G​​CM https://developers.google.com/cloud-messaging/ios/start 。 在定义的步骤中configuration文件时,我也上传了证书。 我也成功地得到通知,但问题是,我没有得到通知,当应用程序被杀害或在后台。是否有任何获取通知的背景或杀害ios应用程序的实现,因为我已经search了很多,没有发现富有成效。 所以任何帮助将不胜感激谢谢..

“Pods”目标在安装GCM时具有传递依赖性,包括静态二进制文件

我正在尝试为我的iOS应用程序安装Google Cloud Messaging(使用swift)。 我已经将它添加到我的Podfile中,如下所示: # Uncomment this line to define a global platform for your project # platform :ios, '8.2' use_frameworks! target 'Project' do pod 'Alamofire', '~> 1.2' pod 'Google/CloudMessaging' end target 'ProjectTests' do end 现在,当我尝试安装依赖关系时,出现错误(请参阅下文)。 在我添加GoogleCloudMessaging之前,它运行良好。 我试图做一个新的项目,并添加它,而不是看它是否工作,我得到了同样的错误。 Analyzing dependencies Downloading dependencies Installing Alamofire (1.2.3) Installing GGLInstanceID (1.0.0) Installing Google (1.0.7) Installing GoogleCloudMessaging (1.0.3) Installing […]

Google Cloud Messaging:iOS App在后台时不会收到提醒

我已经按照这个教程https://developers.google.com/cloud-messaging/ios/client在我的iOS应用程序上实现GCM。 我的应用程序服务器是用Java编写的谷歌应用程序引擎,我使用gcm-server.jar https://github.com/google/gcm库。 我认为我的证书没有问题,我可以注册,获取令牌,甚至可以收到由我的应用服务器发送的消息的内容。 但是,当应用程序处于后台时,我没有收到任何通知警报,只有当我点击应用程序图标才能重新启动时,我才会收到警报。 我认为这是因为我只实现了didReceiveRemoteNotification:fetchCompletionHandler:而不是didReceiveRemoteNotification:fetchCompletionHandler:所以我实现了它,而不是第一个,但我没有收到通知,而在后台要么更糟糕的是,应用程序崩溃说像“无法识别的select器发送例如didReceiveRemoteNotification:“像userInfo中的东西是错误的。 我确实在xCode中允许使用背景模式。 这是我使用的代码: AppDelegate () @property (nonatomic, strong) NSDictionary *registrationOptions; @property (nonatomic, strong) GGLInstanceIDTokenHandler registrationHandler; @end @implementation AppDelegate – (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //– Set Notification [[GCMService sharedInstance] startWithConfig:[GCMConfig defaultConfig]]; if ([application respondsToSelector:@selector(isRegisteredForRemoteNotifications)]) { NSLog(@"Case iOS8"); // iOS 8 Notifications [application registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]]; [application […]

让GCM在后台运行iOS设备

我正在尝试为IOS和Android客户端使用GCM。 当应用程序处于前台时,它似乎可以正常工作,但是,当应用程序处于后台时,通知中心不会收到消息,并且didReceiveRemoteNotification with completionHandler不会被调用。 我将问题确定为从GCM到APNS的错误格式的消息。 也就是说,这就是它的样子: [消息:新消息,collapse_key:do_not_collapse,来自:**************] 而IOS推送通知在通知中应该有aps关键字,对吗? 以及内容可用设置为1.例如: {“aps”:{“content-available”:1},“data-id”:345} 顺便说一下,前台应用程序收到消息,问题只是背景。 任何build议,我应该如何解决一个问题,使GCM工作的iOS和Android? 更新 :这是我在网上find的: 关于实际的通信,只要应用程序在iOS设备的后台,GCM使用APNS发送消息,应用程序的行为与使用Apple的通知系统类似。 但是,当应用程序处于活动状态时,GCM将直接与应用程序通信 所以我在前台模式下收到的消息: [消息:新消息,collapse_key:do_not_collapse,来自:**************] 是来自GCM的直接信息(APNS根本没有参与这个事情)。 所以问题是:APNS是否重新格式化GCM发送给它以坚持ios通知格式? 如果是这样,我怎么知道APNS实际上做了什么,并且是否以不同的格式向我发送通知? 有没有办法查看来自APNS的input数据的日志? 更新:好吧,我设法改变消息的结构,现在在前景模式下,我收到以下消息: 收到通知:[“aps”:{“alert”:“Simple message”,“content-available”:1},collapse_key:do_not_collapse,from:**************] 现在看起来格式不错,但是当应用程序在后台时还是没有反应。 didReceiveRemoteNotifification completionHandler不会被调用! 我应该看什么,问题在哪里? 方括号可以成为推送通知的问题吗? 更准确地说,ios不会发布任何警报/徽章/横幅从传入的通知。

GCM通知不会在iOS中处于后台模式时收到

我在我现有的应用程序中configuration了GCM,并在那里接收通知。 现在我面临两个问题:1)我没有收到通知当我退出应用程序或应用程序在后台。 2)我没有收到iphone的通知区域通知,只有当我的应用程序正在运行我只直接接收警报消息那里。 当我拉下通知区域时,我在xcode的控制台中看到这条消息: “无法连接到GCM:操作无法完成(com.google.gcm error 2001.)” 我的PHP文件在下面 <?php // Payload data you want to send to iOSdevice(s) // (it will be accessible via intent extras) $data = array( 'message' => 'Hello World!'); // The recipient registration tokens for this notification // http://developer.android.com/google/gcm/ $ids = array( 'kucy6xoUmx********eeRsla' ); // Send a GCM push sendGoogleCloudMessage( $data, […]