Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Settings bundle for iPhone app

Right I am developing an app that has two lots of settings Dev and Live. Is there a way to distinguish which lot of settings should be used based on whether the app is live or still in development or do I have to change the whole settings files before it goes live.

I was unsure on how to put this so if your not sure place just ask.

like image 477
Popeye Avatar asked Jan 05 '12 14:01

Popeye


1 Answers

What you want to do is define a Preprocessor Macro based on your build configuration. So if you have a build configuration called dev and one called live you would define a different value for dev and live.

To implement this go into your apps build settings in Xcode and search for "Preprocessor Macros". Add a macro for each build target.

For dev you could add:

APP_CONFIG=0

And for live you could add:

APP_CONFIG=1

Then in your code you are able to distinguish between dev and live build configurations by a simple if statement:

#if APP_CONFIG == 0
    NSLog(@"This is the dev build.");
#else
    NSLog(@"This is the live build.");
#endif
like image 88
Brett Hamlin Avatar answered Oct 04 '22 12:10

Brett Hamlin