簡體   English   中英

默認的SharedPreferences不保存值

[英]Default SharedPreferences don't save values

我有這個課:

public class SharedPreferenceUtil {

private SharedPreferences prefs;

private static final String PRODUCTION_MODE_URL_GET_CHECKLIST_JSON = "www.exemplo.com/json";

//configuration keys
private static final String KEY_URL_GET_CHECKLIST_JSON = "KEY_URL_GET_CHECKLIST_JSON";

public SharedPreferenceUtil(Context context){
    prefs = PreferenceManager.getDefaultSharedPreferences(context);
}

private void initializeDefaultAppConfigurationValues(){
    prefs.edit().putString(KEY_URL_GET_CHECKLIST_JSON, PRODUCTION_MODE_URL_GET_CHECKLIST_JSON);
    prefs.edit().commit();
}

public Configuration getConfiguration() {
    Configuration configuration = new Configuration();

    initializeDefaultAppConfigurationValues();

    configuration.setChecklistGetURL(prefs.getString(KEY_URL_GET_CHECKLIST_JSON,""));

    return configuration;
}

}

當我將值保存在行中時:prefs.edit()commit()..它返回true。 當我嘗試讀取以下值時:prefs.getString(KEY_URL_GET_CHECKLIST_JSON,“”)。 它返回“”,好像尚未保存該值。

有人可以幫我解決這個問題。

似乎您的代碼不清楚

請參考以下代碼:

組:

  SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
  SharedPreferences.Editor editor = settings.edit(); 
                            editor.putString("language", language);
                            editor.commit();

讀:

SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);
String language = settings.getString("language", "");

請查看以下鏈接,它將對您有用

共享首選項存儲ANDR檢索

private SharedPreferences prefs;

你忘了static

 private static SharedPreferences prefs;   

所有示例都應該是一個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM