본문 바로가기

firebase

(3)
[안드로이드/Firebase] adb를 Android studio 터미널에 설정하기, adb 이용해 Firebase event 디버깅하기 Firebase analytics는 앱으로부터 입력받은 다양한 이벤트를 기반으로 사용자 분석을 돕는 유용한 툴이다. 다만 개발자가 지정한 이벤트가 의도한대로 올바르게 들어오는지에 대해서는 로컬에서 확인하기가 어려울 수 있다. 이를 위해 Firebase는 DebugView라는 기능을 제공한다. adb(Android Debug Bridge)를 이용해 원하는 디바이스를 Firebase Debug View에서 모니터링 할 수 있도록 설정하고 나면, 앱을 실행해 사용하는 중에 들어오는 이벤트를 실시간으로(물론 서버를 거치기 때문에 딜레이가 조금 있다.)확인이 가능하다. 그것도 아주 이쁘게. 그렇다면 우선 adb를 안드로이드 스튜디오에 설정하고, 다음 DebugView에서 기기를 보기 위한 명령어를 살펴보겠다. 1..
[Room] Room DB 및 Firebase RDB와의 Transaction 최적화하기 기존에 개발하던 서비스의 고질적인 문제는 다량의 데이터와의 상호작용시 시간이 상당히 오래 걸린다는 것이었다. Firebase RDB와의 통신에서의 속도 저하에 이어 Firebase RDB로부터 로드한 데이터를 Room에 집어넣는 과정에서의 2차 속도저하가 있었기 때문이었다. 하지만 여차저차 그동안의 서비스를 유지할 수 있던 점은, 다량의 데이터를 Query할 UI/UX가 없었기 때문이었다. 이제 신규 개발안에 따라 결론적으로 '진작에' 해결됬어야 할 문제와 일기토를 해야 될 상황에 이르렀다. 우선 기존의 로직 구조를 먼저 설명하고자 한다. Before Firebase RDB에서 타겟으로 하는 테이블의 Data를 addValueEventListener를 통해 요청한다. 요청을 통해 들어온 DataSnaps..
[안드로이드] 구글 플레이스토어 업로드시 발생하는 no properties to serialize found on class Exception 잡기 구글 플레이스토어에 앱 업데이트를 위해 알파버전을 업로드해 테스팅을 진행하고 있는데, 구글에서 테스트한 기기에서 발생한 것 이외에도 직접 업데이트를 진행했을 때 no properties to serialize found on class Exception 이 발생하면서 앱이 초기에 종료되는 현상이 있었다. 서치에다 수정을 반복해서(거의 반나절을) 오류를 잡을 수 있었는데 원인은 1. 번들이나 apk로 만들어질 때 릴리즈 버전에 적용되는 proguard rule 2. Firebase와 연관된 변수들이 private으로 적용됨 정도가 있었다. 1번의 경우 #firebase 관련 이슈 핸들링 위해 proguard rules 수정 -keep public class com.회사.entity.* -keepclassm..