본문 바로가기

개발/안드로이드 소스분석

[안드로이드]apiDemos파해치기 5. App - persistent State

2011/06/20 - [안드로이드/안드로이드 소스분석] - [안드로이드]apiDemos파해치기 4. App - forwarding
이번엔 persistent State에 관한 설명입니다.
이는 Web에서의 cookie와 비슷합니다.

전에 책에서 preference 에 대해서 xml로 만들어 데이터를 보관한다고 들었던거같은데 어쨋든 소스를 보면

이번에도 핵심부분만 보겠습니다.
PersistentState.java - onResume()


SharedPreferences prefs = getPreferences(0); 
preference의 선언부분입니다. 

preference를 사용할때에 위에서 보듯 getInt인지 getString인지를 구분해주어야 합니다. 
getPreferences(0) 에 들어가는 0은 Mode에 해당하는 것으로 기본적으로는 MODE_PRIVATE을
사용하며 추가로 MODE_WORLD_READABLE,MODE_WORLD_WRITEABLE등을 사용합니다.

http://developer.android.com/reference/android/content/SharedPreferences.html 

여기까지의 내용은 preference에서 저장된 값을 불러오는 부분이었고 이제 값을 넣는 부분을 보겠습니다.
PersistentState.java - onPause()


SharedPreferences.Editor editor = getPreferences(0).edit();
값을 넣을때에는 editor를 선언해야합니다.
그리고 중요한게 commit()을 꼭 실행해줘야 넣은 값들이 적용이 됩니다.

2011/06/16 - [안드로이드/안드로이드 소스분석] - [안드로이드]apiDemos파해치기 1. App - Activity
그리고 전에 설명했던 Activity의 생명주기와 관련되서
onCreate, onResume, onStart, onDestroy 등도 알아두시면 좋습니다.