iOS 极光推送 接收不到后台推送的消息

今天研究了一下极光,推送。

//关于开发证书的配置 可以看这篇文章 http://jingyan.baidu.com/article/5d6edee20f3ae599eadeec35.html

下载了极光提供的官方的demo,在http://developer.apple.com/ 配置了开发证书,然后去极光官网注册了key,将key,添加到工程里,配置以后,在真机运行实例demo

打印如下

但是在极光的控制台给应用发送信息,应用收不到,

 1 - (void)application:(UIApplication *)application
 2     didReceiveRemoteNotification:(NSDictionary *)userInfo {
 3   [APService handleRemoteNotification:userInfo];
 4   NSLog(@"收到通知:%@", [self logDic:userInfo]);
 5   [rootViewController addNotificationCount];
 6 }
 7 
 8 - (void)application:(UIApplication *)application
 9     didReceiveRemoteNotification:(NSDictionary *)userInfo
10           fetchCompletionHandler:
11               (void (^)(UIBackgroundFetchResult))completionHandler {
12   [APService handleRemoteNotification:userInfo];
13   NSLog(@"收到通知:%@", [self logDic:userInfo]);
14   [rootViewController addNotificationCount];
15 
16   completionHandler(UIBackgroundFetchResultNewData);
17 }

这两个方法,根本就不走,相当的郁闷,后来仔细检查,发现我项目工程里面的Bundle iDentifier 和注册的开发账号Bundle Identifier不一致


 

然后我在工程里面随意改了一下 

然后点击Fix Issue ,回到http://developer.apple.com/ 上面去配置开发证书,发现怎么都通过不了,现在才想明白了,如果输入一个Bundle ID 然后在点Fix Issue,那么这个id就被占用了,那注册开发证书的时候,就不会通过,这是需要你先配置app的开发证书,然后讲注册的证书下载导出p12的格式,在极光上面创建一个新的应用,上传证书就行了,最重要一点,要配置下真机测试的证书,用惯了x7以后免费真机测试的同学来复习下吧 http://jingyan.baidu.com/article/ff411625b8141312e48237a7.html  ,如果按照上面的步奏做了,我想问题应该解决了,在真机上面跑一下 ,然后在控制台输入信息

 

 

让手机上的程序在后台运行,就可以收到推送的通知了

posted @ 2016-01-05 16:13  无边小仙  阅读(2695)  评论(0编辑  收藏  举报