관리 메뉴

나만을 위한 블로그

[Android] 파이어베이스 연동 시 '앱을 실행하여 설치 확인'이 진행되지않는 에러 해결 본문

Android

[Android] 파이어베이스 연동 시 '앱을 실행하여 설치 확인'이 진행되지않는 에러 해결

참깨빵위에참깨빵_ 2020. 5. 25. 18:03
728x90
반응형

FCM을 써야 할 일이 있어서 앱에 파이어베이스를 연동시키려는데, 앱에 파이어베이스를 추가하는 과정 중 4번인 앱을 실행하여 설치 확인 란에서 빌어먹을 프로그레스 바가 사라지지 않고 계속 회전한다.

몇 시간을 냅둬도 보고 앱을 삭제했다 다시 깔기를 몇 번을 해봐도 제자리 걸음이었다.

그래서 해결책을 찾아보다가 내가 삽질하고 있던 걸 깨달았다. 파이어베이스를 연동하려면 밑준비가 좀 필요했다.

 

 

1. 패키지명이 com.example.XXX로 돼 있는 경우 죽었다 깨어나도 안된다. 패키지명을 바꿔야 한다

 

 

안드로이드 스튜디오를 처음 설치할 때 보통은 패키지명 중간에 example이 설정된 경우가 많을 것이다.

이 상태로 파이어베이스를 연동하려 하면 안된다. 배포가 안된다는 소문이 있다.

그럼 저 중간의 example을 바꿔주면 된다. 어떻게 바꾸나?

 

그 전에 캐시 문제일 수도 있으니 File -> Invalidate Caches / Restart 버튼을 눌러서 캐시들을 지우고 다시 앱을 빌드해보자.

그래도 안된다면 아래를 따라가면서 시도해보자.

 

먼저 안드로이드 스튜디오에 들어가서 왼쪽의 프로젝트 뷰어 부분의 위를 보면 톱니바퀴를 누른다.

내 경우는 옵션메뉴 버튼을 눌러야 보였다.

 

 

마우스가 가리키고 있는 Compact Middle Packages를 보면 체크된 상태일 것이다. 한번 더 클릭해서 체크 상태를 해제한다.

그러면 com.example.XXX 패키지 안에 다 들어있던 것이 이렇게 바뀐다.

 

이 상태에서 com 밑의 example 패키지를 클릭해서 선택한다. 사진에선 vocabulary라 돼 있지만 원래는 example이었던 것이다.

클릭했다면 Alt + Shift + R을 누른다. 이 단축키는 패키지를 우클릭하면 나오는 메뉴에서 Refactor 탭 안에 있는 Rename 항목의 단축키다. 이걸 누르면 파일명이나 패키지명을 바꿀 수 있다.

이걸 누르면 이런 경고 화면이 나온다.

 

 

무시하고 제일 왼쪽의 RENAME PACKAGE를 누른다.

그러면 텍스트 박스가 있는 창이 하나 뜬다. 밑에 체크할 수 있는 것도 있는데 건드리지 말고 바꿀 이름을 입력해준다.

 

 

그 다음 REFACTOR를 누른다. 밑의 로그캣 부분에 DO REFACTOR가 나온다면 그 버튼을 눌러서 실행해주자.

여기서 어떤 파일에서 막힌다고 에러가 뜰 수 있다. 레트로핏을 쓴다면 Call 객체 생성 시 모델 클래스를 호출하는데, 이 때 프로젝트 경로를 써서 호출하는 부분이 있다.

난 저 경로를 써준 적 없지만(애초에 쓸 일이 없다) 안스가 모델 클래스를 참조하기 위해서 자동으로 입력하는 건가 보다. 바꾸기 전의 이름이라 안스가 '여기는 니가 바꿔' 이러는 것 같다. 아무튼 바꾸고 싶은 이름으로 전부 바꿔주자.

여기까지 해도 안 바뀐 부분이 있을 수 있다. 그 부분은 RENAME DIRECTORY를 눌러서 바꿀 프로젝트 이름을 넣어서 바꿔주면 된다.

example이 붙어있는 폴더명은 다 바꿔주겠다는 생각으로 바꿔주면 된다.

 

다음은 매니페스트와 앱 수준 gradle 파일을 확인해야 한다.

매니페스트는 자동으로 바꿔주지만 만에 하나란 것도 있으니 확인해보자. application 태그 안의 name 속성 부분을 보면 된다.

다음은 앱 수준 gradle 파일이다. 여기선 android 중괄호 안의 defaultConfig 중괄호 안에 있는 applicationId 오른쪽을 확인하면 된다.

 

 

다 바뀐 걸 확인했다면 핸드폰에 앱을 빌드하자. 그 다음 인내심을 갖고 한 3분 정도 액티비티들을 이리저리 돌아다니다 보면 드디어 앱에 파이버베이스가 제대로 연동됐다는 알림이 나오고 "콘솔로 이동" 버튼이 활성화된다.

이걸로 파이어베이스 연동은 끝이다. 푸시 알림이든 채팅이든 원하는 걸 써서 앱을 꾸며보자.

반응형
Comments