测试已测试 | ✗ |
语言语言 | Obj-CObjective C |
许可协议 | BSD |
发布时间上次发布 | 2016年5月 |
由James Vanas,Matt Greenfield,Eric Waller维护。
iOS 客户端库,用 Objective-C 构建,用于 SeatGeek 的 Sixpack A/B 测试框架。
如果你希望在项目中手动包含 Sixpack-iOS,你必须将 SixPackClient Xcode 项目添加到你的工作区。
为了使链接成功,你还需要将适当的 AFNetworking 2.0 源文件添加到 Sixpack-iOS 项目中。
1. 连接到 Sixpack 服务器
在其他 Sixpack 调用之前调用 connectToHost
。通常在:application:didFinishLaunchingWithOptions:
URL 应该是你的 sixpack 挂载点的位置
[Sixpack connectToHost:@"http://my.sixpack.host:8129/sixpack/mount/point"];
2. 设置实验
在调用 connectToHost
并在参与实验之前,为每个实验调用一次 setupExperiment
[Sixpack setupExperiment:@"myExperiment"
alternatives:@[@"optionA", @"optionB"];
3. 参与实验
调用 participate
以参与实验。所选的替代方案将在 onChoose
块中返回
[Sixpack participateIn:@"myExperiment"
onChoose:^(NSString *chosenAlternative) {
if ([chosenAlternative isEqualToString:@"optionA"]) {
... Do option A work
} else if ([chosenAlternative isEqualToString:@"optionB"]) {
... Do option B work
}
}];
4. 转换
在达到目标后,使用实验名称调用 convert
[Sixpack convert:@"myExperiment"];
参与实验后,你可以随时获取该实验所选的替代方案
+ (NSString *)chosenAlternativeFor:(NSString *)experiment;
参与实验后,你可以检查是否选择了特定的替代方案
+ (BOOL)chosenAlternativeFor:(NSString *)experiment is:(NSString *)alternative;
例如
if ([Sixpack chosenAlternativeFor:@"myExperiment" is:@"optionA"]) {
[self.view addSubview:self.viewA];
} else {
[self.view addSubview:self.viewB];
}
使用此设置方法来强制实验结果
+ (void)setupExperiment:(NSString *)experiment
alternatives:(NSArray *)alternatives
forceChoice:(NSString *)forcedChoice;
你可以打开和关闭调试日志。调试日志默认在 DEBUG 构建中开启,在 RELEASE 构建中关闭。在提交到应用商店之前,请确保将其关闭
+ (void)enableDebugLogging:(BOOL)debugLogging;
Sixpack-iOS 在 FreeBSD 许可证下可用。有关更多信息,请参阅 LICENSE 文件。