- SharedPreferences 사용하기 -
안드로이드에서
아이디 저장 / 자동 로그인 등 처리와
간단한 값들을 저장하기위해 DB에 넣을필요없이
SharedPreferences를 사용하여 가볍게 저장하는 방법이 있다.
- 값 저장하기 -
사용하는 방법에 대해 알아보자면
SharedPreferences는 안드로이드내에서 제공하고있으며
Activity내에서 사용하면 그냥 getSharedPreferences를 통해 접근이 가능하며
그 외에는 Context를 통해서 접근할 수 있다.
SharedPreferences pref = getSharedPreferences("mine",MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
직접 정해준 'mine' 이라는 이름으로 파일이 저장되며
저렇게 Editor를 사용해 값을 지정해 줄 수 있다.
넣을수 있는 값의 종류는 다음과 같으며
.put 을 해주는 방법은 key 와 value 값으로 이루어져 있다.
여기서 중요한게 있는데 값을 넣어주고나서는
꼭 commit() 을 해줘야한다는 점이다.
SharedPreferences pref = getSharedPreferences("mine",MODE_PRIVATE);
SharedPreferences.Editor editor = pref.edit();
editor.putString("record", "record");
editor.commit();
- 값 가져오기 -
값을 저장했으니 이제 가져오는 방법에 대해 알아보자
그냥 get해서 가져오기만 하면 끝이다.
SharedPreferences pref = getSharedPreferences("mine",MODE_PRIVATE);
String prefData = pref.getString("record","");
get 뒤에 key값과 defaultValue 두가지를 써야하는데
key 값이 null일 경우 반환할 defaultValue 값을 지정해주는 것이다.
- 파일 저장 경로 -
위의 SharedPreferences를 사용하게 되면 로컬 즉 단말기에 파일로 저장이 되는데
정해진 루트에 .xml 파일로 저장된다
파일 경로는 다음과 같다.
/data/data/{packageName}/shared_prefs/{keyName}.xml
주의할 점은 어플리케이션이 지워지거나
해당 경로의 데이터를 지우게되면
당연히 SharedPreferences로 저장한 데이터가 전부 날라간다.
댓글