[Android] 使用JSON和SharedPreferences存儲用戶自定義類


先看一下Google官方對於SharedPreferences的定義:

The SharedPreferences class provides a general framework that allows you to save and retrieve persistent key-value pairs of primitive data types. You can use SharedPreferences to save any primitive data: booleans, floats, ints, longs, and strings. This data will persist across user sessions (even if your application is killed).

SharedPreferences可以用來永久地存儲數據,即使應用被銷毀。事實上數據存儲在Android的內部存儲器上。

有兩種分方法用來獲取SharedPreferences對象。 getSharedPreferences() - 當應用需要多個由名字區分的存儲文件時,可以調用這個方法。getPreferences()-當應用只需要一個存儲文件時,調用這個方法。

在SharedPreferences對象中寫入數據,需要:

1.調用edit()方法獲得一個SharedPreferences.Editor對象。

2.使用Editor對象的方法比如putBoolean()和putString()等將數據寫入Editor。

3.使用Editor對象的方法commit()或apply()將數據提交。

讀取SharedPreferences中的數據只需要調用SharedPreferences的方法如getBoolean()和getString().

下面是一個使用SharedPreferences存儲數據的例子。

public class Calc extends Activity {
    public static final String PREFS_NAME = "MyPrefsFile";

    @Override
    protected void onCreate(Bundle state){
       super.onCreate(state);
       . . .

       // Restore preferences
       SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
       boolean silent = settings.getBoolean("silentMode", false);
       setSilent(silent);
    }

    @Override
    protected void onStop(){
       super.onStop();

      // We need an Editor object to make preference changes.
      // All objects are from android.context.Context
      SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
      SharedPreferences.Editor editor = settings.edit();
      editor.putBoolean("silentMode", mSilentMode);

      // Commit the edits!
      editor.commit();
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM