我需要在关闭应用程序时更改服务的sharedpreference。这基本上是为了检查应用程序是否强制关闭(从最近的应用程序列表中移除),而服务正在运行。然而,共享偏好似乎没有经过?可能这是因为SharedPreferences在活动/组件关闭之后不可用,并且服务是从应用程序关闭的最后一件事情?从服务中的onTaskRemoved更改SharedPreferences
这里是onTask片断:
@Override
public void onTaskRemoved(Intent rootIntent) {
SharedPreferences sharedPreferences = (SharedPreferences) getApplicationContext().getSharedPreferences("SkiCompanionPreferences", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor;
editor = sharedPreferences.edit();
editor.putBoolean("recording", false).commit();
super.onTaskRemoved(rootIntent);
}
尝试用'apply()'替换'commit()' –
我已经这样做了 - 没有工作:/ –
@ ShaneMonksO'Byrne确保在SharedPreferences的名称中没有错字 –