달달한 스토리

728x90
반응형

 

당황스러운 일이 있었다.

 

예전부터 구글 파이어베이스를 통해 구글 애널리틱스의 연동하여,

 

사용자를 모니터링하고, 앱 코드 안에 있는 logEvent 기능으로 인한,

 

이벤트 내역을 확인하려 했는데..

 

이용자가... 0명...

 

 

으로 나와있다.

 

그럴리 없었다. 구글 플레이 콘솔은 하루 50명 ~ 100명 정도가 다운을 받는다는 기록이

 

세세히 나와있었기 때문에.. 불가능했다.

 

이유는 연동이 제대로 되지 않고 있었다는 소리였다..

 

예전에 테스트도 해봤었는데.. 무슨 일일까 서둘러 

 

문제법도 검색해보고, 고객센터에도 문의하였다.

 

그러면서 다른 문제점도 찾게 되었는데,

 

FireBase -> Latest Release로 들어가게 되면, 

 

파이어베이스에서 인식하는 나의 앱 버전이 나오게 되는데,

 

 

엥?? 내가 구글 플레이 콘솔에 배포한 앱은 3.8.0 버전이다..

 

뭔가 정말 잘못되었다.

 

아이폰 버전은 정상이었다.

 

혹시 SDK를 잘못 설치한 게 아닐까 하고 처음부터 다시 해보았는데,

 

문제가 없었다.

 

잘 설치되었기 때문이다.

 

여전히 저 버전은 갱신이 안되어 있었다.

 

혹시 몰라

 

DebugView를 사용해보았다.

 

 

디버그 뷰 사용법은 이러하다. 먼저 앱을 디버그로 실행하고,

 

터미널에 다음과 같이 입력해주면 된다 (window 기준 mac은 홈페이지에 상세히 나온다.)

 

 adb shell setprop debug.firebase.analytics.app "앱 패키지명"

 

("" 이거는 빼줘야 한다)

 

이렇게 입력하면 debugView가  연결되어 내가 코드 상에 입력해둔 logEvent가 실행되면,

 

이 debugView를 통해 나온다.

 

그런데.. 연결조차 되지 않는다.

 

디바이스 검색이 되질 않는 것이었다.

 

지웠다 다시 설치하고 했는데도 안된다...

 

이제 내가 해결했던 해결법을 보겠다.

 


Google과 FireBase 관련 SDK 업데이트해주기

 

관련 dependency를 업데이트를 해주자.

 

fireBase를 처음 설치할 때, 제공하는 SDK의 버전들을 전부 최신 버전으로 업데이트 해주자.

 

애널리틱스 데이터 스트림에서 SDK 설정 하기

 

이 방법은 내 앱이 애널리틱스와 잘 연결되어 있는지 확인하는 과정인데, 

 

보통 이 과정을 생략하고 파이어베이스를 통해 애널리틱스를 연동하는데,

 

한번 확인해보는 게 좋다. 방법은 다음과 같다.

 

 

프로젝트 개요 -> 프로젝트 설정을 누르고,

 

 

 

통합 탭에서 Google Analytics 박스가 있는데, 관리 버튼을 눌러준다.

 

그러면 "Google 애널리틱스에서 보기"라는 하이퍼링크가 있을 것이다.

 

클릭해준다.

 

 

그럼 아래 사진과 같이 데이터 스트림 탭으로 넘어갈 것이다.

 

(만약 안 넘어간다면 맨 아래 톱니바퀴(관리) 버튼을 누르고 들어가면 된다.)

 

 

이렇게 앱이 있다. 앱 탭을 클릭해주면

 

"앱 스트림 세부 정보" 창이 열린다.

 

반응형

 

그럼 여기서 "SDK 설정 안내"를 클릭해준다.

 

해당 과정을 순서대로 다시 진행해준다.

 

google-service.json도 혹시 몰라 다시 갱신해주었다.

 

FireBase SDK가 예제처럼 잘 추가되었는지 확인한다.

 

마지막으로

 

 

앱을 실행하여 설치 확인하기 과정이 완료되면,

 

정상적으로 앱이랑 연결이 잘되었다는 것을 알 수 있다.

 

연결하는 법은 FireBase와 연동된 앱을 실행하는 것이다(debug release 상관없음)

 

하지만, 

 

"앱이 Google 서버와 통신했는지 확인하는 중입니다. 앱을 제거했다가 다시 설치해야 할 수 있습니다."

 

라는 문구가 계속 뜨고, 연결이 안 되고, 무한 로딩이 되는 경우가 있다.

 

해결법은 다음과 같다.

 

하나도 빠짐없이 순서대로 진행해주자.

 

 

1. 매니페스트 analytics_collection_enabled true로 바꾸어주기

 

<meta-data
    android:name="firebase_analytics_collection_enabled"
    android:value="true" />

 

파이어베이스 처음 설치할 때 해당 설정을 진행했을 텐데, 이 값을 true로 바꾸어준다.

 

2. .gradle과 bulid 삭제

 

Project 단에서 Android를 Project로 변경해주자.

 

 

그러면 이렇게 두 주황색 폴더가 있는데,

 

둘 다 Delete 해주자. (그래 들을 실행하면 어차피 재생성된다.)

 

둘 다 삭제했다면,

 

 

이 버튼을 눌러서 다시 gradle을 sync 해주자.(다시 생성이 된다.) 

 

 

3. .gradle -> cache 데이터 삭제

 

c드라이브/사용자/. gradle/caches

 

안에 있는 캐시 데이터들을 모두 삭제해준다.

 

 

4. CleanProject -> RebuildProject -> Invalidate Caches..

 

국룰이다. Build탭에서 저 둘을 실행하고,

 

File탭에서 Invalidate Caches.. 를 실행해주자.

 

자 이제 마지막으로 다시 저 페이지를 열고, (로딩 중인 상태에서)

 

앱을 실행해 보자.

 

 

놀랍게도 통신에 성공이 된다고 뜬다.

 

나 같은 경우는 이렇게 통신이 정상작동이 되니, 

 

나머지 기능들이 정상적으로 돌아왔다..

 

아무래도 Google 서버와 통신이 잘 되지 않았었던 모양이다.

 

이 부분을 잘 체크를 했어야 했는데 말이다.

 

 

이제 최신 버전이 잘 갱신이 되고,

 

 

DebugView도 정상작동하는 것을 볼 수 있다.

 

 

이렇게 해결하고, 빠르게 새로 배포하였다..

 

힘든 하루였다..

728x90
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading