1. 程式人生 > >第三方庫管理:CocoaPods簡介

第三方庫管理:CocoaPods簡介

本文翻譯自Joshua Greene的部落格

這裡寫圖片描述
使用第三方庫做一些應用非常簡單!

在本教程中,您將學習如何使用名為CocoaPods流行的第三方庫管理工具。
別急!什麼是第三方庫管理工具,為什麼你需要它?

作為一名iOS開發者,你肯定使用了大量的其它供應商的程式碼,已各種第三方庫的方式。試想一下,這將是多麼困難的是,如果你要自己從頭開始一切!

如果沒有相關的管理工具,你可能只是每個庫的程式碼新增到您的專案。然而,這具有一些缺點:

  • 庫程式碼儲存在您的專案中,浪費空間。

  • 有沒有中央的地方,你可以看到所有可用的庫。

  • 很難找到並更新一個庫的新版本,特別是如果幾個庫需要一起​​更新。

  • 在專案中下載和使用圖書館,你可能會對這些程式碼做出改變(使其難以在以後更新它們)。

一個第三方庫管理工具可以幫助你克服這些問題。它將獲取原始碼庫,解決庫之間的依賴關係,甚至創造和保持合適的環境,以降低專案的麻煩程度。

你會在本教程中學到第三方庫管理工具CocoaPods的使用經驗。具體而言,您將建立一個使用多種開源庫,獲取並從流行的電視和電影資訊網站trakt.tv(請 翻 牆)顯示資訊的應用程式。

CocoaPods會使這個專案更加容易。請仔細閱讀!

開始

開始之前:本教程假設您熟悉Xcode中,用命令列(command line)工作,使用AFNetworking和JSON資料格式。如果你對這些東西完全陌生(一個基本的瞭解,應該沒問題),你應該參考本網站的

其他教程

根據他的官方網站,CocoaPods是“在Objective-C的專案管理庫的依賴關係的最佳途徑。”而在這種情況下,廣告是真的!

這裡寫圖片描述

你可以讓CocoaPods為你下載和更新第三方庫,而不是從GitHub上下載程式碼,並將其複製到您的專案(從而使將來的更新困難)。

在本教程中,你將建立一個應用程式,使用trakt.tv顯示即將到來的電視節目。如果你還沒有聽說過它,trakt可以幫助你跟蹤你觀看節目。 Trakt還有一些其他功能,但是在本教程中你只需要用到一個。

要開始,你首先需要安裝CocoaPods。 CocoaPods執行在Ruby中,這是它唯一需要的環境。幸運的是,所有最新版本的Mac OS X的(從OS X 10.7開始)已經安裝了,因此,所有你需要做的就是更新RubyGems(只是為了確保你有一個最新版本)。

要做到這一點,開啟終端,輸入以下命令:

sudo gem update --system

當要求輸入密碼。終端輸出應該是這個樣子:

這裡寫圖片描述

此更新可能需要一段時間,所以要有耐心,並給它一些時間才能完成。如果你好奇,也可以看看終端裡面的一些變化。你可以忽略這些變化。接下來,你需要安裝CocoaPods。輸入端子此命令這樣做:

sudo gem install cocoapods

你可能會在安裝過程中收到這樣的提示:

rake's executable "rake" conflicts with /usr/bin/rake
Overwrite the executable? [yN]

如果是這樣,只需 輸入y 繼續

最後,在終端中輸入下面的命令來完成CocoaPods的設定:

pod setup

這個過程可能會需要一段時間,太好了,你現在是設定為使用CocoaPods!

這裡寫圖片描述

“Show Tracker”APP的介紹

在這裡下載本教程的啟動程式碼。這提供了一個基本的使用者介面。

開啟Main.storyboard,你會看到只有一個檢視控制器:

這裡寫圖片描述

這是起始的的檢視控制器,就取名為 ViewController

它有一個 UIScrollView 連線了一個 IBOutlet到 showsScrollView 的聲明裡,一個 UIPageControl 連線到 showsPageControl

它也為 showsPageControl 設定了一個delegate,並提供了一個簡單地方法: pageChanged 它傳遞 showsPageControl 中事件改變的值。

現在,關閉xcode。

安裝你第一個第三方庫

開啟終端,用cd命令符找到 ShowTracker 工程的位置,

cd ~/Path/To/Folder/Containing/ShowTracker

接下去,輸入下面的命令:

pod init

他將創造一個預設的 Podfile ,他是你以後更新和新增第三方庫的入口。
接下去的一行命令用來使用xcode開啟這個podfile:

open -a Xcode Podfile

這個預設的 Podfile 看起來像這樣:

# Uncomment this line to define a global platform for your project
# platform :ios, "6.0"

target "ShowTracker" do

end

用以下程式碼替換 # platform :ios, “6.0”

platform :ios, "7.0"

這告訴CocoaPods你的專案是針對iOS7的 。

許多第三方庫 - 包括AFNetworking - 有一個最低的iOS版本要求。如果省略這一行,CocoaPods假定一個預設的目標版本。

終於到了用CocoaPods來新增第一個庫了!在 Podfile 中的 target “ShowTracker” do: 後面新增下面程式碼:

target "ShowTracker" do:

這告訴CocoaPods你要使用AFNetworking 2.2.1版本(本教程寫作時的最新版本)作為你的專案庫。

這個連結有關於Podfile格式和語法的更多資訊。如果你想要做的更復雜的東西(如指定“任何版本高於”一個庫的特定版本),你一定要來看看。

儲存並關閉 Podfile

你現在需要告訴CocoaPods為您的專案為“裝”的第三方庫。在終端輸入以下命令這樣做(確保你仍然在含ShowTracker專案Podfile的目錄):

pod install

您應該看到輸出類似以下內容:

Analyzing dependencies
Downloading dependencies
Installing AFNetworking (2.2.1)
Generating Pods project
Integrating client project

它也可能告訴你,這樣的事情:

[!] From now on use `ShowTracker.xcworkspace`.

非常重要!你會在你的專案中看到 ShowTracker.xcworkspace. 這樣一個檔案,這個Cocoapods為你建立的,記住,以後需要開啟這個檔案來寫程式碼。

關閉Xcode專案(如果您有它開啟)和開啟 ShowTracker.xcworkspace

註冊Trakt

你可以使用Trakt的API之前,你首先需要註冊一個免費賬戶。別擔心 - 它的快速和容易的事情!

註冊後,進入setting - > API頁面,讓您的API KEY。接下來,離開這個頁面,但你很快就會需要這個KEY。

注:本來想繼續更新的,後來發現trakt.tv這個網址被牆。既然Cocoapods的安裝已經實現,那就這樣吧。