通过全局对象访问Android服务

时间:2010-09-02 03:29:53

标签: android android-service

我有一些简单的服务,我的一些活动需要访问。标准方法似乎是:

  1. 创建ServiceConnection以指定绑定[与服务对象]
  2. 后要执行的操作
  3. 使用ServiceConnection调用bindService
  4. 但是这需要每个活动至少调用一次bindService。如果我只调用一次bindService,全局存储服务对象以允许不同的活动访问它?

    这是不好的做法吗?为什么呢?

1 个答案:

答案 0 :(得分:1)

您可以扩展应用程序并让它保留对服务的引用,然后在您的活动中将getApplicationContext()强制转换为新类并使用公共API来获取服务。

mService = ((MyApplication)getApplicationContext()).getMyService();