마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

플레이스토어 로컬DB 버전 관리 질문합니다

0 추천

 현재 로컬DB를 쓰고 있는데 (Room)

assets에 db파일을 넣어서 배포하고 있습니다.

 근데 만약 업데이트를 통해 db파일에 내용이 바뀔경우, 자잘한 내용이 바뀌면 onUpgrade() 같이(Room은 Migration) DB파일의 버전에 따라 코드 내에서 내용을 수정 해 주면 되는데,

 만약 대규모 데이터가 바뀌어서 코드 상으로 하기엔 무리가 올 경우, assets에 새로 넣은 DB파일을 기존의 DB파일로 덮어 쓰고 싶습니다.

 즉 제 질문은, assets의 db파일을 필드 같은거 안건드리고 데이터만 수정 한 뒤(대규모), 사용자가 플레이스토어 업데이트를 하게 되면 assets의 db파일은 바뀌었어도 실제 사용자 앱의 /databases/db파일 은 새로 덮어 써 주어야 할겁니다.

 덮어 써주는 거야 어렵지 않지만, 사용자가 앱을 매번 실행할 때 마다 덮어 써주면 낭비가 발생하므로, 앱이 업데이트가 되었다는 것을 감지해서 단 한 번만 덮어 써주게 하고 싶습니다.

 

 혹시 로컬db 배포 경험이 있으시다면 조언 부탁드립니다ㅠㅠ

 

베어헌터 (270 포인트) 님이 2019년 5월 4일 질문
처음 시작 시 SharedPreference 같은데서,
app 버젼 정보를 읽어들여, app 버젼이  없거나 이전버젼일 때 DB를 덮어씌우고
app 버젼 정보를  SharedPreference 에  저장해 주시면 됩니다.
와 sharedPreference로 앱 첫 실행을 판별 할 수도 있고, 플레이스토어 업데이트를 해도 전에 저장한 정보를 불러올 수 있군요! 정말 좋은 거 알아갑니다ㅠㅠ!

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...