如果某些偏好设置已更改,我想重新启动我的Android服务,但是在Service类中没有什么比重启方法更好的了?有没有办法重新启动我的服务,除了创建一些重置方法,重置所有类变量等?谢谢你的提示!
答案 0 :(得分:1)
我认为再次调用它会再次调用onStartCommand()。 这可能适合你。
*如果它不存在,它将运行onCreate()。
再次调用startService(intent),这将解决问题
答案 1 :(得分:0)
您必须在服务类中override
onStartCommand()
,如下所示:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, START_STICKY, startId);
return START_STICKY;
}
常量变量START_STICKY
表示系统在被杀死时重启服务。
您应该有/ {实现listener
来检测并通知何时更改首选项,您应该在onStart()
方法中注册该侦听器并在onDestroy()
内取消注册该侦听器。