티스토리 뷰

Android SharedPreference 앱 전체 데이터 공유하기 (임시 DB 만들기)

   SharedPreference

참고 : http://developer.android.com/intl/ko/reference/android/content/SharedPreferences.html



앱 전체에 String이나 int값을 공유 하기 위해서 간단하게 사용할 수 있다.

SharedPreference로 생성된 값은 앱을 삭제하거나 앱데이터를 삭제하기 전까지는 유지 할 수 있다.

따라서 환경설정 값이나 기타 앱에서 기록하고 있어야 하는 데이터를 보관하는데 손쉽게 사용할 수 있는 기능이다.


개별 클래스에서 SharedPreference를 선언하여 개별적으로 가져오고 저장하는 방법이 있지만 아래와 같이 Util Class를 작성하여

필요한 데이터를 깔끔하게 사용 할 수 있다.


public class SharedPreferenceUtil{

    public static final String APP_SHARED_PREFS = "thisApp.SharedPreference";

    private SharedPreferences sharedPreferences;
    private Editor editor;

    public SharedPreferenceUtil(Context context){
        this.sharedPreferences = context.getSharedPreferences(APP_SHARED_PREFS, Activity.MODE_PRIVATE);
        this.editor = sharedPreferences.edit();
    }

    public void setSharedTest(String test){
        editor.putString("test",test);
        editor.commit();
    }
    public String getSharedTest(){
        return sharedPreferences.getString("test","defValue"); // "test"는 키, "defValue"는 키에 대한 값이 없을 경우 리턴해줄 값
    }
}

아래와 같이 SharedPreferenceUtil을 아래와 같이 생성하여 필요한 부분만 간단하게 저장하거나 가져올 수 있다.

SharedPreferenceUtil sharedPreference = new SharedPreferenceUtil(context);
sharedPreference.setSharedTest("TEST"); // 저장하기
sharedPreference.getSharedTest(); // 가져오기


댓글
댓글쓰기 폼