推送正在使用我的开发配置文件,我试图让它适用于我的Ad Hoc配置文件。
我使用文本编辑器检查了临时配置文件,发现:
<key>aps-environment</key>
<string>production</string>
因此,我已在我的应用ID:
上设置了生产证书
我检查了设备日志,发现它成功注册了设备令牌:
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)newDeviceToken
{
// Tell Parse about the device token (this gets called)
[PFPush storeDeviceToken:newDeviceToken];
...
安装目标出现在Parse的Web UI中。 (Parse是移动应用的后端服务)
客户端推送显示在推送日志中(参见屏幕截图3)。我还从Web UI工具创建了手动文本推送。
设备上没有任何推送。我尝试了在前台运行的应用程序并且根本没有运行(从任务栏中删除)。
任何人都有任何建议?我已经厌倦了这个...我试着尝试了一切。
答案 0 :(得分:0)
似乎您正确定义了证书和配置文件。在使用APN签署Parse连接或将推送消息发送到APN的证书的过程中丢失了一些东西。
对于我荒谬的英语真的很抱歉,但这会有点长。您是否尝试使用证书和私钥手动连接到APN?
要做到这一点并使事情变得更简单,请将您的证书和私钥放在同一个文件夹中,然后打开终端并转到放置cert和密钥文件的同一文件夹并运行此命令:
openssl s_client -connect gateway.push.apple.com:2195 -cert YourCertFileHere -key YourPrivateKeyFileHere
...然后输入密钥的密码
如果一切顺利,您将通过telnet连接到APN,连接不会被删除,否则,您没有一对有效的文件(密钥和证书)。
其他可能的原因是Parse尝试向沙盒服务器发送推送消息,我无法弄清楚如何确认这一点,因为我没有使用此BaaS的经验。
我希望这可以帮到你。