Files
goldenChart/app/android/FCM_SETUP.md
T
2026-05-28 20:48:28 +09:00

2.6 KiB

Android FCM 설정 (goldenApp / goldenanalysisapp)

기존 goldenApp (~/dev/goldenAnalysis/goldenApp) 과 동일 Firebase 프로젝트를 사용합니다.

1. Firebase Console

  1. Firebase Console → 프로젝트 goldenanalysisapp
  2. 앱 추가 → Android
  3. 패키지 이름: com.goldenchart.app (Capacitor applicationId 와 동일)
  4. google-services.json 다운로드

2. 프로젝트에 배치

# 권장: repo 루트 app/google-services.json (com.goldenchart.app 포함)
cp ~/Downloads/google-services.json app/google-services.json
./scripts/ensure-android-google-services.sh

# 또는 한 번에
./scripts/setup-android-fcm.sh ~/Downloads/google-services.json

빌드 시 ensure-android-google-services.shapp/google-services.json
app/android/app/google-services.json 으로 복사합니다. 이 파일이 없으면
알림 권한 허용 직후 PushNotifications.register() 에서 앱이 종료될 수 있습니다.

3. 빌드

npm run cap:sync
cd app/android && ./gradlew assembleRelease

google-services.json 이 없으면 Gradle 로그에
google-services plugin not applied 가 나오며 푸시가 동작하지 않습니다.

4. 서버 (exdev)

  • FIREBASE_ENABLED=true
  • firebase-service-account.json (goldenanalysisapp 서비스 계정)
  • 앱 설정에서 FCM 푸시 ON (fcm_push_enabled)

5. 앱에서 확인

  1. 2.4 이상 APK 설치 (google-services.json 포함 빌드 필수)
  2. 크래시가 반복되면 앱 삭제 후 재설치 (이전에 허용한 알림 권한 초기화)
  3. 로그인 → 설정 → FCM 푸시 ON
  4. 「알림 허용 · FCM 등록」 버튼 → 시스템 팝업에서 허용 (2초 후 등록)
  5. 테스트 발송 으로 확인

로그인·메인 진입 시에는 알림 권한을 절대 요청하지 않습니다 (2.3+).
FCM 푸시 토글 ON → 「알림 허용 · FCM 등록」 버튼을 눌렀을 때만 권한 팝업이 뜹니다.

goldenApp 과의 차이

항목 goldenApp GoldenChart (Capacitor)
패키지 com.golden.app com.goldenchart.app
FCM SDK 직접 Firebase Messaging 앱 내장 GoldenFcm 플러그인 (Capacitor Push 미사용)
토큰 등록 POST /api/fcm/token 동일 (registerFcmToken)
알림 채널 golden_alerts goldenchart_trade_signals

로그인 사용자는 userId 기준으로 FCM 토큰을 조회하므로, 웹·모바일 deviceId 가 달라도 푸시를 받을 수 있습니다.