Android-quickstart
Binnen een paar minuten leest je Android-app een echte feature flag — duurzaam gecacht, veilig offline, met de apparaatidentiteit voor je gemunt en opgeslagen.
Vereist minSdk 26 (Android 8.0). Kotlin, met coroutines als enige dependency-familie.
1. Installeren
Section titled “1. Installeren”De SDK is pre-release (v0.1.0) en is nog niet gepubliceerd naar Maven Central of enig ander register. Heeft je team toegang gekregen tot de repository, gebruik hem dan als source dependency — een Gradle included build van
FortressFlag_SDK_android, waarvan de library-modulefortressflagis.
2. Start de SDK
Section titled “2. Start de SDK”Eén keer, bij het opstarten van de app — je Application.onCreate is de natuurlijke plek:
import com.fortressflag.sdk.Configurationimport com.fortressflag.sdk.Environmentimport com.fortressflag.sdk.FortressFlag
FortressFlag.start( context, Configuration( sdkKey = "ffc_prod_…", // van het SDK-sleutelscherm van je project environment = Environment.PRODUCTION, ),)De SDK laadt gecachte waarden onmiddellijk en polt op de achtergrond naar wijzigingen. De sleutel is een clientsleutel — hij gaat by design mee in je app.
3. Lees een flag
Section titled “3. Lees een flag”if (FortressFlag.isEnabled("new-checkout", default = false)) { // toon de nieuwe checkout}stringValue en numberValue lezen multivariate flags op dezelfde manier, en elke read
wordt uit het geheugen geserveerd — geen I/O, geen netwerk, op welke thread je ook
aanroept.
Dat is het — je flag is live. Zet hem om in het dashboard en de app volgt bij zijn volgende poll.
Als FortressFlag plat ligt, ligt jouw app dat niet
Section titled “Als FortressFlag plat ligt, ligt jouw app dat niet”isEnabled, stringValue en numberValue throwen nooit. Elke read valt terug via de
laatste waarden die dit apparaat werkelijk zag — ook uit vorige runs, via de duurzame
cache — en dan op je standaard op de aanroepplek. Een storing bereikt je gebruikers nooit.
Twee platformfeiten, voordat ze een factuur bereiken
Section titled “Twee platformfeiten, voordat ze een factuur bereiken”FortressFlag factureert per apparaat, en Android heeft twee feiten die je vooraf wilt kennen:
- Identiteit is vandaag per app. Draait een gebruiker drie van je apps op één telefoon, dan telt dat op dit moment als maximaal drie apparaten — Android-apps delen nog geen FortressFlag-identiteit zoals een iOS-appfamilie dat kan.
- Je app verwijderen wist de identiteit. Android wist de Keystore-gedekte data van de app bij verwijdering, dus een herinstallatie munt een verse identiteit — en telt als een nieuw apparaat. (Dit verschilt van iOS, waar de keychain blijft bestaan.)
De identiteit zelf is willekeurig gemunt en gepseudonimiseerd — nooit afgeleid van
ANDROID_ID of enige hardware-identifier. En emulators munten een sim_-identiteit:
normaal flags geserveerd, nooit gefactureerd.
Waar nu heen?
Section titled “Waar nu heen?”- Hoe flags je app bereiken — wat de achtergrondpoll doet
- Apparaatidentiteit en facturering — het volledige identiteitsverhaal
- Targeting — serveer verschillende waarden aan verschillende apparaten