Android是否可以从另一个意图服务启动新的Intent服务,以及如何在完成后通知服务?

时间:2012-11-29 08:09:19

标签: android broadcastreceiver google-cloud-messaging intentservice

我有一个应用程序设计问题

我的意图是有3个意向服务

1)基于GCMBaseIntentService的类

2)网络注册服务 - 注册网站

3)数据刷新服务 - 使用来自网站的最新数据更新应用程序数据

如果安装了应用的设备能够处理GCM,则GCM服务用于向Google GCM注册新的应用安装。 WebRegistration和数据刷新服务都可以在适当的时间完全独立地实例化,在应用程序启动时或在应用程序的各个点处的数据刷新服务的情况下,因此将这些作为单独的服务似乎是合适的。

Web注册服务和数据刷新服务都应在完成后广播

首次加载应用程序GCM服务需要向Web服务器注册并更新应用程序数据

GCM Intent Service是否可以注册广播接收器,启动Web注册意图服务,以及当它在广播接收器中收到该服务已完成的消息时,是否已启动数据刷新服务?

如果这种方法不可接受,我很乐意听到更合适的解决方案

2 个答案:

答案 0 :(得分:1)

是的,它很好...... intentservices作为队列运行...阅读developer.android.com上的文档

答案 1 :(得分:1)

您可以从服务中调用 bindService ,其方式与从Activity调用它的方式完全相同。您将从javadoc中注意到,您无法调用bindService的唯一地方是BroadcastReceiver。您也可以使用ServiceConnection接收Binder。

相关问题