バーガーキング
バーガーキング用のクーポン、検索コンテンツ、キャンペーン表面のレストランアプリ。
- Google Play インストール
- 14.3M
- ストア評価
- 3.9
なぜレストランチームはlive updateレーンを追加するか
特定の日付でリリースされる限定アイテムがアプリのメニューに表示されないことがわかります
修正はウェブ層にありますが、店舗のみのプロセスは新しいバイナリと店舗のレビューを必要とし、24~48時間、またはそれ以上かかることがあります
承認された後も、顧客は更新をインストールする必要があり、店舗のキオスクには独自の更新パスが必要です
キャンペーンが開始された時点で限定アイテムが開始され、ウェブ層の修正は店舗のリリースを待つ必要はありません
各ブランドアプリと各市場は同じコードベースから異なるメニュー、プロモーション、法的テキストを必要とすることがあります
新しい注文フローは、最初は1つの市場または数台のテストデバイスで実行されるべきです。
昼食時の注文画面が壊れた場合、店舗のリリースに依存しない戻る方法が必要です。
用途
ウェブ層の注文と決済画面を修正し、メニュー表示の変更を新しいバイナリなしで配信する
報酬画面、ポイント表示、還元フローの更新。ポイント値はバックエンドから来ています。
ウェブ層の店舗情報画面、ピックアップ指示、カーセッティングオプションの更新
日付に基づいてチャネルごとにプロモーション広告、オファーページ、キャンペーンエントリポイントをリリースし、最初は1つのチャネルでテストしてみましょう。
キオスクアプリは全日営業可能です。定期的なチェックやキオスクがアイドル画面に戻ったときにアップデートを適用できます。
すべてのブランドアプリを1つのCapgo組織にまとめ、各アプリには独自のアプリID、チャンネル、リリース履歴が付く。
What Capgo gives restaurant teams
Capgo has no release scheduler. Your CI triggers the upload: on merge, on a manual run, or on a cron schedule you set for the launch.
# .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内で独自のアプリであり、独自のチャンネルとリリース履歴を持っています。チームメンバーごとにロールを割り当てて管理します。
各市場、地域、またはパイロットグループごとにチャンネルを作成します。アプリはsetChannel()を使用してチャンネルに参加し、チームはデバイスをピンに固定するオーバーライドを使用できます。
// 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_KEEP_0__のしくみ
CapgoとCLIのドキュメントから、以下のコマンドはすべて取得されます。
アプリがチャンネルに参加できるように、自分自身の割り当てを許可する。
npx @capgo/cli@latest channel add market-uk --self-assign
チャンネル
CIから実行してください。ロールアウトはチャンネル内のデバイスの特定の割合にバンドルを送信し、残りのデバイスは安定した状態を維持します。
npx @capgo/cli@latest bundle upload --channel market-uk --delta --rollout 10
進化的なロールアウト
ロールバック
npx @capgo/cli@latest channel set market-uk --rollout-promote
進化的なロールアウト
ロールバック
npx @capgo/cli@latest channel set market-uk --rollout-rollback
このワークフローのドキュメント
Apps built with Capacitor
レストランのアプリは、プロモーション、レストランの検索結果、注文の通知、地域キャンペーンのエントリポイントを更新することができます。店舗の承認を待つ必要はありません。
バーガーキング用のクーポン、検索コンテンツ、キャンペーン表面のレストランアプリ。
メニュー、報酬、チェックアウトガイダンスが急に変わり、注文アプリです。
レストランアプリでは、忠誠心と注文のパスを頻繁に改善する必要があります。
NuTriQの創業者
「アプリストアの完全なレビューサイクルを待たずに即時でOTAの生産更新をプッシュできることは、運用上の莫大な利点であった」と述べました。
リード・デベロッパー、drivolino GmbH
「Capgo Capacitor アップデート プラグインは、更新を配信する方法を完全に変えました。何日もかかったものが今は僅かでしかありません。」
デベロッパー、Webincode
「特定のグループにデバイスIDを追加し、変更を特定のグループにのみ送信することができることは、命の救済です。」
FAQ
時間、キオスク、市場、そしてlive updateが何を変えることができるか
Capgoにはリリーススケジューラが存在しません。CIからアップロードをトリガーする時間を選択し、たとえばスケジュールされたGitHubアクションワークフローまたはリリースの朝に手動で実行してください。新しいUIが特定の日まで隠れなければならない場合、アプリまたはバックエンドでゲートを設定してください。
GitHub アクションガイドデフォルトモードでは、アプリがバックグラウンドに移動したときにアップデートが適用されますが、キオスクはほとんどそのような状況にありません。自動アップデートを '常に' に設定すると、定期的なチェック (デフォルトでは 10 分ごとに) のときにアップデートを適用できます。また、 'ダウンロードのみ' に設定し、キオスクがアイドル画面に戻ったときに set() を呼び出すこともできます。
アップデートの動作に関するドキュメントはい。各ブランドに独自のアプリIDを Capgo に与え、各市場またはパイロットグループに独自のチャンネルを与えます。デバイスは、自己割り当てが許可されている場合やデバイスオーバーライドを通じて、setChannel() を呼び出してチャンネルに参加します。
チャンネルに関するドキュメント進化的なロールバックまたはチャンネル履歴から前のバンドルを選択してください。新しいバンドルが起動できず、notifyAppReady() を呼び出さない場合、デバイスは自動的に前の機能するバンドルに戻ります。
ロールバックに関するドキュメント価格は通常、バックエンドまたは POS統合から取得されるため、そこで変更してください。 live update は、メニューと価格を表示するウェブ画面を変更します。ネイティブプラグイン、決済 SDK、 Capacitor アップグレードには、ストアリリースが必要です。
ネイティブ互換性ドキュメント