2012-01-05 21 views
5

Right我正在開發一個包含Dev和Live兩個設置的應用程序。有沒有一種方法根據應用程序是否正在運行或仍在開發中來區分應使用哪些設置,還是必須在整個設置文件上線之前更改整個設置文件?適用於iPhone應用程序的設置包

我不確定如何把這個,所以如果你不知道的地方問。

+0

@Downvoter如果您認爲適合downvote請留下評論爲什麼,如果你是我們呃在我的所有問題上都做了多次降價,請保留原因。 – Popeye 2013-09-05 14:31:59

回答

7

你想要做的是根據你的構建配置定義一個預處理宏。所以如果你有一個名爲dev的構建配置,另一個名爲live,你會爲dev和live定義一個不同的值。

要實現這一點,請進入Xcode中的應用程序構建設置並搜索「預處理器宏」。爲每個構建目標添加一個宏。

用於開發可以添加:

APP_CONFIG=0 

而活,你可以添加:

APP_CONFIG=1 

然後在你的代碼,你可以和DEV區分住建配置,通過一個簡單的,如果聲明:

#if APP_CONFIG == 0 
    NSLog(@"This is the dev build."); 
#else 
    NSLog(@"This is the live build."); 
#endif 
+0

+1 This。這是將調試控制添加到代碼的最佳方式。您還應該使用它來重載NSLog以從生產級代碼中移除浪費的日誌和其他類似的東西。 – Hyperbole 2012-01-05 15:08:01

+1

好吧,現在它可以區分Dev和Live,但是我會在哪裏放置它來真正選擇正確的設置包。我會把它放在AppDelegate.m中,如果有的話,在哪裏? – Popeye 2012-01-05 15:35:34

+0

@Popeye:你有解決這個問題的方法嗎?我遇到了類似的情況,我需要根據DEV或PROD構建選擇正確的設置包。我可以區分版本,但不知道在哪裏傳遞正確的設置包。 – Abhinav 2012-07-06 18:09:04

相關問題