# Android FCM 설정 (goldenApp / goldenanalysisapp) 기존 **goldenApp** (`~/dev/goldenAnalysis/goldenApp`) 과 동일 Firebase 프로젝트를 사용합니다. ## 1. Firebase Console 1. [Firebase Console](https://console.firebase.google.com/) → 프로젝트 **goldenanalysisapp** 2. **앱 추가** → Android 3. 패키지 이름: `com.goldenchart.app` (Capacitor `applicationId` 와 동일) 4. `google-services.json` 다운로드 ## 2. 프로젝트에 배치 ```bash ./scripts/setup-android-fcm.sh ~/Downloads/google-services.json # 또는 cp ~/Downloads/google-services.json app/android/app/google-services.json ``` ## 3. 빌드 ```bash 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. 로그인 후 **설정 → FCM 푸시** ON 2. 알림 권한 허용 3. **테스트 발송** 버튼 4. 전략 시그널 발생 시 푸시 수신 ## goldenApp 과의 차이 | 항목 | goldenApp | GoldenChart (Capacitor) | |------|-----------|-------------------------| | 패키지 | `com.golden.app` | `com.goldenchart.app` | | FCM SDK | 직접 Firebase Messaging | `@capacitor/push-notifications` | | 토큰 등록 | `POST /api/fcm/token` | 동일 (`registerFcmToken`) | | 알림 채널 | `golden_alerts` | `goldenchart_trade_signals` | 로그인 사용자는 **userId** 기준으로 FCM 토큰을 조회하므로, 웹·모바일 deviceId 가 달라도 푸시를 받을 수 있습니다.