ブランド バリエーションは速く増えていく
すべての顧客は独自のロゴ、テーマ、機能フラグ、コンテンツ、法的要件、リリースタイミングを望む。分離されたフォークは、その要求を永久的なメンテナンス負債に変える
ホワイトラベルアプリケーション管理
ビジネス上の約束は簡単です: 多くのブランドのアプリを販売することなく、多くのアプリを維持する必要はありません。Capgoは、テナント固有のバンドル用のチャンネル、ネイティブシェル用のビルダー、ブランドごとに迅速な修正が必要な場合のロールバック機能など、実行可能な方法でその運用を実現します。
マーティンによる人間のサポート
シェル
Capacitor アプリ
テナント
チャネル
セキュリティ
ロールバック
問題
すべての顧客は独自のロゴ、テーマ、機能フラグ、コンテンツ、法的要件、リリースタイミングを望む。分離されたフォークは、その要求を永久的なメンテナンス負債に変える
メニューのタイプミス、オンボーディングの修正、または顧客専用の機能は、すべてのテナントをバイナリ リリースとアプリ ストア レビューに強制するべきではない
1つのグローバルアップデートは一度にすべてのブランドを破壊することができます。1つのブランドごとにフォークすると、チームは遅くなります。リリースモデルには中間の道筋が必要です。
コンクリートモデル
顧客ブランド化されたSaaSアプリ
フランチャイズまたはロケーションアプリ
A host app can list approved mini-apps or customer workspaces and switch the device to the matching Capgo channel at runtime.
ホストアプリは、承認済みのミニアプリまたは顧客ワークスペースをリストし、実行時にはデバイスを対応する__CAPGO_KEEP_0__チャンネルに切り替えることができます。
すべてのテナントで同じCapacitorシェルを使用します。テナント固有のWebバンドルをCapgoチャンネルに公開し、ログイン、組織選択、または内部管理画面からアプリが正しいチャンネルに切り替えるようにします。
# Publish tenant-specific web bundles from the same app
npx @capgo/cli@latest bundle upload --channel acme
npx @capgo/cli@latest bundle upload --channel globex
npx @capgo/cli@latest bundle upload --channel north-branch
import { CapacitorUpdater } from '@capgo/capacitor-updater'
export async function switchTenant(channel: string) {
await CapacitorUpdater.setChannel({ channel })
const latest = await CapacitorUpdater.getLatest()
const bundle = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
await CapacitorUpdater.set({ id: bundle.id })
}
The Solution
The Capgoモデルはネイティブアプリの安定性を保ち、ブランド固有のWebエクスペリエンスを制御されたチャンネルで動作させる。
各テナント、フランチャイズ、ワークスペース、顧客、またはアプリバリアントごとにチャンネルを作成し、ブランドが受け取るべきバンドルだけをプッシュします。
すべてのチャンネルに共有された修正を安全に推進するか、特定の変更が顧客にのみ影響する場合に、リリースを1つの顧客に隔離します。
テナント固有のバンドルが破損した場合、他のすべてのブランドアプリに影響を与えないように、そのチャンネルをロールバックします。
アイコン、権限、プラグイン、またはストアメタデータが変更された場合に新しいネイティブシェルを作成するにはビルダーを使用します。ブランドコンテンツが毎週変更される場合にOTAを使用します。
リリースモデル
白ラベルオペレーションは、各テナントが明確なリリースルートを持っており、各ルートが独立して監視できるようになると管理が可能になる。
Keep shared auth, analytics, billing, navigation, and native plugins in one Capacitor app instead of rebuilding them per customer.
各クライアント、フランチャイズ、ロケーション、またはワークスペースをCapgoチャンネルにマップし、独自の更新履歴とリリースカレンダーを持たせる。
クライアント固有のJavaScript、CSS、アセット、設定、コピー、実験をアプリストアのレビューなしで配信する。
確立された変更を広く推進、リスクのあるロールアウトを一時停止、または必要なテナントのみをロールバックする。
ユーザー信号
ユーザーが繰り返し言っているのはコントロールです。彼らは、テナント42が今日急いで修正を受けられるようにすることを望んでいますが、テナント1、テナント7、そしてすべてのアプリストアのリストを同時に移動する必要はありません。
共通のホワイトラベル顧客フィードバック
Capacitorで作られたアプリ
地域のスポーツ、エンターテインメント、テレコムブランドは、スケジュール、キャンペーン、サポート、市場固有のコンテンツをそれぞれのブランドや国に合わせて変更しながら、1つのアプリの基盤を再利用できます。
スポーツ
地域スポーツメディアアプリです。スケジュールやローカルコンテンツは市場の制御が必要です。
娯楽
娯楽ガイドです。コンテンツは市場やプログラミングウィンドウによって異なります。
ツール
共有アカウントのパターンがまだローカル製品とサポートコンテンツが必要なキャリアアプリ