為了手頭上的1個項目,我需要使用 CommonCrypto 庫中的 HMAC 函數(shù).雖然蘋果在 swift 中已提供了許多系統(tǒng)庫,但是 CommonCrypto 不在其中.慶幸的是,要使用這個庫其實不怎樣費事,只需要做1點額外的工作.
開始訪問庫
在使用庫之前,我們需要通知 Swift編譯器.要完成這個進程,我們有兩種方式.它們都能在示例工程中正常運行,但是你應(yīng)當根據(jù)你代碼的用處來選擇具體的方式.好消息是,你隨意使用那種方式,然后如果在后面需要另外一種的話,要切換那是相當簡單.
最簡單的訪問1個庫的方式是使用 OC 橋接頭文件.由于 OC 是 C 的超集.所以這個橋接頭文件也能夠讓你訪問純 C 庫.如果你的 swift 工程里面沒有橋接頭文件,那末自己創(chuàng)建1個,這個步驟簡單的要死.
右鍵你的工程,然后添加1個 OC 文件,隨意起個名字(1會我們就刪掉這個文件).
1旦你建立好這個文件, Xcode 將會詢問你是不是需要配置1個 OC 橋接頭文件,固然選擇”是”.然后刪掉你剛剛建立的OC 文件(不是頭文件…).這個頭文件將會被命名成 項目名- Birdging-Header.h
.打開這個文件,并且導(dǎo)入你需要的 C 庫.
需要注意的是,許多庫需要額外的鏈接器設(shè)置,例如,在其它鏈接器標識中的-lfoo
會告知鏈接器去鏈接到 libfoo. 請在你的 Xcode 項目的 Buid settings 里面設(shè)置好.
雖然橋接頭文件的方式是如此的簡單易行,但是它卻有個很關(guān)鍵的局限