我们正在为Android开发一个聊天应用程序,我们的服务器是通过Heroku在Django中实现的。我们现在必须在GCM为您提供的两个可能的连接服务器之间进行选择:HTTP或CCS(XMPP)。我们想知道是否可以使用Heroku作为第二选择。
https://developer.android.com/google/gcm/ccs.html
提前致谢。
答案 0 :(得分:2)
从我到目前为止所读到的有关GCM的内容来看,是的,这是非常可能的。 Google服务器负责与用户设备上运行的Android应用程序进行通信,因此没有任何问题。
heroku托管的GCM XMPP服务器负责与谷歌服务器通信。入站连接仅限于Heroku上的端口80和443,因此只要您只需启动并连接从heroku托管的python应用程序到Google服务器的出站,那么您就可以了。
来自Heroku Docs ..
入站请求由提供HTTP和的负载均衡器接收 SSL终止。从这里他们直接传递到一组 路由器。
路由器负责确定您的位置 应用程序的web dynos并将HTTP请求转发给其中一个 这些dynos。
如果您想证明这一点,我很乐意为您设置一个测试环境。
您还可以运行bash提示来测试heroku上的内容。只需从提示符处运行:/repofolder$ heroku run bash
。
以下是通过端口5235连接到gcm的heroku bash的屏幕截图