有沒有辦法根據編譯設置創建if
語句?我有一個應用程序訪問基於Web的API,並且在調試模式下編譯時,我希望它使用私人測試版,但是當我編譯發佈時,我希望它使用API的公開實時版本。根據編譯設置更改值
目前我只有一個NSString
持有的url地址。
有沒有辦法根據編譯設置創建if
語句?我有一個應用程序訪問基於Web的API,並且在調試模式下編譯時,我希望它使用私人測試版,但是當我編譯發佈時,我希望它使用API的公開實時版本。根據編譯設置更改值
目前我只有一個NSString
持有的url地址。
通常對於這樣的事情,你會使用預處理指令:
#ifdef DEBUG_MODE
// connect to beta version
#else
// connect to live version
#endif
您可以定義自己的DEBUG_MODE
符號,或者您也可以使用現有的(我不知道它可能是什麼要求iPhone SDK)。
要擴展Greg的答案,可以傳遞編譯器標誌-DDEBUG_MODE(或-D [任意名稱])來定義DEBUG_MODE,並使#ifdef的第一個分支被編譯。