1

在我的 android 应用程序中,我已经创建了一个服务,该服务在后台线程上获取数据并定期将其发送到服务器。我有三类用户,这些用户已由首选项活动设置,现在我希望我的服务只有在选择了特定类型的用户时才能运行,否则服务应停止。所以我想停止服务更改我的 sharedpreference(xml 文件中的 listpreference)。我如何检索我的服务的引用(它在后台运行而不是新的引用)并在用户更改 listpreference 中的值时绑定以停止。

提前致谢。

4

1 回答 1

1

您无需绑定它即可停止它。无论您有Context参考(ActivityService基本应用程序上下文),只需调用stopService()

private void stopServiceUsingContext(Context context) {
    context.stopService(new Intent(context, MyServiceClass.class));
}

编辑:如果您想停止服务以响应首选项更改侦听器,那么您应该有一个对Activity扩展的引用,Context因此上面的代码适用

于 2013-10-16T12:03:07.957 回答