[Kotlin] Android App Data save/load

Jinbro·2022년 1월 31일
0

Kotlin

목록 보기
4/5

Android App Data 저장/로드

optiondescription활용
Filefile 형태로 data 저장
Shared Preferencexml 형태로 Key - Value 쌍의 data 저장PreferenceFragment

File

  1. 내부 저장소 활용
  • App 전용 디렉토리 사용 (App 내에서만 접근 가능)
  • App 설치 시 생성, App 삭제 시 삭제
  • openFileIn(Out)put : App 내부 저장소 경로에 fileName으로 생성된 파일 출력 스트림 객체 반환
// save
openFileOutput(fileName, Context.MODE_PRIVATE).write(data.toByteArray())
// load
openFileInput(filename).reader().readText()
  1. 외부 저장소 활용
  • SD 카드
  • 외부 저장소 사용 권한, 존재 여부 예외처리 확인 필요
  • getAppDataFileFromExternalStorage() : 외부 저장 장치에 위치한 파일 객체 반환
// save
FileOutputStream(getAppDataFileFromExternalStorage(fileName)).write(data.toByteArray())
// load
FileInputStream(getAppDataFileFromExternalStorage(fileName)).reader().readText()

Shared Preference

  • getSharedPreferences() : 전달받은 이름으로 Preference 객체 반환
// Preference 객체 선언
val preference by lazy { getSharedPreferences("PreExActivity", Context.MODE_PRIVATE) }
// save
preference.edit().putString(nameFieldKey, nameField.text.toString()).apply()
// load
nameField.setText(preference.getString(nameFieldKey, ""))

참고

profile
자기 개발 기록 저장소

0개의 댓글