비개발자가 Firebase 무료 요금제로 업무용 앱 만들며 막힌 7가지

1편과 2편에서 Claude와 3시간 만에 현장 긴급출동 앱을 만든 이야기를 했다. 이번 글은 그 과정에서 실제로 막혔던 것들의 기록이다.

나는 개발자가 아니다. 코드는 AI가 짰지만, 서버 설정이나 키 발급처럼 내 계정으로 직접 해야 하는 일은 내가 했다. 막힌 곳은 대부분 코드가 아니라 이런 설정 화면이었다. 비슷한 걸 만들어 보려는 사람이라면 미리 알아 두면 시간을 꽤 아낄 수 있다.

1. 개발 도구 다운로드가 막혔다 — 허용 주소 추가

Claude가 작업하는 환경은 보안 때문에 인터넷 접속이 제한되어 있다. 그래서 안드로이드 앱을 만드는 데 필요한 도구를 내려받다가 막혔다. 해결 방법은 claude.ai의 설정 → 기능 (Settings → Capabilities)에서 접속을 허용할 주소를 추가하는 것이었다. 구글과 메이븐 저장소 주소를 넣었다.

그런데 메이븐 저장소가 접속 횟수 초과로 또 막혔다. 이때는 구글이 운영하는 미러 주소를 추가로 허용해서 해결했다. 대시보드를 Firebase에 올릴 때도 허용할 주소가 몇 개 더 필요했다.

2. Firebase 메뉴 이름이 안내와 달랐다

서버는 구글의 Firebase를 썼다. 프로젝트를 만들고 데이터베이스(Firestore)를 서울 리전, 프로덕션 모드로 만들었다. 그런데 화면 메뉴 이름이 바뀌어 있어서 Firestore 위치를 고르는 곳을 한참 찾았다.

이럴 때는 지금 화면에 보이는 메뉴 이름을 그대로 AI에게 알려 주면, 그 화면 기준으로 다시 안내받을 수 있다. 메뉴 이름은 자주 바뀌니, 안내와 다르다고 당황할 필요는 없다.

Firebase 콘솔 프로젝트 개요 화면 — 데이터베이스 및 스토리지 메뉴 안의 Firestore
Firebase 콘솔. 메뉴 이름이 안내와 달라 Firestore 위치를 한참 찾았다

3. 앱 등록 화면에 SHA-1 칸이 없었다

직원들이 구글 계정으로 로그인하게 하려면, 앱의 서명 지문(SHA-1)을 Firebase에 등록해야 한다. 그런데 안드로이드 앱 등록 화면에는 SHA-1을 넣는 칸이 보이지 않았다.

방법은 일단 앱 등록을 끝낸 뒤, 프로젝트 설정 (Project settings)으로 들어가 해당 앱에 지문을 추가하는 것이었다. 그다음 구글 로그인을 켜 주면 된다.

Firebase에 안드로이드 앱 추가 화면 — 앱 등록, 구성 파일 다운로드 단계
안드로이드 앱 추가 화면. SHA-1은 등록 후 프로젝트 설정에서 추가했다

4. 보안 규칙과 관리자 등록 — 단계별로 다시 물어봤다

누가 어떤 데이터를 보고 쓸 수 있는지 정하는 보안 규칙을 붙여 넣고, 관리자 계정을 따로 등록해야 했다. 처음 안내가 너무 압축되어 있어서 따라 하기 어려웠다. “아주 자세히, 한 단계씩”이라고 다시 요청하니 버튼 하나하나까지 풀어서 안내해 줬다. 모르는 건 모른다고 말하는 게 가장 빠르다.

직원 관리도 같은 원리다. 직원이 구글 계정으로 처음 로그인하면 바로 쓸 수 있는 게 아니라, 관리자가 대시보드에서 승인해야 위치 공유와 공지 수신이 된다. 아무나 앱을 깔아서 들어오는 걸 막기 위해서다.

직원 관리 화면 — 처음 로그인한 직원 승인, 팀·전화번호·차량번호 입력
직원 관리 화면. 처음 로그인한 직원은 관리자가 승인해야 쓸 수 있다 (직원 정보는 가림)

5. 푸시 알림은 카드 등록이 필요했다 — 무료로 버티는 방법을 골랐다

근무가 끝난 직원에게도 초긴급 공지를 보내려면, 구글 푸시 알림을 서버에서 자동으로 보내는 방법이 일반적이다. 그런데 이렇게 하려면 Firebase의 유료 요금제(Blaze)로 바꾸고 카드를 등록해야 했다.

그래서 다른 방법을 택했다. 앱이 휴대폰에서 상시 대기하면서 공지를 직접 받는 방식이다. 돈이 들지 않는 대신, 휴대폰이 앱을 꺼 버리지 않도록 설정이 필요하다. 그래서 앱 첫 화면에 “휴대폰 설정 점검” 목록을 넣었다. 위치 ‘항상 허용’, 알림 허용, 잠금화면 전체화면 알림 같은 항목을 하나씩 확인하고 바로 설정 화면으로 갈 수 있다. 삼성폰은 절전 예외 설정도 필요하다.

직원 앱 홈 — 근무 상태와 휴대폰 설정 점검 목록
앱 첫 화면의 휴대폰 설정 점검. 모두 완료돼야 화면을 꺼도 위치와 공지가 끊기지 않는다

6. 무료 요금제의 한도에 맞춰 설계했다

Firebase 무료(Spark) 요금제의 데이터베이스는 저장 용량 1GB, 하루 저장 2만 건, 읽기 5만 건까지다. 직원들이 1분마다 위치를 보내면 생각보다 빨리 한도에 닿는다. 그래서 이렇게 줄였다.

  • 근무 중 위치는 1분 간격, 움직이지 않고 멈춰 있으면 3분 간격
  • 동선은 10분 단위로 묶어서 한 번에 저장
  • 직원 30명의 동선을 1년 보관해도 약 300MB로, 무료 용량 안에 들어감

설치 파일(APK)을 올리는 것도 무료 요금제에서 막혔다. 앱이 스스로 새 버전을 확인하고 업데이트하게 하려면 서버에 설치 파일을 올려야 하는데, 무료 요금제가 .apk 파일 업로드를 막았다. 결국 파일 이름을 바꿔 올리는 방식으로 해결했다.

7. 사소하지만 시간을 잡아먹은 것들

  • Firebase 배포 로그인: 세 번 시도한 끝에 성공했다. 작업 환경 쪽 문제였고 Claude가 원인을 찾아 고쳤다.
  • 장애 종료 버튼이 안 눌림: 두 번 누르는 사이에 화면이 새로 그려지면서 풀리던 문제였다. 말하자 바로 고쳐졌다.
  • 새 기능이 안 보임: 브라우저에 예전 화면이 남아 있던 것이었다. 강력 새로고침(Ctrl+Shift+R)으로 해결했다.
  • 지도가 부실함: 처음 지도는 부실했다. 카카오 개발자 사이트에서 앱을 만들고 키를 발급받아 카카오맵으로 바꾸니 번지까지 정확하게 찾아졌다.

정리 — 막히면 화면을 보여 주고, 모르면 모른다고 말하기

돌아보면 막혔던 곳은 대부분 내 계정으로 해야 하는 설정이었다. AI가 대신 눌러 줄 수 없는 부분이다. 이럴 때 가장 효과적이었던 건 두 가지다. 지금 화면에 보이는 그대로 알려 주기, 그리고 이해가 안 되면 “더 자세히, 한 단계씩”이라고 다시 요청하기.

그리고 돈 문제는 미리 정해 두는 게 좋다. 유료 기능을 쓰면 편한 부분이 분명 있지만, 우리는 우선 무료 안에서 버티는 설계를 택했다. 쓰다 보면 정말 필요한 유료 기능이 무엇인지 보일 것이다.

자주 묻는 질문

Q. Firebase 무료 요금제로 업무용 앱을 운영할 수 있나요?

우리 규모에서는 저장 횟수와 용량을 아끼는 설계를 하면 무료 안에서 운영할 수 있다고 판단했다. 다만 실제 사용량은 배포 후에 지켜봐야 한다.

Q. 앱을 만들려면 개발 도구를 내 컴퓨터에 설치해야 하나요?

나는 설치하지 않았다. Claude가 작업 환경에서 앱을 만들고 설치 파일을 전달해 줬다. 대신 그 환경에서 필요한 주소를 허용해 주는 설정은 내가 해야 했다.

Q. 구글 로그인을 꼭 써야 하나요?

안드로이드 폰을 쓰는 직원이라면 모두 구글 계정이 있어서 따로 아이디를 만들 필요가 없다. 누가 보낸 위치인지도 확실해진다. 처음 로그인한 사람은 관리자 승인을 거치게 했다.

참고 자료


오늘도 한걸음 👣
gujaeun.kr

댓글 남기기