CocoaPods-based Swift project template for Xcode

事情是這樣的, Apple 良心發現發佈了自已的 Swift, 而我需要在 Swift 中使用 CocoaPods (確切來說應該是在 Swift 中使用 Objective-C 和 C), 而據我所知目前只有兩種方法:

第一種看似方便的 Hacking 用下來發現會出現一堆詭異且隨機的事情,更新 Pods 後還得經常手動刪除 ModuleCache, 而且也不被 CocoaPods 官方所推薦。於是俺決定做回良民使用第二種,但很快又發現每次新建一個 Project 都這麼幹的話,煩的要死不說,而且還容易出錯 (Typo 什麼的最討厭了)。作為 no zou no die 星人,只好祭出 customise 自己的 Project Template 這一大招一勞永逸的解決這煩人的問題,實際用下效果不錯而且一路順風順水,那些詭異又隨機的錯誤也再沒有出現過,實為居家旅行必備良藥。

CocoaPods Application.xctemplate 的說明:

  • 繼承自 com.apple.dt.unit.emptyApplication, SDK platform 為 iphoneos
  • 自動創建 PodfileBridging-Header.h 並加入 Supporting Files 組內
  • 自動將 Building SettingsSWFIT_OBJC_BRIDGING_HEADER 指向 Supporting Files 下的 Bridging-Header.h 而無須再手動設定

CocoaPods Application.xctemplate 的使用:

  • git clone 下來放到你認為合適方便的目錄, 如 $HOME/Dropbox/repos
  • ln -s “$HOME/Library/Developer/Xcode/Templates/Project Templates/iOS/Application/CocoaPods Application.xctemplate” <Your-cloned-location>
  • 新建 CocoaPods project 後照常 pod install 然後打開 <Your-Project>.xcworkspace
  • Supporting Files/Bridging-Header.h 中直接導入需要 expose 給 Swift 的 libraries 即可

CocoaPods Application.xctemplate 在這裏: github.com

That’s it, 歡迎拍磚 :-)