日常開發項目中若是咱們是兩個項目(項目1,項目2),部分功能徹底一致(以登錄爲例),可是其餘功能徹底不同咱們要複製一摸同樣的代碼到兩個項目中麼?ios
其實徹底不必,咱們能夠經過多工程項目開發的形式來開發app,甚至把重複的代碼提取出來到另外一個工程均可以的,以下:git
先建立一個文件夾,暫時起名爲MyProjectgithub
1.打開code,點擊左上角file(文件),建立workspacexcode
而後文件夾中會生成這個一個文件app
2.雙擊打開,會發現是個空工程,接着咱們還點擊file,建立一個project項目,加入起名字爲,MyProject1,以下,在下面選擇workspace爲第一個建立的ui
3.建立另外一個MyProject2同上,會發現目錄變成了這個樣子spa
4.而後,到這一步兩個功能就集中到一個工做臺中了,有點像以前的pod同樣吧,可讓他們兩個用一個pods倉庫,省得導入這麼麻煩 而後建立一個Podfile文件 Podfile的設置以下 ,用的時候把註釋去掉code
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
##工做臺名稱
workspace 'MyProject.xcworkspace'
## project 'MyProject1/MyPorject.xcodeproj' //項目在工做臺下的目錄名稱
def commonPods
##公共Pod項目
pod 'AFNetworking', '~> 3.1.0'
end
##項目1
target 'MyProject1' do
##項目在工做臺下的目錄名稱
project 'MyProject1/MyProject1.xcodeproj'
pod 'Masonry', '~> 1.0.2'
commonPods
pod 'YYModel' //公共pod項目
end
##項目2
target 'MyProject2' do
##項目在工做臺下的目錄名稱
project 'MyProject2/MyProject2.xcodeproj'
commonPods
end
複製代碼
5.如上配置好了以後保存,使用pod install便可導入pod成功orm
而後兩個項目都可引用一個pod了cdn
下面介紹下怎麼提取出一個通用登錄模塊(例子哈,其餘的也能夠)
而後加兩個項目中都有如出一轍的登錄界面,那麼怎麼解決呢,下面來演示,繼續重複步驟2建立便可,建立一個叫login的項目
選擇項目的時候選擇framework的形式開發,能夠當前兩個工程用(注:framework包也能夠給別的項目使用吆)
完畢後目錄以下,爲了便於後續展現,建立了一個view,並在login.h中引用了他
而後簡單配置一下環境,首先在用改功能的項目中添加一個依賴庫Link Binary With Librarys(添加前記得編譯一下framework庫呀,target選對)
而後在Build Setting中設置Header Search便可,通常是項目根目錄 "$(SRCROOT)/../Login" 後面的login是本身的framework目錄,而後便可
在編譯一下運行成功,在MyProject裏面調用Login裏面的view,發現一次成功
大功高成! 項目地址: github.com/Marshal-S/M…