我開發了一個應用程序,它將布爾值存儲爲SharePreference
,以確定應用程序是否在安裝後第一次啓動。問題是,當我卸載並重新安裝時,它仍然記得我之前安裝時設置的所有SharedPreference
,我無法檢查應用程序在安裝後是否第一次啓動。 這發生在三星Galaxy S版本2.2.1。重新安裝後Android SharedPreference不清晰
我很感謝您關於檢查第一次啓動的方式的建議。
我發現它也很奇怪,但我用其他設備,相同版本和差異版本進行了測試,未發現此問題。我只在一臺設備上才發現這個問題。
這裏是我的代碼,請告訴我,如果你發現不對勁:
public static boolean isFirstStart(Context context) {
SharedPreferences pref = context.getSharedPreferences(PREFS_NAME, Context.MODE_PRIVATE);
boolean isFirstTime = pref.getBoolean(KEY_IS_FIRST_TIME, true);
if (isFirstTime) {
SharedPreferences.Editor editor = pref.edit();
editor.putBoolean(KEY_IS_FIRST_TIME, false);
editor.putBoolean("test", false);
editor.commit();
}
return isFirstTime;
}
這個方法還真只有在第一次安裝,但假的,稍後再安裝。 注意:我總是卸載並安裝來測試它。我試圖清除這個應用程序中的數據,但設置問題仍然是一樣的,但是如果執行pref.edit()。clear()。commit();它將被清除以進行此安裝。
你確定嗎? – Rasel
你在其他設備上試過嗎? – Sver
請顯示讀取首選項並驗證它的代碼。 – cdhabecker