Я работаю над проектом android, где у меня есть сценарий, такой как:
Я использовал сборщик мест. И данные, которые дал сборщик мест, отправляются в различные действия с использованием общих предпочтений. И показывают эти данные в TextView.
, но проблема заключается в том, что я закрыл действие и снова открыл это действие; мои данные все еще видны в TextView.
даже когда я очистил его в onDestroy ().
вот мой код для отправки данных:
SharedPreferences settings = getSharedPreferences("address", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.putString("address", (String) Address);
editor.commit();
finish();
здесь мой код для установки и очистки данных:
@Override
protected void onResume() {
super.onResume();
SharedPreferences settings = getSharedPreferences("address", Context.MODE_PRIVATE);
String n = settings.getString("name", "");
String a = settings.getString("address", "");
name.setText(n);
location.setText(a);
}
@Override
protected void onDestroy() {
SharedPreferences settings = getSharedPreferences("address", Context.MODE_PRIVATE);
SharedPreferences.Editor editor = settings.edit();
editor.remove("address");
editor.clear().commit();
super.onDestroy();
}
вот мой класс менеджера предпочтений:
public class PrefManager {
SharedPreferences pref;
SharedPreferences.Editor editor;
Context _context;
// shared pref mode
int PRIVATE_MODE = 0;
// Shared preferences file name
private static final String PREF_NAME = "sara";
private static final String IS_FIRST_TIME_LAUNCH = "IsFirstTimeLaunch";
public PrefManager(Context context) {
this._context = context;
pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE);
editor = pref.edit();
}
public void setFirstTimeLaunch(boolean isFirstTime) {
editor.putBoolean(IS_FIRST_TIME_LAUNCH, isFirstTime);
editor.clear().commit();
}
public boolean isFirstTimeLaunch() {
return pref.getBoolean(IS_FIRST_TIME_LAUNCH, true);
}
}
И, пожалуйста, не пометьте этот вопрос как дубликат, потому что я вижу все связанные вопросы и вижу ответы. Я перепробовал все возможные решения, но у меня ничего не получалось. Я новичок в android, поэтому, пожалуйста, помогите мне.