Kotlin 앱만들기 study #5 Shared Performance

Avocado·2020년 10월 23일
0

onCreate -> 초기화 하는 곳

MainActivity.kt

//onCreate 내부코드
//저장된 데이터를 로드하는 코드
loadData() // edit text 저장된 값을 setText

//이하 onCreate 밑에 작성(외부)
private fun loadData(){ // 클래스 내부 접근시에 private 
	val pref = getSharedPreferences(name: "pref", mode: 0)
    // 수정모드 필요없음
    et_hello.setText(pref.getString("name", "")) // 1번째 인자 : 저장할 당시 키값, 2번째 인자 : 키값에 데이터 없을경우 대체 값
}


private fun saveData() {
	// name, mode:저장옵션 (주로0)
	val pref = getSharedPreferences(name: "pref", mode: 0)
    val edit = pref.edit() // 수정모드
    // put: 주로 꾸러미에 담는 행위
    edit.putString("name", et_hello.text.toString()) // 1번째 인자 키값, 2번째 인자 실제 담아둘 값
    edit.apply() // 값 저장완료
}

//Ctrl+O 눌러서 Override 패널 오픈
override fun onDestroy() { //액티비티 종료시점이 다가올때 호출
	super.onDrestroy()
    
    //edit text 값을 저장
    saveData() // Alt+Enter 눌러서 Create function saveData()
}

생명주기

onCreate : 액티비티가 실행되었을때 최초로만 실행
onDestroy : 액티비티가 종료되는 시점

꼭 onDestroy에 saveDate 할 필요는 없음

Shared Preference 의 사용

주로 간단한 값을 저장할때 사용한다
스위치나 푸시 온오프 등
앱에 저장된 값이 삭제되더라도 크게 상관없는 값들을 저장하는 편
앱이 삭제되기 전 또는 데이터 저장공간 비우기를 제외하고는 유지되는 데이터
중요한 데이터는 저장을 권장하지 않는다

profile
후숙은 타이밍

0개의 댓글