안드로이드에서 SharedPreference를 이용하면 어플리케이션에 연관된 간단한 데이터(String, int, boolean, 등등)들을 쉽게 파일시스템에 저장하고 가져올 수 있습니다.  간단한 코드를 통해 사용법을 알아보겠습니다.

데이터는 항상 키와 데이터가 짝으로 저장됩니다. 키를 통해서 데이터를 저장하고 또 가져올 수 있습니다.

데이터 가져오기

SharedPreferences prefs = getSharedPreferences("PrefName", MODE_PRIVATE);
String account = prefs.getString("key_account", "");
boolean keepcheck = prefs.getBoolean("key_keepaccount", true);

Context.getSharedPreferences함수를 통해서 SharedPreferences 인스턴스를 가져옵니다. getString, getBoolean, getInt, 등을 통해 첫번째인자는 키를 주고 두번째 인자는 디폴트값입니다. 만약 해당 키에 대한 데이터가 존재하지 않는 경우 디폴트값을 리턴해줍니다.

데이터 저장하기

SharedPreferences.Editor ed = prefs.edit();
ed.putBoolean("key_keepaccount", keepaccount);
ed.putString("key_account", account);
ed.commit();

데이터를 저장하기 위해서는 SharedPreferences.Editor 인스턴스를 edit()함수를 통해 가져옵니다. 그리고 putString, putInt, putBoolean등을 통해 데이터를 저장한후 반드시 commit()을 호출해주어야 실제로 파일에 저장이 됩니다.

Activity와 관련하여 저장해야할 값들이 있는 경우 편리하게 Activity.getPreferences(int mode)를 이용할 수도 있습니다.

작성 :  Android SDK 1.1