Значение SharedPreferences не обновляется
Я пытаюсь обновить значенияSharedPreferencesвот мой код:
<code>edit = PreferenceManager.getDefaultSharedPreferences(this).edit(); edit.putString(Settings.PREF_USERNAME+"",txtuser); edit.putString(Settings.PREF_PASSWORD+"",txtpass); edit.commit();" </code>
Проблема в том, что когда я получаю доступ к этим значениям, он не возвращает обновленные значения, он дает мне значение SharedPreferences.
Но когда я подтверждаю данные вXML файл, данные обновляются в этом.
И после перезапуска приложения я получаю обновленные значения. Поэтому мне необходимо перезапустить приложение, чтобы получить обновленные значения.
Итак, как получить эти обновленные значения после его изменения?
заранее спасибо
Here is my whole code:
<code>@Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.main); ctx=this; status=PreferenceManager.getDefaultSharedPreferences(this).getString(Settings.PREF_STATUS, Settings.DEFAULT_STATUS);// get old value submit.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { on(ctx,true);// function will call and value is updated } }}); status=PreferenceManager.getDefaultSharedPreferences(this).getString(Settings.PREF_STATUS, Settings.DEFAULT_STATUS);// this should give me a updated value but gives old value } public static boolean on(Context context) { return PreferenceManager.getDefaultSharedPreferences(context).getBoolean(Settings.PREF_ON, Settings.DEFAULT_ON); } public static void on(Context context,boolean on) { if (on) Receiver.engine(context).isRegistered(); // } **********in reciver file*********** public void isRegistered ) { Editor edit = PreferenceManager.getDefaultSharedPreferences(Receiver.mContext).edit(); edit.putString(Settings.PREF_STATUS+"","0"); edit.commit(); } </code>