English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Metodo dettagliato di utilizzo di CocoaPods su iOS

1、Cos'è CocoaPods

1、Perché serve CocoaPods
Quando si sviluppa iOS, è inevitabile utilizzare librerie open source di terze parti, come SBJson, AFNetworking, Reachability, ecc. Quando si utilizzano queste librerie, di solito è necessario:

Scaricare il codice sorgente delle librerie open source e aggiungerlo al progetto
Aggiungere ai progetti i framework utilizzati dalle librerie open source
Risolvere le dipendenze tra le librerie open source e tra le librerie e tra le librerie e il progetto, controllare le librerie duplicate aggiunte, ecc.
Quando le librerie open source vengono aggiornate, è necessario eliminare le librerie open source utilizzate nel progetto e ripetere i tre passaggi precedenti, il che può rendere la testa grande...
Dopo l'introduzione di CocoaPods, queste attività complesse non ci richiedono più sforzi manuali. Dobbiamo solo fare una piccola configurazione, e CocoaPods farà tutto il lavoro per noi!

2、Cos'è CocoaPods
CocoaPods è uno strumento che ci aiuta a gestire le dipendenze delle librerie di terze parti. Può risolvere le dipendenze tra le librerie, scaricare il codice sorgente delle librerie e, contemporaneamente, creare un workspace di Xcode per connettere queste librerie di terze parti al nostro progetto, rendendole disponibili per lo sviluppo.

L'uso di CocoaPods ci permette di gestire automaticamente, in modo concentrato e intuitivo, le librerie open source di terze parti.

2、Installazione di CocoaPods

1、Installazione
CocoaPods è implementato in Ruby, quindi per usarlo è necessario avere un ambiente Ruby. Fortunatamente, il sistema OS X di default può eseguire Ruby, quindi dobbiamo solo eseguire i seguenti comandi:

$ sudo gem install cocoapods 

CocoaPods viene installato come un pacchetto gem di Ruby. Durante il processo di installazione, ci potrebbe chiedere se vogliamo aggiornare rake, digitare y. Questo è perché il pacchetto gem di rake verifica più dettagliatamente durante l'installazione, e se ci sono nuove versioni disponibili, apparirà l'opzione menzionata
Alla fine del processo di installazione, eseguire il comando:

$ pod setup

Se non si sono verificati errori, significa che l'installazione è stata completata con successo!
2、Problemi che potresti incontrare durante l'installazione
① Dopo aver eseguito il comando install, non c'è stata alcuna reazione per mezz'ora
Questo potrebbe essere dovuto al fatto che il repository predefinito di Ruby utilizza cocoapods.org, e l'accesso a questo indirizzo a volte presenta problemi in Cina. Una soluzione suggerita online è sostituire l'indirizzo remoto con quello di Taobao, seguendo il metodo seguente:

$ gem sources --remove https://rubygems.org/ 
// Attendere che ci sia una risposta prima di inserire i seguenti comandi 
$ gem sources -a http://ruby.taobao.org/ 

Per verificare se il sostituto è stato sostituito con successo, è possibile eseguire:

$ gem sources -l 

L'output normale è:

*** FONTI ATTUALI *** 
http://ruby.taobao.org/ 

② La versione di gem è troppo vecchia
gem è il pacchetto standard per la gestione delle librerie e dei programmi Ruby, se la versione è过低 anche potrebbe causare il fallimento dell'installazione, la soluzione naturale è aggiornare gem, eseguire il comando seguente:

$ sudo gem update --system 

③ Dopo aver completato l'installazione, viene visualizzato un errore durante l'esecuzione del comando pod setup:

/Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:298:in `to_specs': Non è stato trovato 'cocoapods' (>= 0) tra i 6 gem totali (Gem::LoadError)
	from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:309:in `to_spec'
	from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/lib/ruby/site_ruby/1.9.1/rubygems/core_ext/kernel_gem.rb:53:in `gem'
	from /Users/wangzz/.rvm/rubies/ruby-1.9.3-p448/bin/pod:22:in `<main>'

Questo è un problema di configurazione del percorso, che può essere risolto eseguendo:

$ rvm use ruby-1.9.3-p448 

Risolvere questo problema.
3. Aggiornamento di CocoaPods
L'aggiornamento è semplice, è sufficiente eseguire nuovamente il comando di installazione:

$ sudo gem install cocoapods 

Occorre notare che se durante l'installazione è stato utilizzato sudo, durante l'aggiornamento è necessario utilizzare la stessa chiave di comando, altrimenti dopo l'aggiornamento potrebbe verificarsi di nuovo il problema di non corrispondenza delle percorso.


3. Utilizzo di CocoaPods
Se tutto è andato bene finora, puoi ora sperimentare la magia di CocoaPods, è necessario seguire i seguenti passaggi:

Per dimostrare questo processo, ho creato un progetto chiamato CocoaPodsTest.

1, creare il file Podfile
Tutto in CocoaPods inizia da un file chiamato Podfile, dobbiamo creare questo file prima di tutto. Abituo a usare la riga di comando, farò così:

$ cd /Users/wangzz/Desktop/CocoaPodsTest
$ touch Podfile

Prima di tutto, entrare nella directory radice del progetto e creare un file Podfile vuoto, come mostrato nella struttura della directory creata di seguito:

(PS: Il file Podfile può anche non essere collocato nella directory radice del progetto, ma potrebbe essere un po' più complicato. Ne parlerò in un articolo successivo, per favore, rimani sintonizzato.).

2, editare il file Podfile
A seconda delle esigenze, possiamo scrivere le librerie di terze parti necessarie nel file Podfile. Prendiamo come esempio le librerie SBJson, AFNetworking e Reachability, il contenuto del mio Podfile è il seguente:

platform :ios
pod 'Reachability', '~> 3.0.0'
pod 'SBJson', '~> 4.0.0'
platform :ios, '7.0'
pod 'AFNetworking', '~> 2.0'

3, eseguire il comando di importazione
Dopo aver completato la preparazione, iniziare a importare le librerie di terze parti:

$ cd /Users/wangzz/Desktop/CocoaPodsTest
$ pod install

Prima di tutto, entrare nella directory radice del progetto e poi eseguire il comando pod install, CocoaPods inizia a fare una serie di lavoro come scaricare il codice sorgente, configurare le dipendenze, introdurre i framework necessari, ecc., e il risultato dell'esecuzione del comando è stampato come segue:

Analizzando le dipendenze
Scaricando le dipendenze
Installando AFNetworking (2.1.0)
Installando JSONKit (1.5pre)
Installando Reachability (3.0.0)
Generando il progetto Pods
Integrando il progetto client
[!] Da ora in poi utilizzare `CocoaPodsTest.xcworkspace`.

Questo significa che il comando pod install è stato eseguito con successo. Vediamo ora le modifiche avvenute nella directory radice del progetto, come mostrato nella figura seguente:

Si può vedere che sotto la directory radice del progetto sono stati aggiunti tre elementi: CocoaPodsTest.xcworkspace, il file Podfile.lock e la directory Pods.

(PS: a causa della limitazione dello spazio, il file Podfile.lock verrà descritto nel prossimo articolo della serie, prego di fare attenzione.)

Guardiamo l'ultima riga del contenuto stampato dopo l'esecuzione del comando pod install:

[!] Da ora in poi utilizzare `CocoaPodsTest.xcworkspace`.

Suggerisce che a partire da ora dobbiamo utilizzare il file CocoaPodsTest.xcworkspace per lo sviluppo.
Per quanto riguarda le variazioni del progetto, ci sono alcuni punti da spiegare:

Le librerie di terze parti saranno compilate come librerie statiche per l'uso del nostro progetto reale


CocoaPods organizzerà tutte le librerie di terze parti in modo che vengano create come progetto denominato Pods, che si trova nel directory appena creato Pods. L'intero progetto delle librerie di terze parti genererà una libreria statica denominata libPods.a per l'uso del nostro progetto CocoaPodsTest.

Il nostro progetto e il progetto delle librerie di terze parti saranno gestiti da un nuovo workspace
Per facilitare la gestione intuitiva del progetto e delle librerie di terze parti, il progetto CocoaPodsTest e il progetto Pods saranno organizzati e gestiti come workspace, ossia il file CocoaPodsTest.xcworkspace che abbiamo visto prima.

Le impostazioni del progetto originale sono state modificate. A questo punto, se apriamo direttamente il file del progetto originale per compilare, verrà visualizzato un errore. Dobbiamo utilizzare il workspace appena creato per la gestione del progetto.

Apri CocoaPodsTest.xcworkspace, l'interfaccia è come segue:

La struttura dei directory del progetto è molto chiara.

Riferisci i file di intestazione delle librerie di terze parti aggiunte al progetto, esegui l'operazione di compilazione, e il successo è garantito!
Fino a questo punto, la guida sull'uso di CocoaPods è giunta al termine. In seguito, ho intenzione di introdurre qualcosa di più profondo su CocoaPods in un altro articolo, prego di fare attenzione.

Quattro, Risorse

1、http://code4app.com/article/cocoapods-install-usage
2、http://cocoapods.org/

Ti potrebbe interessare