버거킹®
바우처, 매장 찾기 콘텐츠, 캠페인 화면을 제공하는 레스토랑 앱.
- Google Play 설치 수
- 1,430만
- 스토어 평점
- 3.9
프로모션 시작 시 CI에서 주문 앱의 웹 레이어를 upload 하세요. 채널을 통해 시장이나 브랜드별로 라우팅하고, 파일럿 테스트를 거친 뒤 주문 기능에 문제가 생기면 즉시 롤백할 수 있습니다.
메뉴와 프로모션 변경 사항을 Capgo live updates로 시장별 라우팅하여 배포하세요.
14일 무제한 무료 체험. 카드 등록 불필요 14일 환불 보장. 언제든 취소 가능.
엔터프라이즈 솔루션이 필요하신가요? 팀과 상담하기
레스토랑 팀이 live update 채널을 추가하는 이유
한정 기간 이벤트가 특정 날짜에 시작됩니다. 그런데 출시 당일 아침, QA 팀이 앱 메뉴에 해당 항목이 나타나지 않는 것을 발견합니다.
수정 사항은 웹 레이어에 있지만, 스토어 배포 프로세스를 거쳐야 한다면 새로운 바이너리 빌드와 스토어 심사가 필요하며, 이는 보통 24~48시간, 길게는 그보다 훨씬 더 걸립니다.
심사가 승인된 후에도 고객이 직접 업데이트를 설치해야 하며, 매장 내 키오스크는 별도의 업데이트 경로가 필요합니다.
한정 기간 오퍼는 캠페인 시작과 동시에 시작되어야 합니다. 웹 레이어의 수정 사항이 스토어 출시를 기다려서는 안 됩니다.
동일한 codebase를 사용하더라도 브랜드 앱과 각 시장마다 서로 다른 메뉴, 프로모션, 법적 문구가 필요할 수 있습니다.
새로운 주문 플로우는 전체 배포 전에 특정 시장이나 소수의 테스트 기기에서 먼저 실행되어야 합니다.
점심시간에 주문 화면이 깨진다면, 스토어 출시를 기다리지 않고 즉시 복구할 수 있는 방법이 있어야 합니다.
사용 사례
새로운 바이너리 배포 없이 웹 레이어에서 주문 및 결제 화면을 수정하고 메뉴 표시 변경 사항을 즉시 반영하세요.
리워드 화면, 포인트 표시, 리워드 사용 플로우를 업데이트하세요. 백엔드에서 가져오는 포인트 값도 함께 변경됩니다.
매장 정보 화면, 픽업 안내, 커브사이드 옵션을 웹 레이어에서 업데이트하세요.
원하는 날짜에 맞춰 프로모션 배너, 오퍼 페이지, 캠페인 진입점을 출시하세요. 먼저 하나의 채널에서 파일럿 테스트를 진행할 수도 있습니다.
키오스크 앱은 하루 종일 켜져 있을 수 있습니다. 주기적인 체크 시점이나 키오스크가 대기 화면으로 돌아갈 때 업데이트를 적용하세요.
각자의 app ID, 채널, 릴리스 히스토리를 가진 모든 브랜드 앱을 하나의 Capgo 조직에서 관리하세요.
레스토랑 팀이 Capgo에서 얻는 것
Capgo에는 릴리스 스케줄러가 없습니다. CI가 머지 시, 수동 실행 시, 또는 런칭에 맞춰 설정한 cron 스케줄에 따라 업로드를 트리거합니다.
# .github/workflows/capgo-launch.yml
on:
workflow_dispatch:
schedule:
- cron: '0 6 15 11 *' # 06:00 UTC on 15 Nov, your launch time
jobs:
upload:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- run: npm ci && npm run build
- run: npx @capgo/cli@latest bundle upload --channel production --delta
env:
CAPGO_TOKEN: ${{ secrets.CAPGO_TOKEN }}
# one app ID per brand, same web codebase
npx @capgo/cli@latest bundle upload com.yourgroup.brand-a --channel production
npx @capgo/cli@latest bundle upload com.yourgroup.brand-b --channel production
각 브랜드 앱은 Capgo에서 고유한 채널과 릴리스 히스토리를 가진 별도의 앱입니다. 팀원별 역할을 설정해 하나의 조직에서 관리하세요.
시장, 지역 또는 파일럿 그룹별로 채널을 생성하세요. 앱은 self-assignment가 가능한 채널에 setChannel()로 참여하며, 팀은 override 기능을 통해 특정 기기를 고정할 수 있습니다.
// in the app, after the user or kiosk picks a market
import { CapacitorUpdater } from '@capgo/capacitor-updater'
await CapacitorUpdater.setChannel({ channel: 'market-uk' })
// capacitor.config.ts
CapacitorUpdater: { autoUpdate: 'onlyDownload' }
// kiosk app
let next
CapacitorUpdater.addListener('updateAvailable', ({ bundle }) => {
next = bundle
})
// when the kiosk is back on its idle screen
if (next) await CapacitorUpdater.set({ id: next.id })
기본 모드는 앱이 백그라운드로 전환될 때 업데이트를 적용하지만, 키오스크는 백그라운드로 전환되는 일이 거의 없습니다. 업데이트를 자동으로 다운로드하고 키오스크가 유휴 상태일 때 적용하세요.
작동 방식
한 시장에서 시작하는 프로모션의 일반적인 흐름입니다. 아래 명령어는 모두 Capgo CLI 문서에서 가져왔습니다.
앱이 사용자나 키오스크가 있는 시장의 채널에 스스로 참여할 수 있도록 셀프 할당을 허용하세요.
npx @capgo/cli@latest channel add market-uk --self-assign
Channels 문서
출시 시점에 CI에서 실행하세요. 롤아웃은 채널 내 일부 디바이스에 bundle을 전송하고, 나머지는 stable을 유지합니다.
npx @capgo/cli@latest bundle upload --channel market-uk --delta --rollout 10
Progressive rollouts 문서
주문 기능이 예상대로 작동하면, 해당 bundle을 채널 내 모든 기기로 배포하세요.
npx @capgo/cli@latest channel set market-uk --rollout-promote
Progressive rollouts 문서
주문 기능에 문제가 생기면, 롤아웃을 stable로 되돌리거나 콘솔의 채널 히스토리에서 이전 bundle을 선택하세요.
npx @capgo/cli@latest channel set market-uk --rollout-rollback
롤백 문서
Capacitor로 빌드한 앱
QSR 앱은 매장 승인을 기다릴 필요 없이 프로모션, 매장 찾기 콘텐츠, 주문 공지 및 지역 캠페인 진입점을 즉시 업데이트할 수 있습니다.
바우처, 매장 찾기 콘텐츠, 캠페인 화면을 제공하는 레스토랑 앱.
메뉴, 리워드, 결제 안내가 빠르게 바뀔 수 있는 주문 앱입니다.
로열티와 음식 주문 흐름을 자주 다듬어야 하는 레스토랑 앱.
NuTriQ 창립자
“App Store의 전체 리뷰 사이클을 기다리지 않고 프로덕션 OTA 업데이트를 즉시 푸시할 수 있다는 점은 운영상 엄청난 이점입니다.”
drivolino GmbH 리드 개발자
“Capgo Capacitor Updater 플러그인 덕분에 업데이트 배포 방식이 완전히 바뀌었습니다. 며칠씩 걸리던 작업이 이제는 단 몇 분 만에 끝납니다.”
개발자, Webincode
“특정 그룹에 Device ID를 추가하고 변경 사항을 특정 그룹에만 푸시할 수 있다는 건 정말 큰 도움이 됩니다.”
자주 묻는 질문
live update가 바꿀 수 있는 타이밍, 키오스크, 시장 상황.
Capgo에는 별도의 릴리스 스케줄러가 없습니다. 원하는 시점에 CI에서 upload를 트리거하세요. 예를 들어, 예약된 GitHub Actions 워크플로우를 사용하거나 출시 당일 아침에 수동으로 실행할 수 있습니다. 특정 날짜까지 새로운 UI를 숨겨야 한다면, 앱이나 백엔드에서 제어하세요.
GitHub Actions 가이드기본 모드에서는 앱이 백그라운드로 전환될 때 업데이트가 적용되지만, 키오스크는 백그라운드로 전환되는 일이 거의 없습니다. 주기적인 체크(기본 10분 간격) 시 업데이트를 적용하려면 autoUpdate를 'always'로 설정하세요. 또는 'onlyDownload'로 설정한 뒤 키오스크가 유휴 화면(idle screen)으로 돌아갈 때 set()을 호출하면 됩니다.
업데이트 동작 문서네. Capgo에서 각 브랜드에 고유한 app ID를 부여하고, 각 시장이나 파일럿 그룹에 고유한 채널을 할당하세요. 디바이스에서 직접 할당이 가능한 경우 setChannel()을 통해 채널에 참여하거나, 디바이스 오버라이드를 통해 채널을 지정할 수 있습니다.
Channels 문서진행 중인 점진적 배포(progressive rollout)를 중단하거나 채널 히스토리에서 이전 bundle을 선택하여 롤백하세요. 만약 새 bundle이 시작되지 않아 notifyAppReady()를 호출하지 못하면, 디바이스는 자동으로 마지막으로 정상 작동하던 bundle로 복구됩니다.
롤백 문서가격은 보통 백엔드나 POS 연동을 통해 관리되므로 해당 시스템에서 변경해야 합니다. live update는 메뉴와 가격을 보여주는 웹 화면을 변경합니다. Native plugin, 결제 SDK, 그리고 Capacitor 업그레이드는 스토어 배포가 필요합니다.
Native 호환성 문서트라이얼 기간 동안 마켓 채널을 설정하고 실제 앱에 CI upload를 적용해 보세요.
각 마켓에 Capgo live updates를 배포하고, 주문 프로세스에 문제가 생기면 즉시 롤백하세요.
Martin의 직접 지원
14일 무제한 무료 체험. 카드 등록 불필요 14일 환불 보장. 언제든 취소 가능.
엔터프라이즈 솔루션이 필요하신가요? 팀과 상담하기