如何使用 PushMeBaby 示例发送 Apple 推送通知?
我正在尝试使用 PushMeBaby 示例 APN 服务器应用程序将推送通知发送到我的设备。我有临时分发应用程序。对于我的应用程序 ID,我创建了用于开发和生产的 ssl 证书。它似乎没有从 PushMeBaby 应用程序发送推送通知,我已经将 Push SSL 证书安装到工具链.. 仍然似乎不起作用..
2010-02-01 07:20:49.578 PushMeBaby[7193:a0f] MakeServerConnection(): 0
2010-02-01 07:20:49.613 PushMeBaby[7193:a0f] SSLNewContext(): 0
2010-02-01 07:20:49.614 PushMeBaby[7193:a0f] SSLSetIOFuncs(): 0
2010-02-01 07:20:49.614 PushMeBaby[7193:a0f] SSLSetConnection(): 0
2010-02-01 07:20:49.615 PushMeBaby[7193:a0f] SSLSetPeerDomainName(): 0
2010-02-01 07:20:49.631 PushMeBaby[7193:a0f] SecKeychainOpen(): 0
2010-02-01 07:20:49.648 PushMeBaby[7193:a0f] SecCertificateCreateFromData(): 0
2010-02-01 07:20:49.655 PushMeBaby[7193:a0f] SecIdentityCreateWithCertificate(): 0
2010-02-01 07:20:49.656 PushMeBaby[7193:a0f] SSLSetCertificate(): 0
2010-02-01 07:20:52.353 PushMeBaby[7193:a0f] SSLHandshake(): 0
2010-02-01 07:20:57.954 PushMeBaby[7193:a0f] SSLWrite(): 0 144
以上是 PusheBaby xcode 应用程序的日志。
I am trying to use PushMeBaby sample APN Server application to send push notifications to my device. I have adhoc distribution application. For my application ID I have created both ssl certificates for development and production. It seems to be not sending push notifications from PushMeBaby application, I have alread installed Push SSL certificates to the tool chain.. still it seems to be not working..
2010-02-01 07:20:49.578 PushMeBaby[7193:a0f] MakeServerConnection(): 0
2010-02-01 07:20:49.613 PushMeBaby[7193:a0f] SSLNewContext(): 0
2010-02-01 07:20:49.614 PushMeBaby[7193:a0f] SSLSetIOFuncs(): 0
2010-02-01 07:20:49.614 PushMeBaby[7193:a0f] SSLSetConnection(): 0
2010-02-01 07:20:49.615 PushMeBaby[7193:a0f] SSLSetPeerDomainName(): 0
2010-02-01 07:20:49.631 PushMeBaby[7193:a0f] SecKeychainOpen(): 0
2010-02-01 07:20:49.648 PushMeBaby[7193:a0f] SecCertificateCreateFromData(): 0
2010-02-01 07:20:49.655 PushMeBaby[7193:a0f] SecIdentityCreateWithCertificate(): 0
2010-02-01 07:20:49.656 PushMeBaby[7193:a0f] SSLSetCertificate(): 0
2010-02-01 07:20:52.353 PushMeBaby[7193:a0f] SSLHandshake(): 0
2010-02-01 07:20:57.954 PushMeBaby[7193:a0f] SSLWrite(): 0 144
Above is the log of PusheBaby xcode application.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
好的 - 弄清楚了。
我传入的设备令牌(从 UrbanAirship 获得)没有空格。我根据这个很棒的教程 (http://mobiforge.com/developing/story/programming-apple-push-notification-services) 使用了 iPhone 应用程序控制台中的设备令牌,该令牌在字符串中每 8 个字符之间有空格。这就成功了。
设备令牌应如下所示 - 38c866dd bb323b39 ffa73487 5e157ee5 a85e0b7c e90d56e9 fe145bcc 6c2c594b
稍后 - 当您查看 PushMeBaby 的 NSLog 时 - 您将看到 SSLWrite 调用中的“已处理”计数增加了 1(我的从 104 增加到 105)
例如 2011-04-28 11:21:41.543 PushMeBaby[49218:903] SSLWrite(): 0 105
希望这可以帮助那些像我一样挣扎了几天的人......
OK - Figured this out.
The device token I was passing in (which I got from UrbanAirship) had no spaces. I used the device token from the console from the iPhone app per this great tutorial (http://mobiforge.com/developing/story/programming-apple-push-notification-services) which has spaces between every 8 chars in the string. That did the trick.
The device token should look like this - 38c866dd bb323b39 ffa73487 5e157ee5 a85e0b7c e90d56e9 fe145bcc 6c2c594b
Later - when you look at the NSLog from PushMeBaby - you will see the "processed" count in the SSLWrite call increased by 1 (mine went from 104 to 105)
e.g. 2011-04-28 11:21:41.543 PushMeBaby[49218:903] SSLWrite(): 0 105
Hope this helps somebody else who struggled like me for days...
我只是想在这里加上我的两分钱,因为这也让我受益匪浅。如果您意识到设备令牌应该有空格,那么为了不再出现此问题,请将这部分代码替换
为:
Just thought I'd add my two cents here since this got me too. If you realized that the device token should have had spaces, then to never have this problem again replace this section of code:
with this:
设备令牌应该是
是的,对于 Push me Baby ,如果您包含 <>, 它在 NSScanner 中进入无限循环,
尽管正式设备令牌应包含 <>和空格,这就是您注册设备时得到的
如果您在其他应用程序中使用它,例如 MAC APP STORE 上的 APN TESTER
yes for Push me baby the device token should be
if you include the <> it goes into an infinite loop in an NSScanner
Though officially the device token should include <> and spaces as thats what you get when you RegisterDevice
if you use it in other apps such as APN TESTER on MAC APP STORE
只需将其添加
到
ApplicationDelegate.h
中的-(IBAction)push:(id)sender;
之前即可。现在您支持“无空间”格式。
Just add this before
to
-(IBAction)push:(id)sender;
inApplicationDelegate.h
.And now you it is supported the "spaceless" format.