GoldenChart Mobile App
Capacitor + React hybrid app for virtual trading, strategy editor, notifications, and settings.
Setup
# From repo root
npm install
npm run dev:app
Native build
npm run build:app
npm run cap:sync
npm run cap:android # or cap:ios
exdev.co.kr APK 배포
소스는 git push origin main (Jenkins). APK만 로컬 빌드 후 업로드:
./scripts/upload-android-apk.sh --build --version 1.0.0
app/.env 예: VITE_API_BASE_URL=https://stock.exdev.co.kr/api
자세한 내용: data/mobile-releases/README.md
Environment
Copy .env.example to .env and set VITE_API_BASE_URL.
로그인 시 "Failed to fetch" / "서버 응답이 느립니다"
- API는
https://stock.exdev.co.kr/api만 사용 (https://stock.exdev.co.kr은 443 미개방). - exdev 로그인은 10~30초 걸릴 수 있음 — 2분 타임아웃까지 대기.
- APK는
app/.env의VITE_API_BASE_URL이 빌드에 포함되어야 함. androidScheme은http.CapacitorHttp는 비활성(로그인 fetch 안정화).- 설정에
localhost·https://API가 저장돼 있으면 앱 시작 시 제거·http로 교정.
FCM (Firebase)
- Android:
app/android/app/google-services.json— FCM_SETUP.md 참고
goldenApp(goldenanalysisapp)과 동일 프로젝트, 패키지com.goldenchart.app등록 필요 - 설정:
./scripts/setup-android-fcm.sh [다운로드한 json 경로] - iOS:
ios/App/GoogleService-Info.plist+ Push Notifications capability - Backend:
FIREBASE_ENABLED=true+firebase-service-account.json - 앱: 로그인 후 설정에서 FCM 푸시 ON + 알림 권한 허용
Structure
src/screens/— mobile UI (virtual, strategy, notifications, settings)../packages/shared/— API client + Capacitor storage../frontend/src/— shared business logic (hooks, utils) via@frontendalias