본문 바로가기

Android 개발/안드로이드 개발 정보

(초보를 위한)안드로이드 SharedPreference

반응형

SharedPreference란 어떤 정보에 대한 데이터를 어플 내에(xml 형태로) 저장하고 싶을 때 쓰는 것입니다.


예를 들어, 사용자의 혈액형, 키 같은(잘 변하지 않는) 간단한 정보를 어플 내에 저장할 때 씁니다.


파일을 이용하는 것이기 때문에 어떤 액티비티에서 사용하든 상관없습니다.

 



- SharedPreferences를 사용하여 데이터 저장하기 -

(데이터를 저장하고 싶은 액티비티에 아래 소스를 붙여넣기 하세요.)

 

 

// 1. SharedPreferences 객체 얻기 ("haha"라고 하는 SharedPreferences 파일을 쓰겠다는 겁니다.)

 

SharedPreferences sharedPreferences = getSharedPreferences("haha",MODE_PRIVATE);

 

 

// 2. SharedPreferences.Editor (SharedPreferences 파일을 수정하는) 객체 얻기

 

SharedPreferences.Editor Edit = sharedPreferences.edit();

 

 

// 3. "name"이라는 곳(Key)"스킬리스트"라는 데이터(Value) 넣기.(String)

 

Edit.putString("name", "스킬리스트");

 

 

// "boolean"이라는 곳(Key)"true"라는 데이터(Value) 넣기(Boolean)

 

Edit.putBoolean("boolean", true);

 

 

// ""one"이라는 곳(Key)"1"이라는 값(Value) 넣기(Int)

 

Edit.putInt("one", 1);

 

 

// 4. 데이터 수정 완료

 

sharedPreferencesEditor.commit();

 


 

- SharedPreferences를 사용하여 데이터 가져오기 -

 (데이터를 가져오고 싶은 액티비티에 아래 소스를 붙여넣기 하세요.)

 

 

// 1. SharedPreferences 객체 얻기 ("haha"라고 하는 SharedPreferences 파일을 쓰겠다는 겁니다.)

 

SharedPreferences sharedPreferences = getSharedPreferences("haha",MODE_PRIVATE);

 

 

// 2. "name"이라는 곳(Key)의 데이터(Value)"myname"이라는 스트링에 가져오기.

 

String myname = sharedPreferences.getString("name", "" );

 


 

- 실제 사용 소스 입니다 -

 

 

public class Main extends AppCompatActivity {

 

 

@Override

 

protected void onCreate(Bundle savedInstanceState) {

 

super.onCreate(savedInstanceState);

 

setContentView(R.layout.activity_main);

 

 

SharedPreferences sharedPreferences = getSharedPreferences("sharedPreferences",MODE_PRIVATE);

 

SharedPreferences.Editor sharedPreferencesEditor = sharedPreferences.edit();

 

sharedPreferencesEditor.putString("name", "오버로드"); //데이터 저장하기

 

sharedPreferencesEditor.commit();

 

 

String who = sharedPreferences.getString("name", "" ); //데이터 가져오기

 

Toast.makeText(Main.this, who, Toast.LENGTH_SHORT).show(); //토스트하기

 

}

 

}

반응형