Zum Hauptinhalt springen
Anleitung

Wie Sie __CAPGO_KEEP_0__-Kanäle für Feature-Flags und A/B-Tests verwenden

Erhalten Sie Informationen, wie Sie Capgo-Kanäle für Feature-Flags und A/B-Tests verwenden, indem Sie Benutzer selbst zuweisen oder Ihren Backend verwenden

Martin Donadieu

Martin Donadieu

Inhaltsmarketer

Wie Sie Kanäle für Feature-Flags und A/B-Tests verwenden

Wie Sie Kanäle für Feature-Flags und A/B-Tests verwenden

Capgo's Kanal-System bietet eine flexible Möglichkeit, Benutzer zu segmentieren und die Zugriffsberechtigung auf Funktionen zu steuern. Während Capgo keine integrierte Planverwaltung oder A/B-Tests bietet, können Sie diese Funktionen durch die selbstständige Verwaltung von Kanalzuweisungen umsetzen.

Kanäle verstehen

In Capgo können Sie:

  • Spezifische Benutzergruppen mit unterschiedlichen Funktionen ansprechen
  • A/B-Tests durch die Zuweisung von Benutzern zu verschiedenen Kanälen durchführen
  • Neue Funktionen allmählich einleiten
  • Beta-Testprogramme erstellen

Kanalzuweisungsmethoden

Dies ist die sicherere Methode. Sie umfasst:

  1. Das Geräte-ID von dem Updater erhalten
  2. Es an Ihren Hintergrund zu senden
  3. Ihr Hintergrund ruft die Capgo API auf, um dem Gerät einen Kanal zuzuweisen

Hier ist, wie Sie es implementieren können:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Get device ID
const getDeviceId = async () => {
  const { deviceId } = await CapacitorUpdater.getDeviceId()
  return deviceId
}

// Send device ID to your backend
const assignToChannel = async (channel: string) => {
  const deviceId = await getDeviceId()
  // Your backend will call Capgo API to assign the device
  await yourBackend.assignDeviceToChannel(deviceId, channel)
}

Hintergrundimplementierung

Ihr Hintergrund muss:

  1. Einen API-Schlüssel von der Capgo-Oberfläche erhalten
  2. Die Capgo API aufrufen, um dem Gerät einen Kanal zuzuweisen

Um Ihren API-Schlüssel zu erhalten:

  1. Anmelden Sie sich bei Ihrem Capgo-Dashboard
  2. Gehe zu Einstellungen > API-Schlüssel
  3. Klicke auf ‘Neuen Schlüssel erstellen’
  4. Wähle all Modus zum Verwalten von Geräten und Kanälen
  5. Führe den generierten Schlüssel sicher in Ihren Backend-Umgebungsvariablen ab
    • Der Schlüssel wird ein 32-stelliger hexadezimaler String sein
    • Es ist ein geheimer Schlüssel, der niemals auf der Client-Seite code-Code ausgeliefert werden sollte

Hier ist ein Beispiel für Node.js:

import axios from 'axios'

const CAPGO_API_KEY = 'your_api_key'
const CAPGO_API_URL = 'https://api.capgo.app'

async function assignDeviceToChannel(deviceId: string, channel: string) {
  try {
    const response = await axios.post(
      `${CAPGO_API_URL}/device`,
      {
        app_id: 'YOUR_APP_ID',
        device_id: deviceId,
        channel: channel
      },
      {
        headers: {
          'authorization': CAPGO_API_KEY,
          'Content-Type': 'application/json'
        }
      }
    )
    return response.data
  } catch (error) {
    console.error('Failed to assign device to channel:', error)
    throw error
  }
}

Der Backend-Server sollte auch:

  • Überprüfe die Berechtigungen des Benutzers
  • Logge alle Kanalzuweisungen
  • Hantering von Rate Limiting
  • Implementieren Sie eine Wiederholungslogik für fehlgeschlagene Zuweisungen

2. Selbstzuweisung (weniger sicher)

Mit dieser Methode können Geräte sich selbst einer Kanal zuzuweisen. Es ist nützlich für die Testung, aber weniger sicher für die Produktion:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Assign device to channel
const assignToChannel = async (channel: string) => {
  await CapacitorUpdater.setChannel(channel)
}

// Get current channel
const getCurrentChannel = async () => {
  const { channel } = await CapacitorUpdater.getChannel()
  return channel
}

Bevor Benutzer sich selbst einer Kanal zuweisen können, müssen Sie diese Funktion in der Capgo-Oberfläche aktivieren:

  1. Gehe zur Kanal-Sektion in deiner Capgo-Oberfläche
  2. Klicke auf den Kanalnamen, den du verwalten möchtest
  3. In den Kanal-Einstellungen aktiviere „Zulassen, dass Geräte sich selbst zuweisen“
  4. Speichere die Änderungen

Wenn diese Einstellung falsch ist, schlägt jeder Versuch, setChannel mit diesem Kanal aufzurufen, fehl.

Implementieren von Feature-Flags

Use channels to control feature access:

const isFeatureEnabled = async (feature: string) => {
  // Example: Check if user is in beta channel
  const channel = await getCurrentChannel()
  return channel === 'beta'
}

A/B-Test-Implementierung

Laufen A/B-Tests, indem Benutzer verschiedenen Kanälen zugewiesen werden:

const assignToABTest = async (userId: string) => {
  // Use consistent hashing to assign users
  const hash = await hashUserId(userId)
  const variant = hash % 2 === 0 ? 'variant-a' : 'variant-b'
  
  await assignToChannel(variant)
  return variant
}

Best Practices

  1. Verwenden Sie die Backend-Zuweisung: Für die Produktion verwenden Sie immer die Backend-Zuweisungsmethode
  2. Konsistente Zuweisung: Verwenden Sie Benutzer-IDs oder andere stabile Identifikatoren für eine konsistente Kanalzuweisung
  3. Überwachung: Verfolgen Sie die Verwendung von Funktionen und Leistungsmetriken für jeden Kanal
  4. Schrittweise Rollouts: Beginnen Sie mit kleinen Benutzersegmenten und erweitern Sie sie allmählich
  5. Klare Dokumentation: Dokumentieren Sie Ihre Kanalstrategie und -zwecke

Zusammenfassung

Indem Sie das Kanalsystem von Capgo nutzen, können Sie personalisiertere App-Erfahrungen erstellen und A/B-Tests durchführen. Für die Produktionsverwendung sollten Sie immer die Backend-Zuweisungsmethode bevorzugen, um eine bessere Sicherheit und Kontrolle zu gewährleisten.

Für weitere Details zu Kanalverwaltung überprüfen Sie bitte unsere Kanal-Dokumentation.

Fortsetzen Sie von Wie man Kanäle für Feature-Flags und A/B-Tests verwendet

Wenn Sie Wie man Kanäle für Feature-Flags und A/B-Tests verwendet zur Planung der Kanalrouten und der gestuften Rollout verwenden, verbinden Sie es mit Kanälen für die Implementierungsdetails in Kanälen, Kanäle für die Implementierungsdetails in Kanäle, Kanäle für die Implementierungsdetails in Kanäle, Beta-Testlösung für den Produktworkflow in Beta-Testlösung, und Versionsziel-Lösung für den Produktworkflow in Versionsziel-Lösung.

Live Updates für Capacitor-Apps

Wenn ein Web-Schicht-Bug live ist, liefern Sie die Reparatur über Capgo anstatt Tage auf die Genehmigung der App-Stores zu warten. Die Benutzer erhalten die Aktualisierung im Hintergrund, während native Änderungen im normalen Review-Verfahren bleiben.

Los geht's jetzt

Neuestes aus unserem Blog

Capgo bietet Ihnen die besten Einblicke, die Sie benötigen, um eine wirklich professionelle mobile App zu erstellen.