Passkit推送通知不适用于Urban Airship

我已经安装了一个通行证。 当安装在设备上注册到我的服务器时,设备ID也注册了Urban Airship服务。

到现在为止还挺好。

当我尝试从城市飞艇的仪表盘发送推送信息或卷发时,或让服务器发送推送信号时,设备永远不会收到推送信息。 推送passkit更新时,有什么特别的东西需要考虑吗?

经过了很多修补,我得到了这个工作。 解决scheme不直观:

  1. 确保您在Urban Airship上创build的“应用程序”正在推向苹果的生产服务器。 Passbook不会识别存折推送到开发服务器(您只能在创build应用程序时执行此操作 – 之后不能对其进行修改)。

  2. 确保您上传用于签署Pass ID的证书,而不是用于标准推送通知的证书。 这很重要,因为证书中embedded了PassID。

  3. 尽pipe苹果说,你需要包括在有效载荷的东西。 据我所知,这是必要的,因为城市飞艇不会推空载货。 有效载荷的内容无关紧要。 该设备只关心它得到的东西,所以它知道需要更新。 例如,这个工程(python):

    飞艇= urbanairship.Airship(_UrbanAirshipPassbookKey,_UrbanAirshipPassbookMasterSecret)airship.push({'aps':{'alert':'Go。'}},device_tokens = tokens)

城市飞艇将有望在未来改变这一点。

当我对后端有更多的控制权时就想出来了。

Server response was malformed (Wrong type object for key lastUpdated in response dictionary. Expected NSString but found __NSCFNumber.) 

所以现在它适用于城市飞艇