一项服务可以绑定到多个组件吗?

Can a service be bound to more than one component?

我使用 Android 服务已有一段时间了。我知道如何启动服务并绑定到服务。我知道您可以在 activity 中绑定到多个服务,但是可以将一个服务绑定到多个组件(多个 activity、多个服务或例如一个activity 和其他服务)在同一个应用程序中?

我的问题的原因是我有一个 LocationService.java class 扩展 Service 并负责获取位置更新。当前位置收到的值应该用于其他几个组件。现在,我在 Service A 中绑定 LocationService,并且我正在使用 ICallbackServiceConnection。我想在 Service B 中执行相同操作以接收位置更新。

我是否应该使用与 Service A 中相同的模型在 Service B 中继续绑定 LocationService,如果是,我是否应该在 Service B 中再次开始 LocationService =]?我可以改用 BroadcastReceiver 吗?

我已经解决了你的问题和你想要完成的任务。您正在从 Activity A 更新位置,您希望在 Activity B 中实现相同的位置。因为您已经在 Activity A 中实现了整个过程,所以在 [=13=13] 中实现了相同的=] B 没有任何意义。由于 OOP 的主要概念是代码可重用性,因此您只需广播 Activity A 的结果并在 Activity B.This 中添加一个广播接收器会容易得多,并且不会增加负载到你的应用程序。