0

我想反复(每秒)从另一个 android 设备向 GAE 请求消息(对象或值)(如果 android 客户端没有在那里创建或更改某些东西)。我需要快速检查它,但我知道它大约每小时发生一次。

我使用restlet,我不想创建新线程并每秒从该线程获取轮询,因为这非常消耗电池。我也不想使用 C2DM。

有没有可能做到这一点?我在这里找到了一些关于 NIO 非阻塞 http 连接器的信息: http ://restlet-code.1609877.n2.nabble.com/Push-data-from-server-using-a-live-HTTP-connection-td2906563.html

但是这里只描述了客户端,我也不知道这个解决方案是否甚至可以在 GAE 上使用以及如何使用。有谁知道更多关于这种方法的信息?

非常感谢您提前。

4

3 回答 3

1

作为 uniqush 的作者,我在FAQ页面中针对这个问题创建了一个条目。

我可以在 Google App Engine 上使用 uniqush 吗?

是和不是。

如果您只想在 Google App Engine 上使用 GCM,那么 uniqush-push 中有一些代码可以直接使用。

但是,由于 Google App Engine 不支持套接字连接,因此无法使用 APNS。在另一项工作中,如果您想在 Google App Engine 上设置服务器,则无论您使用什么软件/库,都无法向 iOS 设备推送任何通知。

我确实考虑过将 uniqush 移植到 Google App Engine。但由于这个事实,我认为在 Google 允许我们使用客户端套接字连接或提供某种方式连接到 APNS 服务器之前,最好将其移植。

同样,如果您正在考虑使用 Google App Engine 作为您的应用程序的服务器,请注意您现在无法将通知推送到任何 iOS 设备。如果这个事实不打扰你,那就去做吧。

就个人而言,我建议您运行具有完全控制权的服务器。现在不贵。Amazon EC2 或类似的云产品可能是运行 uniqush 的不错选择。

正如我上面建议的那样,如果您想支持除 Android 之外的更多平台,使用具有完全控制权的(虚拟)服务器将是一个更好的选择。

如果还有其他问题,请随时回复。

于 2012-09-18T23:15:59.133 回答
0

For being future proof I would suggest you have a single push notification service for both kind of devices. You can either build on your own, or leverage something like uniqush or this

Also the Urban Airship's SDK would be a good option to look at, more details here

于 2012-07-03T21:05:14.433 回答
0

类似于 Urban Airship,但只是成本的一​​小部分。API 允许您通过调用向用户发送 C2DM 消息。实现广播接收器后,当用户安装应用程序时,系统会提示他们接受消息。如果他们接受,则将令牌发送到识别用户的 C2DM 服务器。然后使用此令牌通过 C2DM 平台向他们发送消息。Zend PHP 框架为此内置了函数,但如果可靠性是一个问题,请使用外部提供程序,如 Remote Queries 或 Urban Airship

于 2012-07-05T10:55:56.920 回答