Reputation: 8118
I'm having a class with stuff that changes per build. For the debug build some network calls are different because of another server, release and mock too.
In Android I use flavors and put in each flavor a file with the same name but the code is different.
I'm searching for the same possibility in xCode. I've seen tutorials like this but thats doing it via plists. But it's not working for classes.
Upvotes: 0
Views: 21
Reputation: 316
There are so many ways to do this.
My personal favorite is to use multiple Targets. I won't go into real detail here as a simple google search should reveal plenty of information on how to create and work with multiple targets. I prefer targets because it is so simple to switch between them depending upon your needs and the fact that you can have each of the targets on one device as needed. For example you can have a current production version of your app on the device along with your latest dev and QA versions as well.
An alternative would be to use "Categories" - again google should get you plenty of information to implement.
Use the category to extend your class with the specific information you need for each environment. Create multiple iterations of your category (one for each group of settings) and use a pre-build script to copy the desired instance into your project.
Upvotes: 1