在我的Android应用程序中,我已经创建了一个服务,它在后台线程上获取数据并定期将其发送到服务器。我有三类用户已按优先级设置活动,现在我希望我的服务只应在当且仅当选择了特定类型的用户时运行,否则服务应该停止。所以我想停止更改我的共享首选项(xml文件中的listpreference)的服务。如何检索我的服务引用(在后台运行而不是新引用)并绑定到用户更改listpreference中的值时停止。
提前致谢。
答案 0 :(得分:1)
您不需要绑定它就可以阻止它。无论您有Context
引用(Activity
,Service
还是基本应用程序上下文),只需致电stopService()
:
private void stopServiceUsingContext(Context context) {
context.stopService(new Intent(context, MyServiceClass.class));
}
编辑:如果您想要停止服务以响应偏好更改侦听器,那么您应该引用Activity
扩展Context
以上代码适用