2010-02-18 63 views
1

有沒有辦法根據編譯設置創建if語句?我有一個應用程序訪問基於Web的API,並且在調試模式下編譯時,我希望它使用私人測試版,但是當我編譯發佈時,我希望它使用API​​的公開實時版本。根據編譯設置更改值

目前我只有一個NSString持有的url地址。

回答

2

通常對於這樣的事情,你會使用預處理指令:

#ifdef DEBUG_MODE 
    // connect to beta version 
#else 
    // connect to live version 
#endif 

您可以定義自己的DEBUG_MODE符號,或者您也可以使用現有的(我不知道它可能是什麼要求iPhone SDK)。

2

要擴展Greg的答案,可以傳遞編譯器標誌-DDEBUG_MODE(或-D [任意名稱])來定義DEBUG_MODE,並使#ifdef的第一個分支被編譯。