用途:为移动应用提供功能开关(Feature Flag)的架构与实现模式,支持远程配置、本地开关、A/B 测试与灰度发布。
主要能力:定义 FeatureFlagProvider 接口(Kotlin),提供布尔、字符串、整数、双精度取值与 refresh 方法;用 sealed class FeatureFlag 定义类型安全开关及默认值;通过 FeatureFlagManager 做类型安全求值。集成 Firebase Remote Config(Android 与 iOS),含默认值 XML/Plist 与 fetchAndActivate。集成 LaunchDarkly Android SDK,支持 mobileKey、LDContext 与 flag 变更监听。本地开关支持 BuildConfig 字段与 SharedPreferences 调试菜单覆盖。KMP 通过 commonMain 接口与 androidMain/iosMain 实现共享开关。灰度发布用 userId 哈希取模百分比;A/B 测试按变体分配并上报分析事件。
使用方式:实现 FeatureFlagProvider 接口,按需选择 Firebase、LaunchDarkly 或本地实现;用 FeatureFlag 定义开关键与默认值,经 FeatureFlagManager 读取;远程配置需设置默认值并调用 refresh;LaunchDarkly 默认流式更新,无需手动刷新。
适用场景:移动端渐进式发布、远程开关控制、实验分组、开发调试开关。
限制:资料未提供具体收费、价格、平台支持范围与效果数据;示例中的密钥、用户 ID 等为占位内容,需替换为真实配置。