안드로이드

앱 업데이트 알림 실시간으로 강제 통보하기

밤가시 2020. 9. 28. 16:24

앱 업데이트 알림 실시간으로 강제 통보하기

Firebase 플랫폼은 별도 서버 구축없이 강력한 서비스를 제공해 줄 수 있는 아주 유용한 플랫폼입니다.

앱 개발을 시작한지 얼마되지는 않았지만, 서비스를 위한 DB 구성이나, 파일서버 등이 없어도 바로 앱 개발에 집중할 수 있게 해주기 때문에 참 고마운 서비스입니다.

 

특히 Realtime Database는 서비스명 그대로 실시간으로 데이터의 변경 사항을 클라이언트에게 전달해 줄수 있어, 채팅 서비스 같은 곳에 아주 유용하게 사용될 수 있습니다.

 

간단하게 앱 업데이트 알림을 실시간으로 클라이언트에게 통보해 줄 수 있는 방법을 설명합니다.

 

1. Firebase 프로젝트 생성

 - 프로젝트 생성 시 주의할 점은 기본 GCP 리소스 위치를 "asia-northeast3"으로 설정하면 서울리전에서 데이터가 관리되기 때문에 좀더 빠른 서비스를 제공할 수 있습니다.

 -. realtime database 사용 시 GCP 리소스 위치를 어디로 할 것인지 물어보는데, 한번 설정하면 변경이 불가능하니 신중하게 결정하여야 합니다.

 

2. 버전 데이터 생성

 -. 아래와 같이 버전 관리를 위해 realtime database 데이터 탭에서 데이터를 생성합니다.

3. 앱 업데이트 로직 구현

 -. 아래와 같이 realtime database의 변경사항을 실시간으로 전달 받을 수 있도록 addChildEventListener에서 onChildAdded(), onChildChanged() 메쏘드 정도만 구현합니다.

 

업데이트 여부에 대한 체크는 스트링을 숫자로 변환한 후 realtime database에 저장된 버전이 현재버전보다 크면 Dialog 를 띄워주면 됩니다.

이제 realtime database 콘솔에서 버전을 올려보면 실행중인 상태에서 업데이트 Dialog가 뜨는 것을 볼 수 있습니다.

앱 재시작시에도 물론 같은 결과를 볼 수 있습니다.