AI(Claude Code)로 Flutter 앱 만들고 Google Play에 출시하기까지 (4편) — 첫 수익과 LLM이 못 짚어준 사고 2건
첫 광고 수익 40원. 그리고 며칠 뒤에 사고 두 개가 터졌어요. 이번 편은 그 이야기입니다.
AdMob 연동 자체는 LLM으로 금방 끝났어요
AdMob 콘솔에서 앱 등록 → 광고 단위(배너) 생성. 두 개의 ID를 받게 돼요.
- 앱 ID:
AndroidManifest.xml에 넣습니다 - 배너 광고 단위 ID: 앱 코드 상수로 관리
Claude에게 "Flutter에서 google_mobile_ads 패키지로 배너 광고 붙이는 법"이라고 물으니 코드 예시 즉시 제공. 그대로 붙이진 않고 프로젝트 구조에 맞게 손봤지만 초안 시간이 크게 줄었어요.
필수인데 놓치기 딱 좋은 것: app-ads.txt
개발자 웹사이트 루트에 app-ads.txt 파일을 게시해야 해요. 없으면 광고 게재가 제한됩니다. Claude가 사전에 짚어주긴 했는데, "웹사이트 뭐 넣을 때 같이 하면 되지"라고 미뤄뒀다가 놓칠 뻔했어요. 초반에 확실히 챙기는 게 안전해요.
첫 수익 확인
출시 며칠 뒤 AdMob 대시보드:
| 지표 | 값 |
|---|---|
| 오늘 수입 | $0.03 (약 40원) |
| 이번 달 누적 | $0.07 |
| 노출수 | 24회 |
| 요청수 | 26회 |
| 일치율 | 100% |
| eCPM | $1.17 (1000회 노출당 예상 수익) |
40원짜리 첫 수익. 이상하게 뿌듯했어요.
주의: 본인 폰에서 광고 클릭은 절대 금지. AdMob 정책상 계정 정지 사유입니다. 궁금해도 참으세요.
사고 1: 개인 휴대폰 번호가 앱 페이지에 노출
출시 후 앱 페이지를 확인하다가 등에 땀이 났어요. 개발자 소개 섹션에 개인 휴대폰 번호가 그대로 노출되어 있었어요.
원인은 조직 계정 투명성 정책 — 소비자 보호 목적으로 연락처 공개가 의무예요. 삭제 불가, 변경만 가능.
출시 준비 때 Claude와 Gemini 양쪽에 이 정책을 미리 안내받지 못했어요. 양쪽 LLM 공통으로 놓친 항목. 학습 데이터 시점 이후에 강화된 정책이라 그런 것 같아요.
해결
- 별도 알뜰유심 개통 → 업무용 번호로 교체
- Play Console → 개발자 프로필 → 전화번호 변경 → 인증
- 스토어 반영까지 24~48시간 소요
교훈: 출시 후에 반드시 실제 스토어 listing을 육안으로 확인하세요. 이건 LLM이 대신 못 봅니다.
사고 2: Gemini API 크레딧 고갈 (제일 아이러니한 사고)
출시 후 얼마 안 지나서 지인이 써보다가 알려줬어요. "앱이 갑자기 작동을 안 한다"고. logcat 확인:
Your prepayment credits are depleted.
Please go to AI Studio at https://ai.studio/projects
여기서 진짜 놀랐어요. Gemini API는 일반 GCP 빌링과 완전히 별개 시스템이었어요.
- GCP 결제: 정상 ✓ (월 ₩17 청구)
- AI Studio 크레딧: 미설정 ✗ → 무료 한도 초과 시 자동 차단
Claude에게 Gemini API 붙이는 법을 처음 물었을 때, 이 이중 결제 구조가 미리 안내되지 않았어요. Gemini API 자체를 Claude가 소개해준 상황인데도, 그 결제 구조까지는 학습이 부족했던 것 같아요. LLM한테 LLM API의 결제 함정을 안내받지 못한 아이러니.
대응
- AI Studio → 결제 → Cloud Prepay ₩25,000 결제
- 자동 충전 ON 설정 (잔액 ₩10,000 미만 시 자동 갱신)
- 크레딧 1년 유효, 미사용분 소멸 (환불 불가)
제 앱의 월 사용량은 ₩15 수준이라 ₩25,000은 사실 넘치는 금액이에요. 미사용분이 아까우면 같은 프로젝트에 다른 앱을 만들거나, 개인용도로 API를 나눠 쓰면 됩니다.
AI(LLM) 협업 총평
| LLM이 잘한 것 | LLM이 못한 것 |
|---|---|
| 코드 초안, 에러 진단, 문서 정리 | 정책 변화 사전 안내 (특히 최근에 강화된 것) |
| 트레이드오프 정리, 대안 나열 | "당신 상황에서 지금 확인하라"는 실전 감각 |
| 반복 삽질 압축 | 학습 데이터에 없는 최근 함정 |
AI(LLM)는 강력한 협업 파트너지만 만능은 아니에요. 배포 후 실제 스토어 페이지 확인이나 결제 시스템 이중 구조 같은 부분은 사람이 직접 챙겨야 합니다.
시리즈 마무리
- 1편: 개인 vs 사업자 선택
- 2편: DUNS 발급 (반려 → 재신청)
- 3편: 멀티 LLM 협업으로 앱 심사 재제출
- 4편: 첫 수익과 사고 2건 (현재)
첫 수익 40원 + 사고 2건 = 진짜 실전. 다음 앱은 이 체크리스트 위에서 시작합니다.
이 시리즈의 결론은 이 한 문장으로 정리돼요.
"LLM이 다 해준다"가 아니라, "LLM과 어떻게 협업하느냐가 1인 개발자의 생산성 격차를 만든다."
이 시리즈에서 다루는 앱이 궁금하시면
👉 찰칵분리수거 Google Play에서 받기
댓글
댓글 쓰기