Entwicklerleitfaden
Folgen Sie diesem Abschnitt, um das Android SDK in Ihrer Android-App zu installieren und zu konfigurieren, und um mehr über erweiterte Funktionen zu erfahren.Erste Schritte
Befolgen Sie diese Schritte, um das Kameleoon Android SDK in Ihrer Anwendung zu installieren und zu konfigurieren.Installation
Sie können das Android SDK installieren, indem Sie die folgende Abhängigkeit in die Dateibuild.gradle Ihrer Android-App einfügen:
Zusätzliche Konfiguration
Um das Verhalten des SDK anzupassen, erstellen Sie eine.properties-Konfigurationsdatei. Der Name und der Speicherort der Properties-Datei sind wichtig:
- Erstellen Sie die Datei im Verzeichnis
assets/Ihrer App. - Benennen Sie die Datei
kameleoon-client.properties.
Wenn Sie einen
visitorCode angeben und den Parameter isUniqueIdentifier auf true setzen, verwenden die SDK-Methoden den Wert visitorCode als eindeutige Besucherkennung, was für geräteübergreifende Experimente nützlich ist. Das SDK verknüpft die geleerten Daten mit dem Besucher, der mit der angegebenen Kennung verbunden ist.isUniqueIdentifier kann in anderen Sonderfällen nützlich sein, z. B. wenn Sie nicht auf den anonymen visitorCode zugreifen können, der dem Besucher ursprünglich zugewiesen wurde, aber Zugriff auf eine interne ID haben, die über Session-Merging mit dem anonymen Besucher verbunden ist.Verwendung von activityTrackingIntervalMillisecond
Der Parameter activityTrackingIntervalMillisecond trägt dazu bei, den Netzwerk- und Akkuverbrauch zu reduzieren, indem er steuert, wie oft das SDK ein Aktivitätsereignis sendet, um die Sitzung des Besuchers in der Data API zu verlängern. Der Standardwert und der zulässige Mindestwert betragen 60 000 ms (60 Sekunden); jeder niedrigere Wert ungleich null wird ignoriert und der Standardwert wird angewendet. Timer werden angehalten, während sich die App im Hintergrund befindet, sodass das Intervall effektiv nur voranschreitet, während die App im Vordergrund ist.
Prüfen Sie seine Auswirkungen auf die folgenden Funktionen:
-
Trigger für verstrichene Zeit
- Wenn die konfigurierte verstrichene Zeit kürzer als das Tracking-Intervall ist, wird der Trigger nicht wie erwartet ausgelöst.
-
Segmente für verstrichene Zeit
- Wenn die verstrichene Zeit kürzer als das Tracking-Intervall ist, werden Benutzer möglicherweise nicht wie beabsichtigt in das Segment aufgenommen.
-
Verweildauer-Ziele
- Wenn die verstrichene Zeit kürzer als das Tracking-Intervall ist, wird das Ziel möglicherweise nie erreicht.
-
Zeit seit dem letzten Besuch in der Ergebnisseite
- Messungen der „Zeit seit dem letzten Besuch” werden ungenauer, wenn die verstrichene Zeit nahe oder unter dem Tracking-Intervall liegt.
-
Anzahl der Besuche
- Ein neuer Besuch wird nach 30 Minuten Inaktivität erstellt. Wenn das Tracking-Intervall länger als 30 Minuten ist, wird bei jedem Tracking-Intervall ein neuer Besuch erstellt.
Initialisierung des Kameleoon Clients
Nachdem Sie das SDK in Ihrer Anwendung installiert und die App-Eigenschaften eingerichtet haben, müssen Sie den Kameleoon Client erstellen. Ein Client ist ein Singleton-Objekt, das als Brücke zwischen Ihrer Anwendung und der Kameleoon-Plattform fungiert. Er enthält alle Methoden und Eigenschaften, die Sie zum Ausführen eines feature flags benötigen.- Java
- Kotlin
KameleoonClientFactory.create() den Client, dieser ist jedoch nicht sofort einsatzbereit. Diese Verzögerung entsteht, weil der Kameleoon Client die aktuelle Konfiguration der feature flags (zusammen mit deren Traffic-Aufteilung) von einem Kameleoon-Remote-Server abrufen muss. Dieser Abruf erfordert Netzwerkzugriff, der nicht immer verfügbar ist. Solange der Kameleoon Client nicht vollständig bereit ist, sollten Sie keine anderen Methoden des Kameleoon Android SDK ausführen. Beachten Sie, dass nach dem ersten Abruf der feature flag-Konfiguration diese regelmäßig aktualisiert wird. Selbst wenn die Aktualisierung aus irgendeinem Grund fehlschlägt, funktioniert der Kameleoon Client weiterhin mit der vorherigen Konfiguration.
Sie können die Methode isReady() verwenden, um zu prüfen, ob die Initialisierung des Kameleoon Clients abgeschlossen ist.
Alternativ kann ein Hilfe-Callback die Logik zur Auslösung des feature flags und zur Implementierung der variation kapseln. Der beste Ansatz (isReady() oder Callback) hängt von den Vorlieben und dem genauen Anwendungsfall ab. Die Verwendung von isReady() wird empfohlen, wenn erwartet wird, dass das SDK bald einsatzbereit ist. Beispielsweise ist isReady() geeignet, wenn ein feature flag in einem Dialog ausgeführt wird, auf den Benutzer in den ersten Sekunden oder Minuten des Navigierens in der App wahrscheinlich nicht zugreifen werden. Ein Callback wird empfohlen, wenn eine hohe Wahrscheinlichkeit besteht, dass sich das SDK noch in der Initialisierung befindet. Beispielsweise sollte ein feature flag, der beim Anwendungsstart auf dem Bildschirm erscheint, einen Callback verwenden, der die Anwendung warten lässt, bis das SDK bereit ist oder ein bestimmter Timeout abgelaufen ist.
Es liegt in Ihrer Verantwortung als App-Entwickler, sicherzustellen, dass die Logik Ihres Anwendungscodes im Kontext von A/B-Tests mit Kameleoon korrekt ist. Eine gute Praxis ist es, immer davon auszugehen, dass der Anwendungsbenutzer aus dem feature flag ausgeschlossen werden kann, wenn der Kameleoon Client noch nicht bereit ist. Dieser Ausschluss ist einfach zu implementieren, da dies der Implementierung der Standard- oder Referenz-variation entspricht. Die Codebeispiele im nächsten Abschnitt zeigen Beispiele für diesen Ansatz.
Best Practices für Initialisierung und Verwendung
- Es wird empfohlen,
KameleoonClientals Singleton so früh wie möglich nach dem Start der Anwendung zu initialisieren, da die Initialisierung einige Zeit in Anspruch nehmen kann. Da die Initialisierung asynchron ist, blockiert oder verzögert sie den Anwendungsstart nicht. - Bevor Sie
KameleoonClientverwenden, überprüfen Sie, ob er initialisiert ist, indem Sie die MethoderunWhenReadyaufrufen. Andernfalls führen Versuche, den Client zu nutzen, bevor er bereit ist, zu Fehlern. - ⚠️ Die meisten wichtigen Methoden können Ausnahmen auslösen, daher ist eine ordnungsgemäße Ausnahmebehandlung erforderlich. Lesen Sie die Dokumentation jeder verwendeten Methode, um deren potenzielle Ausnahmen zu verstehen.
- Java
- Kotlin
- Kotlin (Coroutines)
Aktivieren eines feature flags
Abrufen einer Flag-Konfiguration
Um einen feature flag in Ihrem Code zu implementieren, müssen Sie zunächst den feature flag in Ihrem Kameleoon-Konto erstellen. Um den Status oder die variation eines feature flags für einen bestimmten Benutzer zu ermitteln, sollten Sie die MethodegetVariation() oder isFeatureActive() verwenden, um die Konfiguration anhand des featureKey abzurufen.
Die Methode getVariation() verarbeitet sowohl einfache feature flags mit ON/OFF-Zuständen als auch komplexere flags mit mehreren variations. Die Methode ruft die passende variation für den Benutzer ab, indem sie die Feature-Regeln prüft, die variation zuweist und sie basierend auf featureKey und visitorCode zurückgibt.
Die Methode isFeatureActive() kann verwendet werden, wenn Sie die Konfiguration eines einfachen feature flags abrufen möchten, der nur einen ON- oder OFF-Zustand hat, im Gegensatz zu komplexeren feature flags mit mehreren variations oder Targeting-Optionen.
Wenn Ihr feature flag zugehörige Variablen hat (wie z. B. spezifische Verhaltensweisen, die mit jeder variation verknüpft sind), ermöglicht Ihnen getVariation() auch den Zugriff auf das Variation-Objekt, das Details über die zugewiesene variation und das zugehörige Experiment liefert. Diese Methode prüft, ob der Benutzer angesprochen wird, findet die dem Besucher zugewiesene variation und speichert sie im Speicher. Wenn track=true, sendet das SDK das Expositionsereignis bei der nächsten Tracking-Anfrage an das angegebene Experiment, was automatisch basierend auf dem tracking_interval_millisecond des SDK ausgelöst wird. Standardmäßig ist dieses Intervall auf 1000 Millisekunden (1 Sekunde) eingestellt.
Die Methode getVariation() ermöglicht es Ihnen zu steuern, ob das Tracking durchgeführt wird. Wenn track=false, werden vom SDK keine Expositionsereignisse gesendet. Dies ist nützlich, wenn Sie es vorziehen, keine Daten über das SDK zu tracken und stattdessen z. B. auf clientseitiges Tracking durch die Kameleoon-Engine zu setzen. Außerdem ist track=false hilfreich bei der Verwendung der Methode getVariations(), bei der Sie möglicherweise nur die variations für alle Flags benötigen, ohne Tracking-Ereignisse auszulösen. Weitere Informationen zur Funktionsweise des Trackings finden Sie in diesem Artikel.
Hinzufügen von Datenpunkten, um einen Benutzer anzusprechen oder Besuche in Berichten zu filtern/aufzuschlüsseln
Um einen Benutzer anzusprechen, stellen Sie sicher, dass Sie relevante Datenpunkte zu seinem Profil hinzugefügt haben, bevor Sie die feature variation abrufen oder prüfen, ob der flag aktiv ist. Verwenden Sie die MethodeaddData(), um diese Datenpunkte zum Benutzerprofil hinzuzufügen.
Um auf anderen Geräten gesammelte Datenpunkte abzurufen, verwenden Sie die Methode getRemoteVisitorData(). Diese Methode ruft Daten asynchron von den Servern ab. Es ist wichtig, getRemoteVisitorData() vor dem Abrufen der variation oder dem Prüfen, ob der feature flag aktiv ist, aufzurufen, da diese Daten möglicherweise erforderlich sind, um einen Benutzer einer bestimmten variation zuzuweisen.
Weitere Informationen zu den verfügbaren Targeting-Bedingungen finden Sie im ausführlichen Artikel zu diesem Thema.
Darüber hinaus stehen die Datenpunkte, die Sie dem Besucherprofil hinzufügen, bei der Analyse Ihrer Experimente zur Verfügung, sodass Sie Ihre Ergebnisse nach Faktoren wie dem Gerät filtern und aufschlüsseln können. Die vollständige Liste finden Sie hier.
Wenn Sie zusätzliche Datenpunkte über die automatisch erfassten hinaus tracken möchten, können Sie die Custom-Data-Funktion von Kameleoon verwenden. Mit Custom Data können Sie spezifische Informationen erfassen und analysieren, die für Ihre Experimente relevant sind. Vergessen Sie nicht, die Methode flush() aufzurufen, um die erfassten Daten zur Analyse an die Kameleoon-Server zu senden.
Tracking von Ziel-Konversionen
Wenn ein Benutzer eine gewünschte Aktion abschließt (z. B. einen Kauf tätigt), wird dies als Konversion aufgezeichnet. Um Konversionen zu tracken, verwenden Sie die MethodetrackConversion() und geben den erforderlichen Parameter goalId an.
Die Konversions-Tracking-Anfrage wird zusammen mit der nächsten geplanten Tracking-Anfrage gesendet, die das SDK in regelmäßigen Abständen sendet (definiert durch tracking_interval_millisecond). Wenn Sie es vorziehen, die Anfrage sofort zu senden, verwenden Sie die Methode flush() mit dem Parameter instant=true.
Geräteübergreifende Experimente
Um Besucher zu unterstützen, die von mehreren Geräten aus auf eine App zugreifen, ermöglicht Kameleoon die Synchronisierung zuvor gesammelter Besucherdaten über alle Geräte des Besuchers hinweg sowie den Abgleich seiner Besuchshistorie geräteübergreifend durch geräteübergreifende Experimente. Fallstudien und detaillierte Informationen darüber, wie Kameleoon Daten geräteübergreifend verarbeitet, finden Sie im Artikel über geräteübergreifende Experimente.Synchronisieren von Custom Data über Geräte hinweg
Obwohl die Synchronisierung benutzerdefinierter Zuordnungen verwendet wird, um Besucherdaten geräteübergreifend abzugleichen, ist sie nicht immer erforderlich. Im Folgenden sind zwei Szenarien aufgeführt, in denen eine Custom-Mapping-Synchronisierung nicht erforderlich ist: Gleiche Benutzer-ID auf allen Geräten Wenn auf allen Geräten konsistent dieselbe Benutzer-ID verwendet wird, wird die Synchronisierung automatisch ohne Custom-Mapping-Sync gehandhabt. Es reicht aus, die MethodegetRemoteVisitorData() aufzurufen, wenn Sie die zwischen mehreren Geräten gesammelten Daten synchronisieren möchten.
Multi-Server-Instanzen mit konsistenten IDs
In komplexen Setups mit mehreren Servern (z. B. verteilte Serverinstanzen), bei denen dieselbe Benutzer-ID serverübergreifend verfügbar ist, ist die Synchronisierung zwischen Servern (mit getRemoteVisitorData()) ausreichend, ohne dass eine zusätzliche Custom-Mapping-Synchronisierung erforderlich ist.
Kunden, die zusätzliche Daten benötigen, können sich die Beschreibung der Methode getRemoteVisitorData() ansehen, um weitere Hinweise zu erhalten. Im folgenden Code wird angenommen, dass dieselbe eindeutige Kennung (in diesem Fall der visitorCode, der auch als userId bezeichnet werden kann) konsistent zwischen den beiden Geräten verwendet wird, um Daten korrekt abzurufen.
Wenn Sie gesammelte Daten in Echtzeit synchronisieren möchten, müssen Sie den Bereich Visitor für Ihre Custom Data wählen.
- Java
- Kotlin
- Kotlin (Coroutines)
Device A
Device B
Verwendung von Custom Data für das Session-Merging
Geräteübergreifende Experimente ermöglichen es, die Historie eines Besuchers über alle seine Geräte hinweg zu kombinieren (Historien-Abgleich). Der Historien-Abgleich erlaubt das Zusammenführen verschiedener Besuchersitzungen zu einer. Um die Besuchshistorie abzugleichen, verwenden SieCustomData, um eine eindeutige Kennung für den Besucher bereitzustellen. Weitere Informationen finden Sie in der zugehörigen Dokumentation.
Nachdem der geräteübergreifende Abgleich aktiviert wurde, ruft das Aufrufen von getRemoteVisitorData() mit dem Parameter userId alle bekannten Daten für einen bestimmten Benutzer ab.
Sitzungen mit derselben Kennung erhalten in einem Experiment immer dieselbe variation. In der Visitor-Ansicht der Ergebnisseiten Ihres Experiments erscheinen diese Sitzungen als ein einzelner Besucher.
Die SDK-Konfiguration stellt sicher, dass verknüpfte Sitzungen immer dieselbe variation des Experiments sehen. Es gibt jedoch einige Einschränkungen bezüglich der geräteübergreifenden variation-Zuweisung. Diese Einschränkungen sind hier beschrieben.
Folgen Sie der Anleitung Aktivieren des geräteübergreifenden Historien-Abgleichs, um Ihre Custom Data auf der Kameleoon-Plattform einzurichten.
Anschließend können Sie das SDK normal verwenden. Die folgenden Methoden können im Kontext des Session-Merging hilfreich sein:
getRemoteVisitorData()mitisUniqueIdentifier=true, übergeben anKameleoonClientConfig- um Daten für alle verknüpften Besucher abzurufen.trackConversion()oderflush()mitisUniqueIdentifier=true, übergeben anKameleoonClientConfig- um bestimmte Daten für einen bestimmten Besucher zu tracken, der mit einem anderen Besucher verknüpft ist.
- Java
- Kotlin
- Kotlin (Coroutines)
getVisitorCode() abgerufen werden. Nachdem sich der Benutzer angemeldet hat, wird der anonyme Besucher mit der Benutzer-ID verknüpft und als eindeutige Kennung für den Besucher verwendet.
Verwendung eines benutzerdefinierten Bucketing-Schlüssels
Standardmäßig verwendet Kameleoon eine eindeutige, anonyme Besucher-ID (visitorCode), um Benutzer feature flag variations zuzuweisen. Diese ID wird normalerweise auf dem Gerät des Benutzers generiert und gespeichert (in einem Browser-Cookie für client- und serverseitige SDKs – in persistentem Speicher für mobile SDKs). In bestimmten Szenarien müssen Sie jedoch möglicherweise sicherstellen, dass alle Benutzer derselben Organisation dieselbe Variante eines feature flags sehen.
Mit der Option Custom Bucketing Key können Sie dieses Standardverhalten überschreiben, indem Sie Ihre eigene benutzerdefinierte Kennung für das Bucketing angeben. Dieses Überschreiben stellt sicher, dass die Zuweisungslogik von Kameleoon Ihren angegebenen Schlüssel anstelle des standardmäßigen visitorCode verwendet.
Anwendungsfälle
Die Verwendung eines benutzerdefinierten Bucketing-Schlüssels ist entscheidend für die Konsistenz und Genauigkeit Ihrer feature flag-Zuweisungen, insbesondere in folgenden Situationen:- Experimente auf Konto- oder Organisationsebene: Für B2B-Produkte oder Szenarien, in denen Sie alle Benutzer derselben Organisation derselben variation zuweisen möchten, können Sie eine Kennung wie eine
accountIdverwenden. Benutzerdefinierte Bucketing-Schlüssel sind entscheidend für A/B-Test-Funktionen, die ein gesamtes Team oder Unternehmen betreffen.
Technische Details
Wenn Sie einen benutzerdefinierten Bucketing-Schlüssel für einen feature flag konfigurieren, stellen Sie Kameleoon eine spezifische Kennung aus den Daten Ihrer Anwendung bereit:- Java
- Kotlin
- Bereitstellung des benutzerdefinierten Schlüssels: Sie stellen Ihre benutzerdefinierte Kennung dem Kameleoon SDK über die Methode
addData()bereit. In dieser Methode übergeben Sie Ihren gewählten benutzerdefinierten Bucketing-Schlüssel alsCustomData-Objekt. Hier bezieht sichnewVisitorCodeauf die Kennung, die Sie für Ihr Bucketing verwenden möchten (z. B. die neueuserIdoderaccountId).
- Bucketing-Logik: Sobald ein benutzerdefinierter Bucketing-Schlüssel über die Methode
addData()bereitgestellt wird, verwenden alle Hash-Berechnungen zur Zuweisung von Benutzern zu variations diesennewVisitorCode(Ihren benutzerdefinierten Schlüssel) anstelle des standardmäßigenvisitorCode. Die Verwendung desnewVisitorCodebedeutet, dass die Bucketing-Entscheidung an Ihre benutzerdefinierte Kennung gebunden ist, was konsistente Zuweisungen in verschiedenen Kontexten gewährleistet, in denen diese Kennung vorhanden ist. - Daten-Tracking und Analytics: Es ist wichtig zu beachten, dass, obwohl der
newVisitorCode(Ihr benutzerdefinierter Schlüssel) für Bucketing-Entscheidungen verwendet wird, alle nachfolgenden Daten (z. B. Tracking-Ereignisse und Konversionen) gesendet und mit dem ursprünglichenvisitorCodeverknüpft werden. Diese Trennung stellt sicher, dass Ihre Analytics individuelle Benutzerreisen und Interaktionen im weiteren Kontext Ihres Experiments genau widerspiegeln, selbst wenn das Bucketing auf einer höheren Ebene (wie einem Konto) oder über mehrere Geräte/Sitzungen hinweg durchgeführt wird. Ihre ursprünglichen Besucherdaten bleiben für umfassende Berichte erhalten.
Technische Anforderungen
Um einen benutzerdefinierten Bucketing-Schlüssel effektiv zu verwenden:- Der Schlüssel muss ein
Stringsein. - Er muss für die Entität, die Sie bucketen möchten, eindeutig sein (z. B. sollte bei der Verwendung einer
userIdjede Benutzer-ID eindeutig sein). - Der Schlüssel muss dem SDK genau zu dem Zeitpunkt zur Verfügung stehen, zu dem die feature flag-Entscheidung für diesen Benutzer oder diese Anfrage ausgewertet wird.
Targeting-Bedingungen
Die Kameleoon SDKs unterstützen eine Vielzahl vordefinierter Targeting-Bedingungen, die Sie zur Ansprache von Benutzern in Ihren Kampagnen verwenden können. Die Liste der von diesem SDK unterstützten Bedingungen finden Sie unter Verwenden Sie die Besuchshistorie, um Benutzer anzusprechen. Sie können auch Ihre eigenen externen Daten zur Ansprache von Benutzern verwenden.Fehlerbehandlung
Alle Methoden des Kameleoon SDK können nurKameleoonException oder dessen dokumentierte abgeleitete Ausnahmen auslösen (aufgeführt im Abschnitt Exceptions Thrown jeder Methode).
Diese Ausnahmen sind erwartetes Verhalten des SDK. Wenn Sie bestimmte Szenarien unterschiedlich behandeln möchten, können Sie einzelne abgeleitete Ausnahmen abfangen; andernfalls behandelt das Abfangen von KameleoonException alle SDK-bezogenen Fehler.
Obwohl unsere Unit- und Integrationstests bestätigen, dass das SDK niemals Exception oder RuntimeException auslöst, verstehen wir, dass das Patchen von SDK-Versionen auf Android schwierig sein kann und unerwartete Probleme durch Drittanbieterbibliotheken auftreten können, die eine RuntimeException auslösen könnten. Um zu verhindern, dass Ihre Anwendung in solchen seltenen Fällen abstürzt, empfehlen wir, dass Sie zusätzlich Exception (oder RuntimeException) abfangen, als zusätzliche Absicherung. Dies ist ausschließlich eine Vorsichtsmaßnahme und kein erwartetes Verhalten des SDK.
Zum Beispiel:
- Java
- Kotlin
Logging
Das SDK generiert Logs, um verschiedene interne Prozesse und Probleme widerzuspiegeln.Log-Level
Das SDK unterstützt die Konfiguration der Begrenzung des Loggings durch ein Log-Level.- Java
- Kotlin
Benutzerdefinierte Behandlung von Logs
Das SDK schreibt seine Logs standardmäßig in die Konsolenausgabe. Dieses Verhalten kann überschrieben werden.Die Begrenzung des Loggings durch ein Log-Level erfolgt unabhängig von der Log-Behandlungslogik.
- Java
- Kotlin
Übergeben des visitor codes an eine WebView
In einigen Fällen müssen Sie möglicherweise den visitor code von der nativen Anwendung an eine WebView übergeben, die Engine.js oder die Web-SDKs JavaScript oder React verwendet. Das folgende Beispiel zeigt die empfohlene Vorgehensweise:- Kotlin
- Kotlin (Jetpack Compose)
- Java
Referenz
Dies ist die vollständige Referenzdokumentation für das Kameleoon Android SDK.Initialisierung
Sobald Sie das SDK installiert haben, ist der erste Schritt die Initialisierung von Kameleoon. Alle Interaktionen Ihrer Anwendung mit dem SDK, wie z. B. das Auslösen eines Experiments, erfolgen über dieses Kameleoon-Client-Objekt.create()
Rufen Sie diese Methode vor allen anderen auf, um das SDK zu initialisieren. Diese Methode befindet sich incom.kameleoon.KameleoonClientFactory. Ihre App führt alle Interaktionen mit dem SDK über das resultierende KameleoonClient-Objekt aus, das diese Methode erstellt.
Sie können das Verhalten des SDK anpassen (z. B. die Umgebung, Anmeldedaten usw.), indem Sie ein Konfigurationsobjekt bereitstellen. Andernfalls versucht das SDK stattdessen, Ihre Konfigurationsdatei zu finden und zu verwenden.
- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
isReady()
Bei mobilen SDKs kann der Kameleoon Client nicht sofort initialisiert werden, da er einen Serveraufruf durchführen muss, um die aktuelle Konfiguration für die aktiven feature flags abzurufen. Verwenden Sie diese Methode, um zu prüfen, ob das SDK bereit ist, indem SieisReady() aufrufen, bevor Sie feature flags auslösen.
Alternativ können Sie einen Callback verwenden (siehe die Methode runWhenReady() für Details).
- Java
- Kotlin
Rückgabewert
runWhenReady()
- 🔄 Führt eine asynchrone Anfrage aus (wenn die Konfiguration veraltet oder nicht vorhanden ist)
KameleoonClient nicht sofort initialisiert werden, da er einen Serveraufruf durchführen muss, um die aktuelle Konfiguration für alle feature flags abzurufen. Verwenden Sie die Methode runWhenReady(), um die Zeit bis zur Einsatzbereitschaft des Clients zu überbrücken. Außerdem können Sie einen maximalen Timeout-Zeitraum festlegen, um zu steuern, wie lange der Client wartet, bevor er bereit ist.
Wenn result.getOrThrow()=true, ist der KameleoonClient initialisiert und bereit, und die feature flags werden mit ihren jeweiligen variations ausgelöst. Wenn das Ergebnis false ist oder ein Timeout auftritt, wird die Initialisierung nicht erfolgreich abgeschlossen.
Der Callback oder der auf Coroutinen basierende Code sollte eine Logik enthalten, um die Referenz-variation anzuwenden, da der Benutzer aus dem feature flag ausgeschlossen wird, wenn ein Timeout auftritt.
- Java
- Kotlin
- Kotlin (Coroutines)
Argumente
Feature flags und variations
isFeatureActive()
- 📨 Sendet Tracking-Daten an Kameleoon (abhängig vom Parameter
track)
Diese Methode hieß zuvor
activateFeature und wurde in der SDK-Version 4.0.0 entfernt.featureKey als erforderliches Argument, um zu prüfen, ob die angegebene Funktion für einen Besucher aktiv ist.
Wenn der Besucher noch nie mit diesem feature flag in Verbindung gebracht wurde, gibt die Methode einen zufälligen booleschen Wert zurück (true, wenn dem Besucher diese Funktion angezeigt werden soll, andernfalls false). Wenn der Besucher bereits bei diesem feature flag registriert ist, gibt diese Methode den vorherigen featureFlag-Wert zurück.
Stellen Sie sicher, dass Sie eine ordnungsgemäße Fehlerbehandlung wie im Beispielcode gezeigt einrichten, um potenzielle Ausnahmen abzufangen.
Kameleoon verwendet Tracking, um Sitzungen und Besucher zu zählen, wenn Sie bestimmte Methoden aufrufen, wie z. B.
isFeatureActive(), getVariation() oder getVariations().Verwenden Sie den Standardwert true für den Parameter track, wenn Sie Besucher einer variation aussetzen und sie zählen müssen. Setzen Sie den Parameter track nur dann auf false, wenn Sie diese Methoden aufrufen, bevor Sie Besucher aussetzen.Wenn Sie z. B. getVariations() aufrufen, um alle variations abzurufen, bevor Sie Besucher aussetzen, setzen Sie den Parameter track auf false. Diese Einstellung verhindert, dass Kameleoon eine Sitzung verfrüht zählt. Sie können das Tracking dann später auslösen, wenn Sie den Besucher explizit aussetzen.Kameleoon sendet Tracking-Daten standardmäßig jede Sekunde. Sie können dieses Intervall über die Konfigurationsoption für das Tracking-Intervall auf bis zu fünf Sekunden konfigurieren. Kameleoon gruppiert Tracking-Ereignisse in eine einzige Sitzung, solange das Intervall zwischen den Ereignissen weniger als 30 Minuten beträgt. Wenn zwischen den Tracking-Ereignissen mehr als 30 Minuten vergehen, zählt Kameleoon die Ereignisse als separate Sitzungen. Ein Besuch erscheint 30 Minuten nach dem letzten aufgezeichneten Ereignis der Sitzung in Ihren Berichten.- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
getVariation()
- 📨 Sendet Tracking-Daten an Kameleoon (abhängig vom Parameter
track)
Variation ab, die einem bestimmten Besucher für einen bestimmten feature flag zugewiesen wurde.
Diese Methode benötigt visitorCode und featureKey als obligatorische Argumente. Das Argument track ist optional und hat standardmäßig den Wert true.
Sie gibt die zugewiesene Variation für den Besucher zurück. Wenn der Besucher mit keiner feature flag-Regel verknüpft ist, gibt die Methode die Standard-Variation für den angegebenen feature flag zurück.
Stellen Sie sicher, dass in Ihrem Code eine ordnungsgemäße Fehlerbehandlung implementiert ist, um potenzielle Ausnahmen zu verwalten.
Die Standard-variation bezeichnet die variation, die einem Besucher zugewiesen wird, wenn er keiner vordefinierten Ausspielregel für einen feature flag entspricht. Mit anderen Worten, es ist die Fallback-variation, die auf alle Benutzer angewendet wird, die nicht durch bestimmte Regeln angesprochen werden. Sie wird in einer Verwaltungsoberfläche als variation im Abschnitt „Dann für alle anderen…” dargestellt.
- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
getVariations()
- 📨 Sendet Tracking-Daten an Kameleoon (abhängig vom Parameter
track)
Variation-Objekten ab, die einem bestimmten Besucher über alle feature flags hinweg zugewiesen sind.
Diese Methode iteriert über alle verfügbaren feature flags und gibt die zugewiesene Variation für jeden flag zurück, der mit dem angegebenen Besucher verknüpft ist. Sie nimmt onlyActive und track als optionale Argumente.
- Wenn
onlyActiveauftruegesetzt ist, gibt die MethodegetVariations()feature flag variations zurück, sofern der Benutzer nicht mit deroff-variation gebucketet ist. - Der Parameter
tracksteuert, ob die Methode die variation-Zuweisungen trackt oder nicht. Standardmäßig ist er auftruegesetzt. Wenn er auffalsegesetzt ist, wird das Tracking deaktiviert.
Variation als Werte. Wenn für einen feature flag keine variation zugewiesen ist, gibt die Methode die Standard-Variation für diesen flag zurück.
Eine ordnungsgemäße Fehlerbehandlung sollte implementiert werden, um potenzielle Ausnahmen zu verwalten.
Die Standard-variation bezeichnet die variation, die einem Besucher zugewiesen wird, wenn er keiner vordefinierten Ausspielregel für einen feature flag entspricht. Mit anderen Worten, es ist die Fallback-variation, die auf alle Benutzer angewendet wird, die nicht durch bestimmte Regeln angesprochen werden. Sie wird in einer Verwaltungsoberfläche als variation im Abschnitt „Dann für alle anderen…” dargestellt.
- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
setForcedVariation()
Die Methode ermöglicht es Ihnen, einem Benutzer programmatisch eine bestimmteVariation zuzuweisen und den Standard-Auswertungsprozess zu umgehen. Dies ist besonders wertvoll für kontrollierte Experimente, bei denen die übliche Auswertungslogik nicht erforderlich ist oder übersprungen werden muss. Es kann auch in Szenarien wie Debugging oder benutzerdefiniertem Testen hilfreich sein.
Wenn eine erzwungene variation gesetzt wird, überschreibt sie die Echtzeit-Auswertungslogik von Kameleoon. Prozesse wie Segmentierung, Targeting-Bedingungen und algorithmische Berechnungen werden übersprungen. Um Segmentierung und Targeting-Bedingungen während eines Experiments zu erhalten, setzen Sie stattdessen forceTargeting=false.
Eine erzwungene variation wird gleich behandelt wie eine ausgewertete variation. Sie wird in Analytics getrackt und im Benutzerkontext wie jede standardmäßig ausgewertete variation gespeichert, um Konsistenz in der Berichterstellung zu gewährleisten.
Die Methode kann unter bestimmten Bedingungen Ausnahmen auslösen (z. B. ungültige Parameter, Benutzerkontext oder interne Probleme). Eine ordnungsgemäße Ausnahmebehandlung ist unerlässlich, um sicherzustellen, dass Ihre Anwendung stabil und ausfallsicher bleibt.
- Java
- Kotlin
Argumente
Ausgelöste Ausnahmen
In den meisten Fällen muss nur der grundlegende Fehler
KameleoonException behandelt werden, wie im Beispiel gezeigt. Wenn jedoch verschiedene Fehlertypen eine Reaktion erfordern, behandeln Sie jeden einzeln basierend auf den spezifischen Anforderungen. Außerdem können für erhöhte Zuverlässigkeit allgemeine Sprachfehler durch Einbeziehung von Exception behandelt werden.evaluateAudiences()
- 📨 Sendet Tracking-Daten an Kameleoon
evaluateAudiences() sollte nach allen relevanten Besucherdaten, die gesetzt oder aktualisiert wurden, und unmittelbar bevor eine feature variation abgerufen oder ein feature flag geprüft wird, aufgerufen werden. Dieser Ansatz stellt sicher, dass der Besucher anhand der aktuellsten verfügbaren Daten ausgewertet wird, was eine genaue Audience-Zuweisung basierend auf allen Kriterien ermöglicht.
Nach dem Aufruf dieser Methode können Sie eine detaillierte Analyse der Segmentleistung im Audiences Explorer durchführen.
- Java
- Kotlin
Ausgelöste Ausnahmen
In den meisten Fällen muss nur der grundlegende Fehler
KameleoonException behandelt werden, wie im Beispiel gezeigt. Wenn jedoch verschiedene Fehlertypen eine Reaktion erfordern, behandeln Sie jeden einzeln basierend auf den spezifischen Anforderungen. Außerdem können für erhöhte Zuverlässigkeit allgemeine Sprachfehler durch Einbeziehung von Exception behandelt werden.getDataFile()
Gibt die aktuelle SDK-Konfiguration alsDataFile-Objekt zurück.
- Java
- Kotlin
Rückgabewert
Ausgelöste Fehler
Ziele
trackConversion()
- 📨 Sendet Tracking-Daten an Kameleoon
goalId, um die Konversion für dieses bestimmte Ziel zu tracken. Außerdem akzeptiert diese Methode die Argumente revenue, metadata und negative.
Die Methode trackConversion() gibt keinen Wert zurück. Diese Methode ist nicht blockierend, da der Serveraufruf asynchron erfolgt.
- Java
- Kotlin
Argumente
Metadaten-Werte sind über Rohdaten-Exporte und die Ergebnisseite zugänglich.Wenn der Parameter
metadata angegeben wird, verwendet Kameleoon diese angegebenen Werte für die aktuelle Konversion anstelle der zuvor mit der Methode addData() gesammelten Werte. Wenn der Parameter weggelassen wird, verwendet Kameleoon die zuletzt getrackten Werte für diese CustomData vor der Konversion und innerhalb desselben Besuchs.Kameleoon berücksichtigt nur die Metadaten-Werte, die explizit als Parameter an die Methode trackConversion() übergeben werden.Im folgenden Beispiel verknüpft Kameleoon die Konversion nur mit dem benutzerdefinierten Datenwert, der explizit als Parameter angegeben wird (hier: Index 5 mit dem Wert ‘Amex Credit Card’).- Java
- Kotlin
Ereignisse
onUpdateConfiguration()
Diese Methode hieß zuvor
updateConfigurationHandler und wurde in der SDK-Version 4.0.0 entfernt.onUpdateConfiguration() ermöglicht es Ihnen, das Ereignis zu behandeln, wenn die Konfiguration Daten aktualisiert hat. Sie nimmt einen Eingabeparameter, completion. Die completion wird aufgerufen, wenn die Konfiguration über ein Echtzeit-Konfigurationsereignis aktualisiert wird.
Dieser Handler wird nur ausgelöst, wenn das SDK im Streaming-Modus (Server-Sent Events) läuft. Er wird nicht für Konfigurationsaktualisierungen aufgerufen, die im Standard-Polling-Modus (
refreshIntervalMinute) erfolgen.Argumente
- Java
- Kotlin
Besucherdaten
getVisitorCode()
Gibt den eindeutigen visitor code zurück, der im SDK verwendet wird.- Java
- Kotlin
Rückgabewert
addData()
Die MethodeaddData() fügt Targeting-Daten zum Speicher hinzu, damit andere Methoden die Daten verwenden können, um zu entscheiden, ob der aktuelle Besucher angesprochen werden soll oder nicht.
Die Methode addData() gibt keinen Wert zurück und interagiert nicht selbst mit Kameleoon-Backend-Servern. Stattdessen werden alle deklarierten Daten zur späteren Übertragung mit der Methode flush() gespeichert. Dieser Ansatz reduziert die Anzahl der Serveraufrufe, da die Daten typischerweise zu einem einzigen Serveraufruf gruppiert werden, der durch flush() ausgelöst wird.
Die Methode trackConversion() sendet ebenfalls alle zuvor zugeordneten Daten, genau wie flush(). Dasselbe gilt für die Methoden getVariation() und getVariations(), wenn eine Experimentierregel ausgelöst wird.
- Java
- Kotlin
Argumente
flush()
- 📨 Sendet Tracking-Daten an Kameleoon
flush() nimmt die mit einem Besucher verknüpften Kameleoon-Daten und sendet eine Tracking-Anfrage zusammen mit allen Daten, die zuvor mit der Methode addData() hinzugefügt wurden und noch nicht gesendet wurden, wenn eine dieser Methoden aufgerufen wird. flush() ist nicht blockierend, da der Serveraufruf asynchron erfolgt.
flush() bietet Kontrolle darüber, wann die mit einem Besucher verknüpften Daten an die Server gesendet werden. Wenn beispielsweise addData() ein Dutzend Mal aufgerufen wird, wäre es ineffizient, nach jedem addData()-Aufruf Daten an den Server zu senden. Rufen Sie flush() einmal am Ende auf.
Die Methode flush() verwendet visitorCode als eindeutige Besucherkennung, was für geräteübergreifende Experimente nützlich ist. Wenn Sie den Konfigurationsparameter isUniqueIdentifier auf true setzen, verknüpft das SDK die geleerten Daten mit dem Besucher, der mit der angegebenen Kennung verbunden ist.
- Java
- Kotlin
Argumente
getRemoteData()
- 🔄 Führt eine asynchrone Anfrage aus
Diese Methode hieß zuvor
retrieveDataFromRemoteSource und wurde in der SDK-Version 4.0.0 entfernt.siteCode und dem key-Argument (oder dem aktiven visitorCode, wenn key weggelassen wird) abzurufen. Der visitorCode und der siteCode werden in KameleoonClientFactory.create() angegeben. Daten können schnell und bequem mit der Kameleoon Data API auf hochskalierbaren Remote-Servern gespeichert werden. Die Anwendung kann die Daten dann mit dieser Methode abrufen.
- Java
- Kotlin
- Kotlin (Coroutines)
Argumente
getRemoteVisitorData()
- 🔄 Führt eine asynchrone Anfrage aus
getRemoteVisitorData() ist eine asynchrone Methode zum Abrufen von Kameleoon-Besuchsdaten für den Besucher von der Kameleoon Data API. Die Methode fügt Daten zum Speicher hinzu, damit andere Methoden sie bei Targeting-Entscheidungen verwenden können.
Daten, die mit dieser Methode abgerufen werden, spielen eine wichtige Rolle, wenn Sie:
- von anderen Geräten gesammelte Daten verwenden möchten.
- auf die Historie eines Benutzers zugreifen möchten, z. B. auf Custom Data, die während früherer Besuche gesammelt wurden.
Standardmäßig ruft
getRemoteVisitorData() automatisch die zuletzt gespeicherten Custom Data mit scope=Visitor ab und hängt sie an den Besucher an, ohne dass die Methode addData() aufgerufen werden muss. Dies ist besonders nützlich für die Synchronisierung von Custom Data zwischen mehreren Geräten.Es wird empfohlen, nur auf fehlgeschlagene Ergebnisse zu prüfen. Bei Bedarf kann jedoch überprüft werden, dass die Daten dem Besucher hinzugefügt wurden und für Targeting-Zwecke verfügbar sind (oder zum Debuggen, obwohl die Verwendung von Logging für das Debuggen besser geeignet ist). Außerdem können Daten manuell verwaltet werden, wenn der Parameter shouldAddData=false übergeben wird.- Java
- Kotlin
- Kotlin (Coroutines)
Argumente
Verwendung der Parameter von RemoteVisitorDataFilter
Die Methode getRemoteVisitorData() bietet Flexibilität, indem sie Ihnen erlaubt, verschiedene Parameter beim Abrufen von Daten zu Besuchern zu definieren. Egal, ob Sie auf Basis von Zielen, Experimenten oder variations targeten, der gleiche Ansatz gilt für alle Datentypen.
Angenommen, Sie möchten Daten über Besucher abrufen, die ein Ziel „Bestelltransaktion” abgeschlossen haben. Sie können Parameter innerhalb der Methode getRemoteVisitorData() angeben, um Ihr Targeting zu verfeinern. Wenn Sie z. B. nur Benutzer ansprechen möchten, die das Ziel in ihren letzten fünf Besuchen konvertiert haben, können Sie den Parameter previousVisitAmount auf 5 und conversions auf true setzen.
Die in diesem Beispiel gezeigte Flexibilität ist nicht auf Zieldaten beschränkt. Sie können Parameter innerhalb der Methode getRemoteVisitorData() verwenden, um Daten zu einer Vielzahl von Besucherverhalten abzurufen.
Hier ist die Liste der verfügbaren
RemoteVisitorDataFilter-Optionen:getVisitorWarehouseAudience()
- 🔄 Führt eine asynchrone Anfrage aus
warehouseKey ist normalerweise Ihre interne User-ID. Der Parameter customDataIndex entspricht der Kameleoon Custom Data, die Kameleoon zur Ansprache Ihrer Besucher verwendet. Weitere Details finden Sie in der Warehouse-Targeting-Dokumentation.
- Java
- Kotlin
- Kotlin (Coroutines)
Argumente
setLegalConsent()
Sie müssen diese Methode verwenden, um anzugeben, ob der Besucher seine rechtliche Zustimmung zur Verwendung seiner personenbezogenen Daten gegeben hat. Das Setzen des ParameterslegalConsent auf false schränkt die Arten von Daten ein, die Sie in Tracking-Anfragen einbeziehen können. Diese Methode hilft Ihnen, rechtliche und regulatorische Anforderungen einzuhalten und gleichzeitig Besucherdaten verantwortungsvoll zu verwalten. Weitere Informationen zu personenbezogenen Daten finden Sie in der Consent-Management-Richtlinie.
- Java
- Kotlin
Argumente
Datentypen
Dieser Abschnitt listet die von Kameleoon unterstütztencom.Kameleoon.Data-Typen auf. Es werden mehrere Standarddatentypen bereitgestellt, sowie der Typ CustomData zur Definition benutzerdefinierter Datentypen.
Conversion
Der hier gespeicherteConversion-Datensatz kann verwendet werden, um Experiment- und Personalisierungsberichte nach einem beliebigen damit verknüpften Ziel zu filtern.
- Java
- Kotlin
Device
Seit Android SDK
4.13.0 wird das Device automatisch basierend auf dem android.content.Context erkannt. Sie können es jedoch bei Bedarf weiterhin manuell überschreiben.- Java
Geolocation
Geolocation enthält die Geolocation-Details des Besuchers.
- Java
- Kotlin
CustomData
Definieren Sie Ihre eigenen benutzerdefinierten Datentypen in der Kameleoon-App oder der Data API und verwenden Sie sie aus dem SDK.- Der Index der Custom Data ist auf der Seite Custom Data Konfiguration der Kameleoon-App verfügbar. Achtung: Dieser Index beginnt bei 0, sodass die erste Custom Data, die Sie für eine bestimmte Site erstellen, den Index 0 hat, nicht 1.
- Das Hinzufügen einer
CustomData-Instanz, die mit einem Namen erstellt wurde, wenn die Konfiguration der SDK-Instanz nicht aktuell ist oder der Name nicht registriert ist, führt dazu, dass die Daten ignoriert werden.
- Java
- Kotlin
Rückgabetypen
DataFile
DieDataFile enthält die Details der SDK-Konfiguration.
Sie kann bei Bedarf um zusätzliche Informationen erweitert werden, wenn Kunden dies wünschen. Wenn Sie weitere Details benötigen, wenden Sie sich bitte an Ihren Customer Success Manager.
- Java
- Kotlin
FeatureFlag
DerFeatureFlag stellt eine Reihe von Eigenschaften dar, die einen feature flag selbst definieren – zum Beispiel seine Variations, Rules, den Umgebungsstatus und weitere zugehörige Details.
Er kann bei Bedarf um zusätzliche Informationen erweitert werden, wenn Kunden dies wünschen. Wenn Sie weitere Details benötigen, wenden Sie sich bitte an Ihren Customer Success Manager.
- Java
- Kotlin
Rule
DieRule stellt eine Reihe von Eigenschaften dar, die eine Regel selbst definieren – zum Beispiel ihre Variations.
Sie kann bei Bedarf um zusätzliche Informationen erweitert werden, wenn Kunden dies wünschen. Wenn Sie weitere Details benötigen, wenden Sie sich bitte an Ihren Customer Success Manager.
- Java
- Kotlin
Variation
Variation enthält Informationen über die dem Besucher zugewiesene variation (oder die Standard-variation, wenn keine spezifische Zuweisung existiert).
- Das
Variation-Objekt liefert Details über die zugewiesene variation und das zugehörige Experiment, während dasVariable-Objekt spezifische Details zu jeder Variable innerhalb einer variation enthält. - Stellen Sie sicher, dass Ihr Code den Fall behandelt, in dem
idoderexperimentIdnullsein kann, was auf eine Standard-variation hinweist. - Die
variables-Map kann leer sein, wenn keine Variablen mit der variation verknüpft sind.
- Java
- Kotlin
Variable
Variable enthält Informationen über eine Variable, die mit der zugewiesenen variation verknüpft ist.
- Java
- Kotlin
Veraltete Methoden
getFeatureVariationKey()
- 📨 Sendet Tracking-Daten an Kameleoon
Verwenden Sie stattdessen
getVariation().featureKey als erforderliches Argument, um den variation-Schlüssel für den angegebenen Benutzer abzurufen.
Wenn der Besucher noch nie mit diesem feature flag in Verbindung gebracht wurde, gibt das SDK einen zufällig zugewiesenen variation-Schlüssel zurück (gemäß den feature flag-Regeln). Wenn der Besucher bereits bei diesem feature flag registriert ist, gibt diese Methode den vorherigen variation-Schlüssel zurück. Wenn der Benutzer keiner der Regeln entspricht, wird der Standardwert zurückgegeben, der im Konto Ihres Kunden definiert ist.
Stellen Sie sicher, dass Sie eine ordnungsgemäße Fehlerbehandlung wie im Beispielcode gezeigt einrichten, um potenzielle Ausnahmen abzufangen.
- Java
- Kotlin
getFeatureVariationKey()
- 📨 Sendet Tracking-Daten an Kameleoon
Verwenden Sie stattdessen
getVariation().featureKey als erforderliches Argument, um den variation-Schlüssel für den angegebenen Benutzer abzurufen.
Wenn der Besucher noch nie mit diesem feature flag in Verbindung gebracht wurde, gibt das SDK einen zufällig zugewiesenen variation-Schlüssel zurück (gemäß den feature flag-Regeln). Wenn der Besucher bereits bei diesem feature flag registriert ist, gibt diese Methode den vorherigen variation-Schlüssel zurück. Wenn der Benutzer keiner der Regeln entspricht, wird der Standardwert zurückgegeben, der im Konto Ihres Kunden definiert ist.
Stellen Sie sicher, dass Sie eine ordnungsgemäße Fehlerbehandlung wie im Beispielcode gezeigt einrichten, um potenzielle Ausnahmen abzufangen.
- Java
- Kotlin
getActiveFeatures()
- Verwenden Sie stattdessen
getVariations(). - Hieß zuvor
getFeatureListForVisitorCodeund wurde in der SDK-Version4.0.0entfernt.
getActiveFeatures ruft Informationen über die aktiven feature flags ab, die für den Besucher verfügbar sind.
- Java
- Kotlin
Rückgabewert
getFeatureVariable()
- 📨 Sendet Tracking-Daten an Kameleoon
Verwenden Sie stattdessen
getVariation().featureKey und variableKey als erforderliche Argumente.
Wenn der Besucher noch nie mit dem featureKey in Verbindung gebracht wurde, gibt das SDK einen zufällig zugewiesenen Variablenwert für den angegebenen variation-Schlüssel zurück (gemäß den feature flag-Regeln). Wenn der Besucher bereits bei diesem feature flag registriert ist, gibt die Methode den Variablenwert für die zuvor registrierte variation zurück. Wenn der Benutzer keiner der Regeln entspricht, wird der Standardwert der Variable zurückgegeben.
Stellen Sie sicher, dass Sie eine ordnungsgemäße Fehlerbehandlung wie im Beispielcode gezeigt einrichten, um potenzielle Ausnahmen abzufangen.
- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
getFeatureVariationVariables()
- Verwenden Sie stattdessen
getVariation(). - Diese Methode hieß zuvor
getFeatureAllVariablesund wurde in der SDK-Version4.0.0entfernt.
featureKey. Sie gibt die Daten als Typ Map<String, Object> zurück, wie in der Kameleoon-App definiert. Sie löst eine Ausnahme (FeatureNotFound) aus, wenn das angeforderte Feature nicht in der internen Konfiguration des SDK gefunden wurde.
- Java
- Kotlin
Argumente
Rückgabewert
Ausgelöste Ausnahmen
getFeatureList()
Gibt eine Liste der feature flag-Schlüssel zurück, die derzeit für das SDK verfügbar sind.- Java
- Kotlin