我需要构建一个应用程序来进行实时报告,你能推荐一个支持实时通信的解决方案吗?我想采用长轮询这种方法。
它将是 Android 原生应用,而不是网络应用。
是否有已经写好的东西,所以我不需要从一开始就实现它?
我是一名 django、python 开发人员。
最佳答案
这不是轮询解决方案,但当我需要这样的东西时,我创建了一个 foreground创建到我的服务器的持久套接字连接的服务。然后,我在 BOOT_COMPLETED 和 CONNECTIVITY_CHANGE 上注册了一些广播接收器以维护我的服务。这对我来说比 C2DM 更有效,因为我可以更好地控制系统并且几乎是实时的。 C2DM 是一种即刻即弃系统,不保证其可靠性。您将必须在连接更改之间管理套接字,并且可能持有某种 wakelock .
对于轮询解决方案,您还可以构建网络服务器并使用 http 请求进行轮询。这将避免在连接更改之间管理套接字的需要,但这不是实时解决方案。
关于android - android native 应用程序中的长轮询解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7456572/