我正处于iPhone应用程序的规划阶段,由于其可扩展性功能,我正在考虑将Google App Engine用于我的服务器组件。
推送通知使用二进制接口发送到gateway.push.apple.com:2195
。
但是,服务器的JRE只允许使用following standard classes,但不包括Socket
类。是否可以URLConnection
以某种方式使用它?
考虑到Google App Engine应用程序的限制,有没有办法实施推送通知?
如果可能,我希望避免使用AppNotify或UrbanAirship等第三方服务。
答案 0 :(得分:24)
不。 Google App Engine禁止本机套接字连接。您需要使用第三方服务(如您提到的服务)或使用其他专用服务器发送通知。
编辑:请注意,GAE对套接字和拨出电话的限制不仅仅是库限制。 Google服务器实际上会阻止所有出站网络连接;他们只允许通过URL获取服务器发出HTTP请求。
如果您愿意,可以加注Issue 1164: Add Support for Apple Push Notification Service。
答案 1 :(得分:6)
现在Appengine版本1.7.7可能!
答案 2 :(得分:0)
最近,谷歌正式支持在iOS上发送推送通知。您可以查看此sample code。
有关详细信息,请查看此Google的post。
答案 3 :(得分:0)
您使用第三方库notnoop/java-apns。它很容易使用。您可以遇到的唯一问题是 GAE上的线程限制
答案 4 :(得分:0)
绝对可能。查看java-apns-gae。
这是一个开源的Java APNS库,专为在Google App Engine上工作(和使用)而设计。