DevLog:-)

[안드로이드] SharedPreferences : 간편한 데이터 저장 및 관리 본문

안드로이드 스튜디오

[안드로이드] SharedPreferences : 간편한 데이터 저장 및 관리

hyeon200 2023. 6. 9. 02:21
반응형

 

 

 

안드로이드 앱을 구현하면서 액티비티 간  intent를 사용하지 않고

데이터를 공유할 수 있는 방법이 있을까 찾아보던 중 SharedPreferences을 알게 되었다.

코드 구현이 비교적 간단해서 적절히 사용하면 편리하게 코드를 짤 수 있을 것이다!

 

 

1.SharedPreferences란?

간단한 키-값 쌍을 저장하고 관리하기 위한 유용한 메커니즘이다.

SharedPreferences를 사용하면 앱 내에서 데이터를 영구적으로 저장하고 가져올 수 있다.

 

 

 

2.SharedPreferences 사용하기!

 

 

-SharedPreferences 객체 생성하기

SharedPreferences sharedPreferences = getSharedPreferences("my_preferences", Context.MODE_PRIVATE);
  • 첫 번째 매개변수("my_preferences"): SharedPreferences 파일의 이름
  • 두 번째 매개변수(Context.MODE_PRIVATE):  SharedPreferences의 접근 모드
  • +Context.MODE_PRIVATE: 해당 앱에서만 접근 가능한 모드

 

 

 

 

-데이터 저장하기

SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("key", "value"); // 키-값 쌍 저장
editor.apply(); // 변경 사항을 저장
  • SharedPreferences.Editor 객체를 사용하여 데이터를 편집
  • 'putString()' 메서드를 사용하여 키-값 쌍을 저장
  • 변경사항 저장을 위해 apply() 또는 commit() 메서드를 호출
  • +apply()는 비동기적으로 저장되며, commit()은 동기적으로 저장된다.

 

 

 

 

-데이터 불러오기

String value = sharedPreferences.getString("key", defaultValue); // 키에 해당하는 값 가져오기
  • getString() 메서드를 사용하여 키에 해당하는 값을 가져옴
  • 두 번째 매개변수(defaultValue): 키에 해당하는 값이 없을 경우 반환할 기본값을 지정

 

 

 

 

-데이터 삭제

SharedPreferences.Editor editor = sharedPreferences.edit();
editor.remove("key"); // 키에 해당하는 데이터 삭제
editor.apply(); // 변경 사항을 저장
  • remove() 메서드를 사용하여 키에 해당하는 데이터를 삭제
  • 변경 사항을 저장을 위해 apply() 또는 commit() 메서드를 호출

 

 

 

 

-전체 데이터 삭제

SharedPreferences.Editor editor = sharedPreferences.edit();
editor.clear(); // SharedPreferences 파일의 모든 데이터 삭제
editor.apply(); // 변경 사항을 저장
  • clear() 메서드를 사용하여 SharedPreferences 파일의 모든 데이터를 삭제
  • 변경 사항을 저장하기 위해 apply() 또는 commit() 메서드를 호출

 

 

 

 

 

SharedPreferences는 간단한 데이터 저장에 유용하지만, 복잡한 데이터 구조를 다루거나 대량의 데이터를 저장하는 용도로는 적합하지 않을 수 있음을 유의하자

반응형