自动使用不同的常量进行开发

时间:2011-09-12 14:28:59

标签: ios xcode

我的iOS应用使用特定服务器进行制作:http://mydomain.com/serverapi。在开发过程中,我想将其更改为http://localhost/serverapi。什么是告诉XCode默认使用本地URL的优雅方式。

显然,非常重要的是,生产版本包含生产URL(在XCode中存档。

另一个用例是在开发过程中更改图标或应用程序标识符,以便能够告诉应用程序除了可能已经安装在设备上的版本。

2 个答案:

答案 0 :(得分:6)

我使用宏(如Pablo建议的那样),但如果你有一个单独的Info.plist文件用于不同的构建配置(就像我一样),那么你可以在Info.plist中有一个自定义条目并像访问它一样这样:

 [[[NSBundle mainBundle] infoDictionary] objectForKey:@"MyAppURL"]

但是,在编译时,宏在运行时可能会更快。这只是另一种选择。

下面是项目设置的图片。

enter image description here

答案 1 :(得分:4)

您可以使用C语言MACROS。

像这样:

#ifdef DEBUG
#define URL @"http://localhost/serverapi"
#else
#define URL @"http://mydomain.com/serverapi"
#endif

然后,在您的代码中,您只需使用定义的常量:

NSLog(@"Hello, my current url is %@", URL);