小编set*_*iro的帖子

ios Google Cloud Messaging(GCM)未收到远程通知

问题:
iOS没有收到来自GCM的任何远程通知,但找不到与此相关的任何信息.
第一次实现推送通知,不确定问题的原因是什么.

情况:
我目前正在使用iOS版本的应用程序,该应用程序使用GCM进行推送通知.在Android上收到通知正常,但在iOS上似乎根本没有收到通知.

当我运行应用程序时,控制台向我显示一切正常,有令牌,连接到GCM并订阅主题

app [579:45511]注册令牌:bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1pLTQ/8t-5QNiXbYwZYEWiSFD-frQKlsV8lgI
app [579:45511 ]连接到GCM
app [579:45511]已经订阅了/ topics/global

但是,它不会收到任何通知,当我下载通知中心或拉出控制中心时,控制台中会出现以下消息

app [579:45511]无法连接到GCM:操作无法完成.(com.google.gcm错误2001.)

除了提到......之外我不会告诉我什么

///缺少KeyPair.
kGGLInstanceIDOperationErrorCodeMissingKeyPair = 2001,

另一方面,当我使用多任务功能将其发送到后台并将其恢复时,我再次得到这个:

应用程序[579:45511]已连接到GCM
应用程序[579:45511]已订阅/ topics/global

设置:
我已按照GCM说明在iOS中进行设置,甚至参考GcmExample.xcodeproj进行实现(以至于代码完全相同).

设置'所需背景模式'的info.plist - >'应用程序下载内容以响应推送通知'

遇到另一个关于GCM和IP未被列入白名单的stackoverflow问题(现在找不到),但却认为这不是问题所在.

码:

#import "AppDelegate.h"

@interface AppDelegate ()

@property(nonatomic, strong) void (^registrationHandler) (NSString *registrationToken, NSError *error);
@property(nonatomic, assign) BOOL connectedToGCM;
@property(nonatomic, strong) NSString* registrationToken;
@property(nonatomic, assign) BOOL subscribedToTopic;

@end

NSString *const SubscriptionTopic = @"/topics/global";

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // Override point for customization after application launch. …
Run Code Online (Sandbox Code Playgroud)

objective-c push-notification apple-push-notifications ios google-cloud-messaging

15
推荐指数
1
解决办法
9819
查看次数