使用Android应用,服务,套接字+谷歌地图API - 什么是正确的方式?

时间:2016-07-20 18:47:47

标签: java android socket.io

我的Android应用程序需要在服务器(应用程序)打开时与服务器通信。 为此,我想使用socketIO Java客户端。

我是否需要将BoundService用于套接字(它应该在后台运行)?活动和服务沟通需要成为可能。为此,我可以使用广播意图。

需要建立套接字连接的地方?在MainActivity onCreate或服务onStartCommand方法?

修改
来自我的服务器(套接字)的请求在谷歌地图准备好之前出现..这意味着,我无法添加标记到地图等。什么是最佳解决方案?向服务器发送像#34; Google map ready&#34 ;,然后从服务器发送到android?

1 个答案:

答案 0 :(得分:3)

我认为您应该在服务中创建套接字,这样您就可以轻松地从任何活动/片段发送消息。只需确保在应用程序转到后台时关闭套接字。

未连接套接字时,您可以依赖推送通知。一旦用户回到您的应用程序,您可以再次建立插座,这样您将节省电池。

  

确保使用部分唤醒锁,以备不时之需   应用程序在后台时对套接字的操作。

编辑: 如果您希望消息仅在映射准备好后才出现,那么可能在渲染映射后创建套接字。可能的替代方法是将来自服务器的消息存储在队列中直到它被处理。