Zum Inhalt springen

Android-Quickstart

In ein paar Minuten liest deine Android-App ein echtes Feature Flag — dauerhaft gecacht, offline sicher, mit einer Geräteidentität, die für dich erzeugt und gespeichert wird.

Erfordert minSdk 26 (Android 8.0). Kotlin, mit Coroutines als einziger Abhängigkeitsfamilie.

Das SDK liegt in einem öffentlichen Repository auf GitHub — binde es als Source-Abhängigkeit ein: klone FortressFlag_SDK_android am Tag v1.0.0 und füge es deinem Projekt als Gradle Included Build hinzu, dessen Library-Modul fortressflag heißt.

Terminal window
git clone --branch v1.0.0 https://github.com/FortressFlag/FortressFlag_SDK_android

Einmal, beim App-Start — dein Application.onCreate ist der natürliche Ort:

import com.fortressflag.sdk.Configuration
import com.fortressflag.sdk.Environment
import com.fortressflag.sdk.FortressFlag
FortressFlag.start(
context,
Configuration(
sdkKey = "ffc_prod_…", // aus dem Bildschirm SDK-Schlüssel deines Projekts
environment = Environment.PRODUCTION,
),
)

Das SDK lädt gecachte Werte sofort und fragt im Hintergrund nach Änderungen. Der Schlüssel ist ein Client-Schlüssel — er steckt by design in deiner App.

if (FortressFlag.isEnabled("new-checkout", default = false)) {
// den neuen Checkout zeigen
}

stringValue und numberValue lesen multivariate Flags genauso, und jede Lesung wird aus dem Speicher bedient — kein I/O, kein Netzwerk, auf welchem Thread auch immer du aufrufst.

Das war’s — dein Flag ist live. Schalte es im Dashboard um, und die App folgt mit ihrer nächsten Abfrage.

Wenn FortressFlag ausfällt, fällt deine App nicht aus

Abschnitt betitelt „Wenn FortressFlag ausfällt, fällt deine App nicht aus“

isEnabled, stringValue und numberValue werfen nie. Jede Lesung fällt zurück auf die letzten Werte, die dieses Gerät tatsächlich gesehen hat — auch aus früheren Läufen, über den dauerhaften Cache — und dann auf deinen Standard an der Aufrufstelle. Ein Ausfall erreicht deine Nutzer nie.

Zwei Plattformfakten, bevor sie eine Rechnung erreichen

Abschnitt betitelt „Zwei Plattformfakten, bevor sie eine Rechnung erreichen“

FortressFlag rechnet pro Gerät ab, und Android hat zwei Fakten, die du vorab kennen solltest:

  • Die Identität ist heute pro App. Wenn ein Nutzer drei deiner Apps auf einem Telefon benutzt, zählt das derzeit als bis zu drei Geräte — Android-Apps teilen sich noch keine FortressFlag-Identität, so wie eine iOS-App-Familie es kann.
  • Das Deinstallieren deiner App löscht die Identität. Android räumt die Keystore-gestützten Daten der App bei der Deinstallation ab, sodass eine Neuinstallation eine frische Identität erzeugt — und als neues Gerät zählt. (Das unterscheidet sich von iOS, wo die Keychain bestehen bleibt.)

Die Identität selbst wird zufällig erzeugt und ist pseudonym — nie aus ANDROID_ID oder irgendeiner Hardware-Kennung abgeleitet. Und Emulatoren erzeugen eine sim_-Identität: Flags werden normal ausgeliefert, nie abgerechnet.