2011-09-12 37 views
4

我的iOS應用程序使用特定服務器進行生產:http://mydomain.com/serverapi。在開發過程中,我想將其更改爲http://localhost/serverapi。默認情況下,告訴XCode使用本地URL的優雅方式是什麼?自動使用不同的常量進行開發

顯然,這是非常重要的,一個產能釋放包含生產URL(存檔XCode中。

另一種使用情況是改變圖標或應用標識符,而在發展,要能分辨應用從

回答

6

我用宏這個(如巴勃羅建議),但如果你有不同的生成配置一個單獨的Info.plist文件(如我這樣做),那麼你可以在你的Info.plist和訪問它的自定義項,像這樣:

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

然而,宏很可能在較快運行,因爲它們是在編譯這僅僅是另一種選擇。

以下是項目設置的圖像。

enter image description here

+0

你如何在這些plists之間切換? – Besi

+0

您可以在項目的目標版本設置中定義哪個版本用於每個配置(RELEASE,DEBUG等),作爲Info.plist文件。 –

+0

爲了我的目的,我現在有兩個目標,這對我的目的很好。然後我通常可以爲每個目標使用一個特定的plist文件。 – Besi

4

可能已經安裝在設備上的版本可以使用C語言宏

這樣的:

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

然後,在你的代碼,你只需要使用定義的常量:

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

好吧我會試試這個。我想我可以在XCode的運行配置文件設置中定義DEBUG參數。 – Besi

+0

你能爲新手更清楚地說明步驟嗎?你在哪裏定義DEBUG?這是包含在XCode中的已知構建設置,還是我可以稱之爲「開發」以及相同的結果? – user798719

相關問題