Quickstart de Android
Em poucos minutos o seu app Android vai ler uma feature flag de verdade — com cache durável, seguro offline, com a identidade do dispositivo gerada e armazenada para você.
Requer minSdk 26 (Android 8.0). Kotlin, com coroutines como a única família de dependências.
1. Instale
Seção intitulada “1. Instale”O SDK mora em um repositório público no GitHub — consuma-o como uma dependência de
código-fonte: clone FortressFlag_SDK_android na tag v1.0.0 e adicione-o ao seu projeto
como um included build do Gradle, cujo módulo de biblioteca é fortressflag.
git clone --branch v1.0.0 https://github.com/FortressFlag/FortressFlag_SDK_android2. Inicie o SDK
Seção intitulada “2. Inicie o SDK”Uma vez, na inicialização do app — o seu Application.onCreate é o lugar natural:
import com.fortressflag.sdk.Configurationimport com.fortressflag.sdk.Environmentimport com.fortressflag.sdk.FortressFlag
FortressFlag.start( context, Configuration( sdkKey = "ffc_prod_…", // da tela Chaves de SDK do seu projeto environment = Environment.PRODUCTION, ),)O SDK carrega os valores em cache imediatamente e consulta mudanças em segundo plano. A chave é uma chave de cliente — ela viaja no seu app por design.
3. Leia uma flag
Seção intitulada “3. Leia uma flag”if (FortressFlag.isEnabled("new-checkout", default = false)) { // mostre o novo checkout}stringValue e numberValue leem flags multivariadas do mesmo jeito, e toda leitura é
servida da memória — sem I/O, sem rede, em qualquer thread de onde você chamar.
É isso — a sua flag está no ar. Ligue-a no painel e o app acompanha no próximo polling.
Se o FortressFlag cair, o seu app não cai
Seção intitulada “Se o FortressFlag cair, o seu app não cai”isEnabled, stringValue e numberValue nunca lançam exceção. Toda leitura recorre aos
últimos valores que este dispositivo realmente viu — inclusive de execuções anteriores, via
cache durável — e depois ao padrão do ponto de chamada. Uma queda nunca chega aos seus
usuários.
Dois fatos de plataforma, antes que cheguem a uma fatura
Seção intitulada “Dois fatos de plataforma, antes que cheguem a uma fatura”O FortressFlag cobra por dispositivo, e o Android tem dois fatos que vale conhecer de antemão:
- Hoje a identidade é por app. Se um usuário roda três dos seus apps em um celular, isso atualmente conta como até três dispositivos — apps Android ainda não compartilham uma identidade do FortressFlag do jeito que uma família de apps iOS consegue.
- Desinstalar o seu app apaga a identidade. O Android limpa os dados do app protegidos pelo Keystore na desinstalação, então uma reinstalação gera uma identidade nova — e conta como um dispositivo novo. (Isso difere do iOS, onde o keychain persiste.)
A identidade em si é gerada aleatoriamente e é pseudônima — nunca derivada do ANDROID_ID
nem de nenhum identificador de hardware. E emuladores geram uma identidade sim_: recebem
flags normalmente, nunca são cobrados.
Para onde ir agora
Seção intitulada “Para onde ir agora”- Como as flags chegam ao seu app — o que o polling em segundo plano faz
- Identidade do dispositivo e cobrança — a história completa da identidade
- Segmentação — sirva valores diferentes a dispositivos diferentes