- 간단한 값 저장에 DB를 사용하기는 복잡해서 사용한다.
- 보통 앱 설정 값이나 자동 로그인 여부 등 간단한 값을 저장하기 위해 사용한다.
- data/data/[패키지 이름]/shared_prefs 폴더에 xml 형태로 저장한다.
- 일반 단말기에서 SharedPreferences로 저장한 파일을 열어볼 수는 없지만 단말기를 루팅하거나 슈퍼 유저 권한을 얻었을 경우 해당 xml에 접근이 가능하므로 보안상 안전을 위해 노출되어도 되는 일반 데이터만 저장하는 게 좋다.
- onResume(), onPause() 함수에서 데이터를 저장하거나 불러올 때 용이하게 사용 가능하다.
※ onPause() : 다른 Activity를 시작하려고 할 때 호출되는 데 이 곳에서는 저장되지 않은 데이터를 저장하거나 중요한 작업을 중지하는 기능을 수행해야 한다. 또한 onPause()가 리턴하지 않으면 다른 Activity가 시작되지 않으니 빨리 수행한 후 리턴해야 한다.
※ onResume() : 사용자에게 Activity가 보이기 시작하고 사용자와 상호작용하기 직전에 호출된다. 상태 복원을 위해 onPause()에서 저장한 데이터를 불러오는 기능을 수행해야 한다.
※ onDestroy() : Activity가 소멸되어 없어지기 전에 호출된다. isFinishing() 메서드를 이용하여 해당 Activity가 finish() 메서드 호출로 종료되었는지 시스템이 강제로 종료시켰는 지 알 수 있다.
'안드로이드 > 기본' 카테고리의 다른 글
안드로이드 mvp (0) | 2017.06.15 |
---|---|
안드로이드 mvc, mvp, mvvm (0) | 2017.06.09 |
action.Main, category.LAUNCHER (0) | 2017.06.04 |
메인 화면을 single_top, clear_top으로 하자 (0) | 2017.06.04 |
컨텍스트(Context) - getApplicationContext(), getApplication(), getContext() (0) | 2017.06.04 |