상세 컨텐츠

본문 제목

앱에 데이터를 저장하는 방법

공부/안드로이드

by dofury 2023. 2. 19. 00:48

본문

728x90

어플을 제작하는 과정에서 앱을 종료해도 데이터가 사라지지 않는 것이 필요하였다.

그래서 이번에 어떤 방법으로 가능한지 공부해보기로 했다.

 

1. Preferences를 통한 데이터 저장(환경변수 저장)

보통 앱 정보에 들어가서 데이터 삭제를 해본 경험이 있을 것이다.

그러한 경우에는 Preferences를 통해 데이터를 저장한 경우이다.

간단한 가벼운 데이터를 저장하는데 경우에 사용하면 좋다.

 

Preferences는 Map 구조의 방식으로 데이터를 저장하기 떄문에 key(String)를 통해 매칭되는 데이터를 관리한다.

이때 데이터는 기본 자료형(Int,String,Boolean)등을 지원한다.

 

2. DB를 통한 데이터 저장

앱 제작을 할 떄 1번을 통해 데이터dto가 담긴 리스트를 json으로 변환 후 string으로 저장하는 방법을 사용했었는데

멘토링하는 선배님께서 데이터가 무거워 지면 2번을 통해 하는 것이 효율적이라고 추천해주셔셔 사용해보게 되었다.

 

SQLite를 사용해서 구현을 했었는데 MY SQL과 다르지 않은 축소 버전 느낌 이였다.

데이터는 .db파일로 저장되게 되며 SQL문을 통해 데이터 관리를 할 수 있다.

이 경우에는 교체 가능한 데이터가 있다면 불러오기 기능을 만들때 사용하기 좋다고 생각했다.

 

3. (내부, 외부)에 파일형태로 저장

스마트폰 디바이스 내부 저장공간이나 외부 저장공간에 파일의 형태로 데이터를 저장하는 것이다.

 

내부의 경우에는 앱을 삭제할시 데이터가 사라지나 않는다.

또한 default 값으로 다른 앱은 접근할 수 없고, 본인은 파일에 접근 권한이 필요하지 않다.

 

외부의 경우에는 앱을 삭제해도 데이터가 사라지지 않는다.

또한 다른 앱도 접근할수 있으며, 본인이라도 파일에 접근할 떄 접근 권한이 필요하다.

 

4. 인터넷 통신을 통한 데이터 저장

데이터를 보관할 수 있는 백엔드 서버가 있다면 통신을 통하여 데이터를 저장하는 방식이다.

 

이 경우에는 Google 에서 지원하는 Firebase를 사용하면 백엔드를 직접 구축하지 않아도 사용할 수 있기에

필요한 경우 사용하면 좋을 것 같다.

 

728x90

관련글 더보기

댓글 영역