如何在iOS SDK中获取优化的数据文件版本号?

时间:2019-05-23 14:25:20

标签: ios objective-c optimizely

如何从iOS中的Optimizely的json文件获取数据文件版本/修订号

2 个答案:

答案 0 :(得分:0)

这个问题似乎缺少很多有用的信息。我不熟悉Optimizely,但是我深入研究了他们的文档,并找到了示例json格式的数据文件

The example data file shown here显示版本号可以在键version下找到,修订号可以在键revision下找到。

如果您在本地拥有文件,则可以这样访问版本和修订信息:

NSString *path = [[NSBundle mainBundle] pathForResource:@"datafile" ofType:@"json"];
NSError *error;
NSData *data = [NSData dataWithContentsOfFile:path];
NSDictionary *dataDict =  [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
if(error) { return; } // or handle the error however you want
NSString *version = dataDict[@"version"];
NSString *revision = dataDict[@"revision"];  

如果需要从他们的服务器中获取数据文件,则需要向适当的端点发出请求,然后序列化JSON响应。这是我找到的用于获取数据文件的文档:https://docs.developers.optimizely.com/full-stack/docs/get-the-datafile#section-access-the-datafile-via-the-app

答案 1 :(得分:0)

数据文件version和数据文件revision是两个独立的概念。

version是数据文件的内部架构版本。每当数据文件将新字段添加到其架构中时(例如优化添加功能标志时),此值就会递增。

revision是指数据文件位于Optimizely项目的哪个修订版。每当您对Optimizely项目进行更改时,都会生成一个新的数据文件,并且修订号会增加。

您可以致电

OPTLYClient *client = [OPTLYManager initialize];
OPTLYProjectConfig *config = client.config;
NSString *version = config.version;
NSString *revision = config.revision;