2011-07-13 85 views
0

我的应用使用Android XML-RPC项目与服务器进行通信。建立连接后,应用程序需要通过每xx秒向服务器发送一条消息来保持连接处于活动状态。该应用程序还包含多个需要使用连接发送和接收消息的活动。如何处理来自多个活动的连续HTTP连接?

什么是实施这个的正确方法?

使用IntentService和BroadcastReceiver? 还是只是一个线程?

回答

1

这看起来像ServiceAlarmManager开始完美的工作。

您的onStart方法服务将从首选项中获取您需要的任何连接信息(如令牌,用户名等)。您可以使用AlarmManager定期发送意向启动服务来触发服务启动。

另一种选择是有一个服务在后台启动,运行的线程,做通信每个X秒(使用调用之间的休眠(延迟)。

+0

如何合并这与用户发起的通信来自多个活动? –

+0

查看本地服务,您将获得服务方法的访问权限,也可以使用Activity.startService方法从您的活动中手动启动服务。另请参见:http://developer.android。 com/reference/android/app/Service.html#LocalServiceSample –

+0

向服务中添加处理程序可能会造成欺骗...... http://developer.android.com/resources/samples/ApiDemos/src/com/example/android /apis/app/MessengerService.html –