多環境配置主要有以下幾種形式:
1、建立多target
應用場景:僅在開發target下測試乙個功能如果是oc
**中使用dev
預定義巨集:
如果是swift
**中使用dev
預定義巨集:
其中-d的含義檢視如下:(也就是將宣告的變數設定為true)
使用如下**即可實現:
#if dev
nslog(@"dev");
#else
nslog(@"***");
#endif
2、建立scheme
通過新增不同的scheme
對應不同開發環境
應用場景:不同的開發環境配置不同的host
info.plist
中新增如下欄位供外界呼叫:
使用**如下:
nsstring *infopath = [nsbundle.mainbundle pathforresource:@"info" oftype:@"plist"];
nsdictionary *infodic = [[nsdictionary alloc] initwithcontentsoffile:infopath];
nslog(@"%@",infodic[@"host_url"]);
通過多3、通過xcconfig檔案管理build settings中的配置scheme
也可以通過build settings
配置不同的圖示…
pod 中引入的檔案就是通過xcconfig
檔案管理build settings
中的配置
建立自己的xcconfig
檔案,並修改系統xcconfig
檔案配置:
注意:xcconfig
檔案的命名需要以所在資料夾的名稱作為字首然後是專案名、環境名稱
使用xcconfig
定義不同環境的host_url
config-testcode-debug.xcconfig
檔案中新增:host_url =
info.plist
中新增如下欄位供外界呼叫:
使用**如下:
nsstring *infopath = [nsbundle.mainbundle pathforresource:@"info" oftype:@"plist"];
nsdictionary *infodic = [[nsdictionary alloc] initwithcontentsoffile:infopath];
nslog(@"%@",infodic[@"host_url"]);
config-testcode-debug.xcconfig
檔案中新增動態庫的配置:other_ldflags = -framework "afnetworking"
host_url = 192.168.1.100
// ld
other_ldflags = -framework "afnetworking"
如果使用自己建立的xcconfig
檔案本質就是key-value
,可以配置build settings
中的絕大部分字段
xcconfig
檔案中對應build settings
中字段的縮寫對應關係參考: xcode build settings
xcconfig
檔案那麼執行pod install
就會提示我們pod
生成的xcconfig
檔案可能不會產生效果。要解決這個問題就需要在我們自己建立的xcconfig
檔案中引入pod
生成的xcconfig
檔案:
// 絕對路徑、相對路徑都可以
#include "pods/target support files/pods-testcode/pods-testcode.debug.xcconfig"
自己建立的xcconfig
檔案中存在pod
生成的xcconfig
檔案中相同的字段,那麼就會覆蓋pod
中的字段,因此要想兩個檔案中的字段都生效需要使用繼承標識:
other_ldflags = $(inherited) -framework "afnetworking"
1、url變數中存在//,後面的字串會被當做注釋// 通過定義乙個變數來解決
2、使用變數時和
{}和和()包括變數作用相同
3、條件設定
other_ldflags[config=debug
][sdk=iphonesimulator*
][arch=x86_64
] = $(inherited) -framework 「afnetworking」
經過上述條件設定後afnetworking
庫僅會在debug、模擬器、x86_64
架構下編譯
[sdk=iphoneos*]表示真機
web開發如何配置多環境
在web應用程式開發過程中,常常會牽扯到開發環境這個話題,通常來說,至少存在兩個開發環境 生產環境和測試環境。問題在於,在不同的開發環境下,需要用到不同的設定 如資料庫連線等 那麼問題來了 如何讓程式自動識別所處的開發環境是哪個開發環境呢?1 配置多個入口檔案 symfony框架的做法 目前幾乎所有...
iOS開發專案篇 01環境搭建
ios開發專案篇 01環境搭建 一 基本過程 1.新建乙個專案 1 刪除storyboard 2 在配置介面中,把main 刪除,手動設定 2.準備素材 說白了,這種情況下,如果手機是3.5英吋的ios7系統,則看不到該啟動動畫。設定方法,右鍵單擊show in finder,修改json檔案。co...
Gradle多環境配置
在開發中遇到了多個不同的環境,比如測試環境,上線環境,甚至根據不同開發組有多個環境,平常做法就是建乙個類來儲存,然後在裡面不停的注釋來達到切換環境的效果,其實gradle提供了多環境配置,配置起來也挺簡單的,也不用之前的無腦注釋了.首先開啟自己的gradle,在buildtype裡面有當前的兩個環境...