FortressFlag

SDK

技术栈每一层都有 SDK

面向 iOS、Android 和 Web 的客户端 SDK;面向 Go、Node.js、Python 和 Java 的服务端 SDK。它们共享同一个保证:FortressFlag 出故障也绝不会拖垮你的应用 - 每一次读取都会解析成一个值,而不是抛出异常。

客户端 SDK

iOS (Swift)

swift · spm

按设备拉取 flag,并带一份持久的本地缓存:每一次读取先回落到这台设备最后看到的值,再回落到 false - 它还会生成按设备计费所依据的那个稳定、尊重隐私的设备标识,这个标识在你的应用家族中共用,且绝不从硬件标识符推导。

Android (Kotlin)

kotlin · minSdk 26

同样的持久缓存和同样的失效安全回落链,用 Kotlin 原生实现:isEnabled 这类方法从不抛异常。它遵循和 iOS 相同的跨平台设备标识契约 - 一个随机的假名标识符,绝不从硬件 ID 推导。

Web / JavaScript

typescript · zero deps

面向浏览器的零依赖 TypeScript:没有调用会抛异常,也没有 promise 会 reject - 故障、断网和广告拦截器都会解析成一个值。用 navigator.webdriver 声明自己是自动化的浏览器照常服务,但从不计费。

服务端 SDK

Go

go · zero deps

ffs_ 服务端密钥轮询 ruleset 导出,并在进程内本地求值 - 每次 flag 判断都不走网络,求值从不返回错误,也从不 panic。

Node.js

typescript · esm · node 22+

同样的契约和同样的本地求值,用 TypeScript 写成。仅 ESM,零运行时依赖 - Node 22+ 上的 CommonJS 依然可以用 require() 加载它。轮询器绝不会在你的代码跑完之后还让进程活着。

Python

pure stdlib · 3.11+

纯标准库,同步 API 在 asyncio 应用里也是安全的 - 求值就是一次内存读取,没有任何东西要 await。轮询器是守护线程,绝不阻塞解释器退出。

Java

java 17+ · zero deps

零依赖,连 JSON 也是 - 有界的解析器就住在 SDK 里,你的依赖树里不会多出任何东西。boolValue 这类 getter 从不抛异常,守护轮询器也绝不阻塞 JVM 退出。

你的技术栈已经齐全。现在就开始

注册、生成一个 SDK 密钥,今天下午你的应用就能读到真实的 flag - 每月活跃设备前 1,000 台免费.

免费试用