Firebase 远程配置是一项云端服务,可以让您更改应用的行为和外观,而无需用户下载应用更新。使用远程配置时,您能够建立应用内默认值,用于控制应用的行为和外观。以后,您即可以使用 Firebase 控制台或 Remote Config REST API,使得应用的全部用户或细分用户群得到不一样于默认值的行为和外观。您的应用可控制什么时候安装更新,并能常常检查有无更新并安装更新,且对性能的影响微乎其微。ios
//经过Cocopod导入 pod 'Firebase/RemoteConfig', 复制代码
-FIRAnalyticsDebugDisabled-->与performance同样,默认会在[FIRApp configure]; 初始化
json
Firebase DebugView调试部分
[√] FIRAnalyticsDebugDisabled : 调试关闭
[√] FIRAnalyticsDebugEnabled : 调试打开
缓存
Parameters :参数列表安全
Conditions :条件列表bash
Parameters和Conditions的限制markdown
咱们配置app_color这个参数,支持json字符串
[[FIRRemoteConfig remoteConfig]configValueForKey:@"app_color"]app
- (void)firebaseRemoteConfigure{ //过时时间。默认设置为60分钟 NSTimeInterval duration = 3600; #if DEBUG //配置设置,是否打开调试模式 FIRRemoteConfigSettings *setting = [[FIRRemoteConfigSettings alloc]initWithDeveloperModeEnabled:YES]; [FIRRemoteConfig remoteConfig].configSettings = setting; //这边测试调试,因此设置为0分钟 duration = 0; #endif // 设置60分钟触发更新 3600 [[FIRRemoteConfig remoteConfig] fetchWithExpirationDuration:duration completionHandler:^(FIRRemoteConfigFetchStatus status, NSError * _Nullable error) { if(!error){ DLog(@"FIRRemoteConfigstatus = %d",status); BOOL activateFetched = [[FIRRemoteConfig remoteConfig]activateFetched]; if (activateFetched) { //获取服务端的值 FIRRemoteConfigValue *value = [[FIRRemoteConfig remoteConfig] configValueForKey:@"app_color"]; DLog(@"FIRRemoteConfigvalue = %@, %@",value.dataValue,value.stringValue); } } }]; } 复制代码
Firebase A/B 测试可以让您轻松地运行、分析和扩展产品和营销实验,从而帮助您改进应用。它使您可以测试应用界面、功能或互动广告系列的更改,以确认这些更改是否确实使关键指标(如收入和用户留存率)较更改前有所改观。编辑器
//经过Cocopod导入 pod 'FirebaseABTesting' 复制代码
默认会在[FIRApp configure]; 初始化
经过远程配置方式获取参数数据代码参考RemoteConfig部分oop
建立remote_a/b_test实例布局
建立测试条件及参数
测试配置执行的ID凭证
经过远程配置的方式获取到参数条件