我需要在關閉應用程序時更改服務的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的名稱中沒有錯字 –