Tutorial Pas a Pas de CocoaPods

31 oct Tutorial Pas a Pas de CocoaPods

Publicat a les 09: 00hen CocoaPods, Intermedi, SwiftporLuis R

Introducció

CocoaPods. Estic segur que has sentit parlar d’aquesta eina.

Es tracta del Gestor de Dependències més conegut i utilitzat en Desenvolupament iOS.

És una eina fonamental que et farà la vida més fàcil a l’hora de treballar amb llibreries externes en els teus projectes amb Swift i Objective-C.

Si no has treballat mai amb CocoaPods, aquest tutorial és per a tu.

2. Què vas a aprendre en aquest Tutorial?

Aquests són els punts més importants en què ens centrarem:

  • Què és CocoaPods?
  • Per què hauries utilitzar CocoaPods en els teus projectes iOS?
  • Com configurar un Projecte iOS amb CocoaPods?

Comencem!

3. Què és CocoaPods?

Com hem comentat a del principi, CocoaPods és un Gestor de Dependències per a Projectes iOS. Però comencem pel bàsic.

Què és un Gestor de Dependències?

Quan parlem de Dependències, ens referim a Llibreries Externes que volem integrar en els nostres projectes. Si mai abans has integrat una llibreria externa en algun dels teus projectes iOS, et recomano que facis un cop d’ull a un dels nostres últims tutorials, on pots veure pas a pas aquest procés:

Integrant Llibreries Externes en els teus projectes

Ara que ja entens a què ens referim quan parlem de dependències, podríem arribar a la conclusió que si CocoaPods es tracta d’un gestor de dependències, la seva missió serà automatitzar part d’aquest procés d’integració i manteniment de les llibreries externes en els nostres projectes.

Exacte, aquesta és la seva funció.

4. Per què hauries utilitzar CocoaPods en els teus projectes iOS?

Si has fet una ullada a el tutorial que t’he recomanat a l’apartat anterior hauràs vist pas a pas el procés manual d’afegir una llibreria externa a un projecte iOS .

Bàsicament el procés consisteix en això:

  • Cerca l’enllaç de descàrrega de l’última versió de la llibreria.
  • Descarregar aquesta llibreria.
  • Afegeix la carpeta amb la llibreria al nostre projecte en Xcode.
  • Comprovar si la nostra llibreria depèn d’altres llibreries.
  • en cas afirmatiu descarregar-les també.
  • Afegir-les a nostre projecte en Xcode.

Tot aquest procés es pot fer de forma ràpida i senzilla utilitzant CocoaPods.

Si això no et sembla suficient avantatge, et vaig a mostrar un problema molt comú que pot sorgir si no utilitzes CocoaPods.

la Maledicció de les Llibreries

Imagina que has integrat de forma manual (Sense utilitzar CocoaPods) la llibreria AFNetworking en un dels teus projectes.

AFNetworking és juntament amb Alamofire la llibreria de comunicacions més important i utilitzada en Desenvolupament iOS. Anem a usar-la com exemple en el Programa d’aprenentatge sobre CocoaPods

La teva aplicació està funcionant perfectament amb AFNetworking. Un dia, Mattt Thompson el principal desenvolupador de la llibreria, allibera una nova versió que millora la seguretat i corregeix alguns bugs importants detectats en versions anteriors.

Què és el que fas? Es tracta d’una nova versió que augmenta la seguretat de les comunicacions de la llibreria.

Ummm … Seguretat … Sona a que he de actualitzar la llibreria si o si.

Et toca accedir a l’repositori de AFNetworking, descarregar el SDK complet de nou i afegir-lo a la teva projecte iOS.

i si un mes després el bo de Mattt torna a alliberar una altra versió?

Hauríem de tornar a repetir el procés.

I si en comptes d’en un projecte estàs treballant en 5 projectes? Hauries d’anar actualitzant totes les teves aplicacions amb cada nova versió.

Això et portaria a convertir-te en esclau de la teva codi.

CocoaPods et permet automatitzar la recerca, descàrrega i integració de noves versions de llibreries externes en els teus projectes iOS.

Només per aquest motiu hauries de plantejar seriosament utilitzar-lo.

Encara no t’he convençut?

Bé, doncs com a última mesura desesperada et diré que hi ha una empresa bastant coneguda que l’utilitza de manera intensiva en els seus desenvolupaments: Google

Si Google utilitza CocoaPods, vol dir que es tracta d’una gran eina. Si nosaltres com a desenvolupadors disposem d’una gran eina ia més és gratis, no se m’acut cap raó per no utilitzar-la.

5. Instal·lant CocoaPods al teu ordinador

Instal·lar CocoaPods és un procés molt senzill.Simplement has d’obrir el terminal del teu sistema i escriure la següent comanda:

1

sudo gem install cocoapods

CocoaPods es distribueix mitjançant Ruby i com en OS X, Ruby està disponible per defecte en el nostre sistema, podem utilitzar aquesta comanda per instal·lar-lo fàcilment.

Després d’teclejar aquesta instrucció, se’ns sol·licitarà la nostra contrasenya d’Administrador per continuar . Un cop l’hagis introduït hauràs d’esperar uns instants fins que el procés d’instal·lació. A l’acabar, en el teu terminal apareixerà alguna cosa similar a això:

cocoapods terminal installing

Si es produís algun error durant la instal·lació et recomano que actualitzis a l’última versió de Ruby Gems amb la següent comanda i després tornis a intentar instal·lar CocoaPods:

1

sudo gem update –system

6. Usant CocoaPods en un dels nostres projectes

Una vegada que hem instal·lat CocoaPods, vegem com utilitzar-lo.

Anem a crear un projecte de prova en Xcode per demostrar com podem instal·lar la llibreria AFNetworking a través d’CocoaPods.

Si t’interessa la instal·lació de qualsevol altra llibreria a algun dels teus projectes, els passos que has de seguir són exactament iguals als que veurem amb AFNetworking

Crea un nou projecte en Xcode. Tria la plantilla “Single View Application”. Pots nomenar-TestingCocoaPods. Deixa la resta d’opcions tal com veus a la imatge:

cocoapods new project

A l’desar el projecte, assegura’t de guardar en l’escriptori del teu Mac. És important per poder seguir pas a pas aquest tutorial.

el següent que faràs, una vegada que has creat i guardat el projecte a l’escriptori serà tancar-lo. Sí, com sents, tanca el teu projecte i tanca Xcode. El primer que farem és configurar CocoaPods en el nostre projecte i per això ara mateix no necessitem Xcode.

Obre el Terminal de nou i tecleja la següent comanda:

1

cd ~ / Desktop / TestingCocoaPods

Això ens permetrà navegar a través de l’terminal a la ruta exacta on està guardat el nostre projecte.

Per a poder configurar CocoaPods en qualsevol projecte has de situar-mitjançant el Terminal a la ruta exacta on estigui guardat dit projecte

en creant un Podfile

el següent que farem serà crear un Podfile.

Un Podfile és un fitxer que s’emmagatzema en el directori arrel del nostre projecte i s’encarrega de gestionar els pods que vulguem instal·lar en el nostre projecte.

Sí, ja sé quina és la teva va seguir ens pregunta: ¿I què és un Pod?

Un pod és simplement una referència a una llibreria externa que vulguem afegir al nostre projecte.

A manera de resum, CocoaPods funciona de la següent manera:

  1. Vam crear un Podfile a l’arrel del nostre projecte.
  2. Aquest PodFile tindrà un Pod per cadascuna de les llibreries que anem a afegir a la nostra aplicació.
  3. CocoaPods abans de realitzar qualsevol canvi, utilitza el fitxer Podfile per saber que és el que ha de fer.

Anem llavors a pel pas 1.

Per a crear el Podfile en el nostre projecte, escriu la següent comanda al terminal:

1

pod init

CocoaPods generarà un Podfile com aquest:

1
2
3
4
5
6
7
8
9
10
11

# Uncomment the next line to defineix a global platform for your project
# platform: is, ’10 .0 ‘
target’ TestingCocoaPods ‘do
# Comment the next line if you’r not using Swift and do not want to use dynamic frameworks
use_frameworks!
# Pods for TestingCocoaPods
end

de fet, si accedeixes a directori arrel del teu projecte podràs veure com el fitxer Podfile apareix aquí mateix.

cocoapods podfile created Aquesta seria l’estructura bàsica de l’Podfile. El que hem de fer ara és editar aquest fitxer per a poder afegir els nostres pods.

Editant el Podfile amb Vim

Per a realitzar l’edició d’aquest fitxer utilitzarem un editor anomenat Vim. Vim és un programada incorporat dins de cada Mac que permet editar fitxers de text directament des del terminal.

Per editar el Podfile escriu la següent comanda al teu terminal:

1

vim Podfile

a través d’aquesta comanda accedeixes a l’Vim. Es mostrarà en la teva terminal una pantalla com aquesta:

cocoa pods editing pod file with vim Tenint en compte que la llibreria que volem integrar en el nostre projecte és AFNetworking , hauràs d’editar el podfile i afegir la següent línia just abans de l’end de el fitxer:

1

pod ‘AFNetworking’, ‘~ > 3.0’

l’aspecte que hauria de tenir el teu podfile després d’afegir aquesta línia és el següent:

1
2
3
4
5
6
7
8
9
10

# Uncomment the next line to defineix a global platform for your project
# platform: is, ’10 .0 ‘
target’ TestingCocoaPods ‘do
# Comment the next line if you’r not using Swift and do not want to use dynamic frameworks
use_frameworks!
# Pods for TestingCocoaPods
pod ‘AFNetworking’, ‘~ > 3.0’
end

Un cop hem afegit el pod de AFNetworking haurem de guardar els canvis i sortir.

Per fer això en Vim, prem la tecla Esc i tecleja això:

1

: wq

Això vol dir, Write and Quit. És a dir, guardar canvis i tancar Vim.

Resum de l’Podfile

Abans de continuar, vegem un petit resum de l’podfile:

  • Les línies que apareixen darrere de # són comentaris, de manera que realment no influeixen en el nostre fitxer
  • La primera línia que veiem és target ‘TestingCocoaPods’ do. El que especifica aquesta línia és el nom de el projecte on estem afegint CocoaPods. Adopta el nom del nostre projecte en Xcode.
  • La següent línia és use_frameworks! Aquesta línia indica a CocoaPods que utilitzarem frameworks en lloc de llibreries estàtiques. Simplement queda’t amb que aquesta línia és obligatòria quan treballes amb projectes en Swift.
  • L’última línia és pod ‘AFNetworking’, ‘~ > 3.0’ i defineix que utilitzarem un pod que correspon amb la llibreria de AFNetworking, amb una versió determinada. Es poden especificar diferents versions utilitzant alguns operadors. Pots consultar de forma exacta el que significa l’operador ~ > i la resta d’operadors de CocoaPods, en aquesta pàgina.

En aquest punt tal vegada et preguntis com he sabut el nom de l’pod que he de fer servir per afegir la llibreria AFNetworking.

Tens dues opcions per conèixer aquest nom:

Opció 1: A través de la pàgina oficial: cocoapods.org

cocoapods cocoapods.org web

Des de la web oficial de CocoaPods pots fer una recerca de qualsevol llibreria que vulguis afegir al teu projecte. Per exemple, si busquem AFNetworking, veuràs que tens una sèrie de resultats en la part inferior.Si fas clic a la primera opció que ens ofereix (que correspon amb la llibreria sense cap altre framework afegit) es mostrarà a la web un apartat anomenat Podfile on ve la línia que hauríem d’afegir en el nostre fitxer podfile:

cocoapods afnetworking instalation

Opció 2: Directament a la documentació de la llibreria

Si per exemple, accedeixes a el repositori de aFNetworking podràs veure com hi ha un apartat anomenat Installation with CocoaPods on apareix perfectament explicat l’aspecte que ha de tenir el teu fitxer Podfile per afegir aquesta llibreria. La majoria de llibreries conegudes disposen d’aquest apartat en la seva documentació.

cocoapods installation from afnetworking repository

Ara que ja has comprès a l’ 100% el funcionament de el fitxer PodFile, anem amb l’últim comando que has d’introduir al teu terminal perquè CocoaPods realitzi la instal·lació de AFNetworking:

1

pod install

CocoaPods començarà a descarregar la llibreria i instal·larà el pod de AFNetworking en el nostre projecte.

Tingues paciència perquè és probable que en la teva terminal aparegui “Setting up CocoaPods màster repo “durant alguns minuts.

el problema que hi ha en aquest punt és que el terminal no ens mostra en cap moment si el procés d’instal·lació està avança camino correctament. Tot i que CocoaPods és una eina molt fiable, com qualsevol altre programa, no és perfecte, pel que pot passar que el procés de descàrrega / instal·lació de la nostra llibreria es quedi congelat per algun error i nosaltres no ens assabentem.

Aprofitant el Monitor d’Activitat

hi ha un petit truc per saber si el procés està realitzant la descàrrega correctament.

Simplement has d’anar a l’Monitor d’Activitat del teu Mac, accedir a l’apartat Xarxa i buscar el procés git-remote-https. Aquest procés és el que està fent la feina d’instal·lació de la nostra llibreria. Si veus que passats uns segons, els bytes rebuts no avancen, et recomano que cancells el procés utilitzant les tecles Ctrl + C des del terminal i repeteixis de nou la comanda d’instal·lació.

cocoapods process downloading Després de realitzar la descàrrega i instal·lació, es crearà un espai de treball en el teu projecte anomenat TestingCocoaPods.xcworkspace. Aquest espai de treball englobarà al teu projecte original en Xcode ia la llibreria AFNetworking.

A partir d’ara, per obrir el teu projecte, hauràs de obrir-lo des del fitxer TestingCocoaPods.xcworkspace en lloc d’utilitzar com sempre TestingCocoaPods.xcodeproj.

7. Fent l’ullet a l’aspecte final del nostre projecte

Com acabem de dir, obre el teu projecte fent doble clic al fitxer TestingCocoaPods.xcworkspace.

Pots veure que dins el nostre espai de treball tenim dos projectes:

  • TestingCocoaPods (El nostre projecte original)
  • Pods (El projecte que conté la nostra llibreria AFNetworking )

cocoapods Xcode with afnetworking added d’aquesta manera, ja tenim afegida la llibreria aFNetworking i podem utilitzar-la en qualsevol part del nostre projecte.

Si vols comprovar que tot funciona correctament pots afegir la següent línia de codi al teu fitxer ViewController.swift just després d’import UIKit:

1

import AFNetworking

Com veus, Xcode no dóna cap error i el nostre projecte compila perfectament.

cocoapods project compiling El més important de tot aquest procés, és que a partir d’ara, CocoaPods gestionarà automàticament la llibreria AFNetworking del nostre projecte, de manera que no haurem de preocupar-nos de realitzar nosaltres aquest treball.

8. Resum Final i Descàrrega de el Projecte

Aquests són els punts més importants que hem vist en el tutorial d’aquesta setmana:

  • Què és CocoaPods?
  • Per a què serveix CocoaPods?
  • Avantatges d’utilitzar CocoaPods
  • Com configurar CocoaPods en els teus projectes iOS pas a pas
  • Com afegir una llibreria externa al teu projecte iOS utilitzant CocoaPods

Pots descarregar el projecte complet que hem desenvolupat seguint aquest tutorial des d’aquí.

9. Has acabat el Tutorial

Espero que hagis gaudit aquest tutorial i sobretot et serveixi per poder integrar CocoaPods en els teus projectes iOS.

Com sempre , aquí tens el vídeo – chorra d’aquesta setmana ( Activa el so del teu ordinador perquè si no no té gràcia ) .

Mai vénen mal unes bones riallades 😉

a

On anar ara ?

Pots accedir a més tutorials disponibles en EfectoApple des d’aquí .

Si aquest article t’ha semblant útil, em faries un gran favor compartint a les xarxes socials .

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *