两台设备之间长时间运行的客户端 - 服务器连

时间:2016-04-06 15:01:58

标签: android android-service android-networking android-service-binding

如果两个(或更多)设备连接到同一个网络,并且每个设备都安装了我的apk,那么一台设备如何有效地进行通话'对方?很遗憾,这些设备无法使用Google Play服务,Wifi Direct和蓝牙。

我想过使用第三方推送通知服务,但理想情况下我需要设备之间的响应尽可能快,并且长寿。

我设法让两个设备使用文档中的旧客户端 - 服务器Network Discovery Sample应用程序相互发送消息。但是,如果其中一个应用程序已关闭或留下内存,则连接显然会中断。因此,我试图通过一个服务来判断这是否可行,我理解这个服务存在于Activity生命周期之外。

我理解一个Activity如何连接到服务以发送消息(good sample on that located here),但是从我收集的内容中,这一切都发生在设备本地。是否有可能通过本地网络,从一个应用程序到另一个应用程序进行此交换?我想我所说的是如何在两个不会死的应用程序之间建立基本的客户端服务器套接字关系?

1 个答案:

答案 0 :(得分:2)

已经很长时间但它应该仍然有效。 根据我的理解,这里的问题是在应用程序消失时继续运行。

我记得为此目的使用IntentService。在onHandleIntent()中,我们使它循环(!stopCondition){...}

这是一个稳定的解决方案,但它是在kitkat的时间。

我会尝试使用IntentService执行和管理的第一段中的解决方案,该解决方案应该保持可用。