1

在我的 android 项目中,我有 MainActivity 和一个服务。如何在我的服务中获取活动的实例?

4

2 回答 2

3

你为什么想要?您是否尝试在服务和活动之间进行通信?如果是这样,那么在 Service 中获取 Activity 对象可能不是您想要的方式。

Activity 作为 View/Controller 的组合适合 MVC 模型。服务是控制器。要在它们之间传递信息,您需要更新 Model,它可以是 SharedPreferences、广播 Intent、内容提供者等。您不应该做的是假设您的应用程序中的各种组件都是整体“整体”的一部分。Android 应用程序是各个部分的松散连接,它们应该使用 Android 结构而不是变量等相互通信。

于 2013-08-15T00:26:03.747 回答
0

这不是一个合适的方法。相反,如果它存在,则向 Activity 发送消息以执行操作。使用LocalBroadcastManager, 或第三方消息总线,如 Square 的Otto,或Messenger, 或其他东西将消息从服​​务传递到活动。

于 2013-08-15T00:23:13.837 回答