00
Concept
구성 이해
OTA가 뭐고, 우리는 어떻게 구성했나
앱은 네이티브 껍데기(스토어에서 설치)와 그 안에서 도는 웹 번들(실제 화면·로직)로 나뉜다. OTA는 껍데기는 그대로 두고 웹 번들만 서버에서 내려받아 교체하는 방식이다. 우리는 Capgo 오픈소스 업데이터를 자체 서버(운영 Supabase)로 운영한다.
- 앱 쪽 업데이터
- 앱 실행 시 새 번들이 있는지 서버에 물어보고, 있으면 받아둔다
- 번들 저장소
- 운영 Supabase의
app-bundles공개 버킷 — 번들 zip과 최신 버전 정보(latest.json) - 갱신 판단 함수
app-updateEdge Function — 이 기기에 줄 업데이트가 있는지 판단해서 응답- 발행 스크립트
npm run ota:release한 줄로 빌드 → 업로드 → 최신 정보 갱신까지 수행