Zum Hauptinhalt springen

White-Label- und Multi-Tenant-Apps

Alle Tenant-Apps aus einer einzigen Codebase deployen

Gib jedem Tenant, jeder Marke oder jedem Standort einen eigenen Capgo Channel. Aktualisiere den Web-Layer eines Tenants, ohne die anderen zu beeinflussen, und erstelle gebrandete Native Shells mit Capgo Build.

1 Codebase
Gemeinsame Capacitor-App für jeden Tenant
1 Channel pro Tenant
Eigenes Bundle, Historie und Rollback
Cloud Builds
Android-Flavors und iOS-Schemes

Shell

Capacitor App

Tenants

Kanäle

Native

Capgo Build

Das Problem

White-Label-Apps werden schwer, wenn jeder Kunde zum Fork wird

Markenvarianten vermehren sich schnell

Jeder Kunde will eigenes Logo, Theme, Features, Content und Release-Datum. Separate Forks machen diese Anforderungen bei jedem Release zu einem Wartungsaufwand.

Store-Reviews bremsen Fixes aus

Ein Tippfehler im Menü oder ein Onboarding-Fix für einen Tenant sollte nicht auf eine neue Binary und Store-Review warten müssen – oft 24–48 Stunden, manchmal viel länger.

Globale Releases sind zu grob

Ein globales Update kann alle Marken gleichzeitig lahmlegen. Ein Fork pro Marke bremst das gesamte Team. Du brauchst eine Release-Lane pro Tenant.

Gängige Setups

So sieht White-Label in einer Capgo App aus

Branded SaaS-App für Kunden

Jeder Geschäftskunde erhält ein eigenes Logo, Theme, Onboarding-Texte sowie Features und bekommt Updates über einen eigenen Channel.

Franchise- oder Standort-App

Jedes Restaurant, jede Klinik, jedes Gym oder jede Filiale erhält lokale Menüs, Assets und Kampagnen-Screens via Live Update – ohne neue Binary.

Mini-App Marketplace

Eine Host-App listet Workspaces oder Mini-Apps auf und wechselt zur Laufzeit via setChannel() zum passenden Capgo Channel.

Die Lösung

Ein App Shell, ein Release-Lane pro Tenant

Der Native Shell bleibt geteilt. Die Web-Layer der einzelnen Tenants laufen über jeweils eigene Channels.

Channel pro Tenant

Jeder Tenant, jedes Franchise oder jeder Workspace erhält einen Channel. Deploye zu einem oder allen Tenants und rolle einen Channel zurück, ohne die anderen zu beeinflussen.

Channel-Docs

Self-Assignment zur Laufzeit

Ist Self-Assignment aktiviert, ruft die App setChannel() auf, um ein Gerät dem Channel seines Tenants zuzuweisen. Capgo validiert den Channel weiterhin bei jedem Update-Check.

setChannel()-Referenz

Version-Targeting über Shells hinweg

Tenants nutzen oft unterschiedliche native Versionen. Blockiere Major-Updates pro Channel oder setze eine minimale native Version, damit ein Bundle nur Shells erreicht, die es ausführen können.

Version-Targeting-Docs

Capgo Build für Branded Shells

Baue jeden Android-Flavor oder jedes iOS-Scheme in der Cloud und lade es in die Stores hoch. Nutze Live Updates für den Web-Layer, der sich jede Woche ändert.

Build-Optionen

So funktioniert es

So deployen White-Label-Teams mit Capgo

Ein Capacitor Codebase, ein Channel pro Tenant. Die Commands und code stammen aus der Capgo CLI und Updater-Dokumentation.

  1. Erstelle einen Channel für jeden Tenant

    Jeder Tenant erhält einen Channel mit eigenem Bundle und Verlauf. Nutze Self-Assignment, damit die App das Gerät zuweisen kann.

    npx @capgo/cli@latest channel add acme com.example.app --self-assign
    npx @capgo/cli@latest channel add globex com.example.app --self-assign
    Channel-Docs
  2. Lade das Bundle des Tenants hoch

    Baue den Web-Layer mit dem Theme und der Config des Tenants und lade ihn nur in dessen Channel hoch. Andere Tenants behalten ihr aktuelles Bundle.

    npx @capgo/cli@latest bundle upload --channel acme
    npx @capgo/cli@latest bundle upload --channel globex
    Rollback-Docs
  3. Device beim Sign-in dem Tenant zuweisen

    Rufe nach dem Sign-in setChannel() mit dem Channel des Tenants auf. Die Auswahl wird auf dem Gerät gespeichert und beim nächsten Update-Check aktiv.

    import { CapacitorUpdater } from '@capgo/capacitor-updater'
    
    await CapacitorUpdater.setChannel({
      channel: tenant.channel,
      triggerAutoUpdate: true,
    })
    setChannel()-Referenz
  4. Branded Shells in der Cloud bauen

    Wenn ein Tenant eigene Store-Listings, Icons oder Permissions benötigt, baue diesen Flavor oder Scheme mit Capgo Build. Kein eigener Mac nötig.

    npx @capgo/cli@latest build request com.acme.app --platform android --android-flavor acme
    npx @capgo/cli@latest build request com.acme.app --platform ios --ios-scheme Acme
    Build-Optionen

Mit Capacitor gebaute Apps

Regionale Medien- und Carrier-Apps nutzen einen Core, benötigen aber lokale Kontrolle

Regionale Sport-, Entertainment- und Telecom-Brands können eine App-Basis wiederverwenden und gleichzeitig Zeitpläne, Kampagnen, Support und marktspezifische Inhalte für jede Brand oder jedes Land anpassen.

App-Icon von Tigo Sports Guatemala SPORT

Tigo Sports Guatemala

Regionale Sportmedien-App, die volle Kontrolle über Spielpläne und lokale Inhalte benötigt.

Google Play-Installationen
1,6 Mio.
Store-Bewertung
3.3
TV SPIELFILM - TV-Programm App-Icon UNTERHALTUNG

TV SPIELFILM - TV-Programm

Entertainment-Guide, bei dem sich die Inhalte je nach Markt und Sendezeitraum ändern.

Google Play-Installationen
12,1 Mio.
Store-Bewertung
4.4
App-Icon von Mi Orange TOOLS

Meine Orange

Carrier-App, bei der geteilte Account-Strukturen weiterhin lokale Produkt- und Support-Inhalte benötigen.

Google Play-Installationen
9,3 Mio.
Store-Bewertung
4.2

Kundenstimmen

Das sagen Teams, die mit Capgo deployen

5.0/5 von Entwicklerteams bewertet 9,400+ Teams Bewertungen lesen

no-tone @ Webincode

Entwickler, Webincode

„Geräte-IDs zu bestimmten Gruppen hinzuzufügen und Änderungen nur an diese Gruppen zu pushen, ist ein echter Gamechanger.“

Nate van Jole

CTO, Privat

„Das Setup war in weniger als einem Tag erledigt. Mit Channel-basierten Rollouts kann ich erst auf meinem eigenen Gerät testen, bevor etwas bei den Production-Usern ankommt.“

Porträt von Sergiu S

Sergiu S

Lead Developer, drivolino GmbH

„Das Capgo Capacitor Updater-Plugin hat komplett verändert, wie wir Updates ausliefern. Was früher Tage dauerte, dauert jetzt nur noch Minuten.“

FAQ

White-Label-Fragen

Was Teams fragen, bevor sie viele Brands über ein Capgo Setup betreiben.

Benötigen wir für jede Brand eine eigene Capgo App?

Nur wenn jede Brand eine eigene App ID in den Stores hat. Eine Store-App, die viele Tenants bedient, ist eine Capgo App mit einem Channel pro Tenant. Separate Branded Store-Apps sind separate Capgo Apps, jeweils mit eigenen Channels.

Channel-Docs

Kann ein Nutzer innerhalb der App den Tenant wechseln?

Ja. Wenn der Channel des Tenants das Self-Assignment erlaubt, rufe einfach setChannel() aus der App auf. In aktuellen Plugin-Versionen wird die Auswahl auf dem Gerät gespeichert und beim nächsten Update-Check verwendet.

setChannel()-Referenz

Was passiert, wenn einige Tenants eine ältere Native Version nutzen?

Nutze Version Targeting. Blockiere Major Updates für einen Channel oder lege eine minimale Native Version für ein Bundle fest, damit ältere Shells ein Bundle behalten, das sie ausführen können.

Version-Targeting-Docs

Können wir einen Tenant zurückrollen, ohne die anderen zu beeinflussen?

Ja. Jeder Channel behält seine eigene Bundle-Historie. Du rollst den Channel des Tenants auf ein früheres Bundle zurück, und die anderen Channels behalten ihren Stand.

Rollback-Docs

Was braucht weiterhin ein Store-Release?

App-Namen, Icons, Berechtigungen, native Plugins und native code stecken in der Binary. Capgo Build kann jeden Flavor oder Scheme bauen und zu App Store Connect und Google Play hochladen.

Capgo Build-Docs

Teste Tenant-Channels in deiner eigenen App

Erstelle während der 14-tägigen Testphase zwei Tenant-Channels, lade jeweils ein Bundle hoch und wechsle auf einem Testgerät mit setChannel() zwischen ihnen.