最近有和上家公司一起做iOS的同事交流溝通,才發(fā)現(xiàn)自己的技術(shù)點有些許落后了.同事已經(jīng)用Swift或者ObjectiveC嵌套Swift
方式開發(fā)項目了,而我還停留在ObjectiveC
的階段.
為了使自己不被淘汰,所以開始強(qiáng)迫自己用Swift
開發(fā)了. 雖然去年花了點時間學(xué)習(xí)了Swift
,但是公司項目都是OC的原因,也一直沒有實際將Swift
用在項目開發(fā)當(dāng)中. 先用ObjectiveC嵌套Swift
方式來一點點實踐.
學(xué)和用是兩回事,Swift的道路上,有許多的坑,這里記錄一下.
關(guān)于`Carthage是什么?這里我簡單把它理解為CocoaPods.
但是又有所區(qū)別,想更深入的了解和使用Carthage
,英文好的程序猿/媛們可以自行閱讀其Github
上的README.md文件. 英文不好的也不用擔(dān)心,網(wǎng)上也有很多寫的很詳細(xì)的文章,這里簡單貼幾篇,我就不花費太多的篇幅介紹了.
1 - Carthage:去中心化的Cocoa依賴管理器 2 - Carthage 初探:四大優(yōu)勢與四大劣勢 3 - 如何使用Carthage管理iOS依賴庫 4 - 攻城利器 —— Carthage簡單介紹 5 - Carthage使用心得-讓自己的項目支持Carthage
下面我就講解一下怎么以最少的步驟,最省事的方法,使用Carthage
給iOS的項目文件配置Swift
第三方庫
我們安裝下面兩個比較流行的Swift
第三方庫,作示例
Swift
上的AFNetworkingKingfisher - Swift
上的SDWebImage我們可以通過以下2種方式去安裝Carthage
homebrew
安裝 終端下分別運行以下2行命令 $brew udpate
$brew install carthage
推薦使用第一種方式安裝.使用homebrew
時,運行$brew update
時,特別慢,甚至失敗
Cartfile
文件使用Cartfile
列出我們想要使用的`frameworks
這里,我們不需要像Podfile
文件的創(chuàng)建一樣,必須要到特定的項目目錄下建立文件. 我們可以在電腦上一次性配置后,多個項目使用.
這里我將Cartfile
文件放置在我的 /Users/Story5/Story5/ITMeterial/Swift
文件夾下.
以下操作都在終端下運行
cd
進(jìn)入到該目錄下touch
創(chuàng)建Cartfile
文件framwork
將下面的代碼寫到你的Cartfile
文件里,保存并關(guān)閉
這里說一下,這么書寫是怎么來的 我們進(jìn)到Alamofire的GitHub
主頁,會看到這樣的圖標(biāo) ,表示該庫支持Carthage%20往下滾動頁面,我們會看到
Carthage
下面有這樣一行代碼%20github%20"Alamofire/Alamofire"%20~>%204.4
,將其寫入Cartfile文件即可
carthage update
安裝framwork我們會看到類似這樣的提示Cloning Alamofire
,耐心等待一下
當(dāng)再次看到以下提示時,表示我們的Swift
庫已經(jīng)安裝成功了 Building scheme "Alamofire iOS" in Alamofire.xcworkspace
framework
導(dǎo)入到工程中framework
所在目錄進(jìn)入我們之前創(chuàng)建Cartfile
的目錄下,我們會發(fā)現(xiàn)多了個Carthage
文件夾,依次進(jìn)入~/Carthage/Build/iOS
,我們會看到Carthage
為我們生成的兩個framework
Alamofire.framework
Kingfisher.framework
framework
導(dǎo)入到項目中直接將生成的兩個framework
拖到工程中,在彈出的菜單中勾選Copy items if needed
選項
依次點擊項目文件
–>Targets
–>General
–>Embedded Binaries
,點擊+
,將我們之前導(dǎo)入的兩個framework
添加進(jìn)來,如下圖所示
到這里為止,我們所需的配置都已經(jīng)成功了,接下來就按API Reference
編寫我們的Swift
代碼就可以了
新聞熱點
疑難解答