GCM IOS设备未注册

时间:2016-02-18 17:54:04

标签: ios google-cloud-messaging apple-push-notifications

我尝试使用GCM发送APN。设备已注册正常,已收到GCM和IOS设备令牌。 当我尝试发送有效载荷时没有"通知"节点:

{
"to":"GCM TOKEN",   
    "data":{
          "message": "TEST",
          "feed_id": 121,
    }
}

一切正常。

{"multicast_id":4767627754343692164,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1455817174655839%663656d2f9fd7ecd"}]}

但我想在应用程序处于后台时处理通知

func application( application: UIApplication,
        didReceiveRemoteNotification userInfo: [NSObject : AnyObject],
        fetchCompletionHandler handler: (UIBackgroundFetchResult) -> Void)

根据文档,我将有效负载修改为:

{       
   "to":"GCM TOKEN",   
   "notification" : {
      "body" : "great match!",
      "title" : "Portugal vs. Denmark",
      "icon" : "myicon"
    },
    "data":{
          "message": "TEST",
          "feed_id": 121,
    }
 }

第一次尝试:

{"multicast_id":4864342605467955143,"success":1,"failure":0,"canonical_ids":0,"results":[{"message_id":"0:1455817367467043%663656d2663656d2"}]}

但未收到通知。

第二次尝试:

{"multicast_id":8013376855048129620,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"NotRegistered"}]}

然后,即使删除通知节点,应用程序也不会收到任何通知。所以我必须删除它,然后重新安装,接收新的令牌。

第二期:

我尝试使用NWPusher检查APN,但收到错误:令牌无效。 令牌示例:

<dab5efc5 42af7327 c2541cb1 06d023c5 2bd4ac44 7a78c8c9 47ea33a6 76f3ffd3>

但是要在GCM中注册这个令牌是好的,为什么?

1 个答案:

答案 0 :(得分:1)

我的问题的原因是没有配置文件。

[编辑详细说明]:

在设备上配置应用程序似乎有问题 要使推送和后台通知再次起作用:

  • 从测试设备中删除应用程序
  • 在XCode中执行'clean'
  • 在XCode中执行'build'
  • 将应用重新安装到设备