Как сохранить логическое значение с помощью SharedPreferences в Android?

Я хочу сохранить логические значения, а затем сравнить их в блоке if-else.

Моя нынешняя логика:

boolean locked = true; if (locked == true) { /* SETBoolean TO FALSE */ } else { Intent newActivity4 = new Intent(parent.getContext(), Tag1.class); startActivity(newActivity4); } 

Как сохранить логическую переменную, для которой установлено значение false?

Solutions Collecting From Web of "Как сохранить логическое значение с помощью SharedPreferences в Android?"

 SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); Boolean statusLocked = prefs.edit().putBoolean("locked", true).commit(); 

Если вы не заботитесь о возвращаемом значении (статусе), тогда вы должны использовать .apply (), который быстрее, потому что он асинхронен.

 prefs.edit().putBoolean("locked", true).apply(); 

Вернуть их обратно

 Boolean yourLocked = prefs.getBoolean("locked", false); 

А false – значение по умолчанию, когда оно терпит неудачу или не установлено

В вашем коде это будет выглядеть так:

 boolean locked = true; SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(); if (locked) { //maybe you want to check it by getting the sharedpreferences. Use this instead if (locked) // if (prefs.getBoolean("locked", locked) { prefs.edit().putBoolean("locked", true).commit(); } else { startActivity(new Intent(parent.getContext(), Tag1.class)); }