In deze zelfstudie leert u meer over de CocoaPods-afhankelijkheidsbeheerder en hoe u deze implementeert in uw app. We gaan door de stappen van het maken van een Xcode-project helemaal tot aan het importeren van frameworks. Onderweg zullen we enkele basisterminocommando's leren en wat ze doen.
Voordat we beginnen met het daadwerkelijk implementeren van CocoaPods in ons Xcode-project, laten we een beetje praten over wat het is en waarom je het zou moeten gebruiken in de eerste plaats.
CocoaPods is een afhankelijkheidsmanager voor Swift en Objective-C Cocoa-projecten. Het heeft meer dan 35 duizend bibliotheken en wordt gebruikt in meer dan 2,4 miljoen apps. CocoaPods kan u helpen uw projecten op een elegante manier te schalen. - CocoaPods-website
CocoaPods wordt tegenwoordig steeds populairder voor de ontwikkeling van Cocoa Touch - en terecht. CocoaPods is een eenvoudig te gebruiken, gemakkelijk te implementeren afhankelijkheidsmanager voor uw apps geschreven in Swift of Objective-C.
Blij dat je vroeg! Kortom, een afhankelijkheidsmanageris een tool die wordt gebruikt om frameworks van derden te beheren. In CocoaPods worden afhankelijkheden weergegeven in een tekstbestand met de naam a podfile(wat we binnenkort zullen zien) met eenvoudige uitspraken in één regel.
Dit lost het probleem op van het handmatig moeten downloaden en toevoegen van elk framework aan je Xcode-project en het verwijderen en opnieuw installeren van verouderde frameworks (dat is gewoon een pijn). Sommige bibliotheken gebruiken zelfs hun eigen frameworks in hun SDK (zoals Firebase) en elke keer dat ze een kleine update uitvoeren, moet je alles handmatig opnieuw installeren!
Hoewel er andere afhankelijkheidsmanagers zijn (zoals Carthago), is CocoaPods nog steeds de meest gebruikte en daarom zijn de meeste bibliotheken beschikbaar voor jouw gebruik. Omdat dit het populairst is, zijn er ook meer discussies over het op StackOverflow en andere forums - dat is handig als je ooit vastloopt.
Laten we een gemeenschappelijk scenario bedenken: iets dat CocoaPods (of een afhankelijkheidsmanager) kan oplossen. U bent van plan om een app te bouwen. Deze app is reusachtig, en je wilt geen code herschrijven die iemand anders al heeft geschreven, dus je maakt een lijst met bibliotheken waarvan je denkt dat die goed zijn in jouw project. Het zou bijna onmogelijk zijn om ze allemaal correct te kunnen installeren en tegelijkertijd uw code toekomstbestendig te kunnen maken!Dit is waar CocoaPods in komt.
CocoaPods is gebouwd met Ruby, dat standaard wordt geïnstalleerd op versies van macOS. In deze tutorial zullen we gebruiken edelsteen
om de nodige Ruby-edelstenen te installeren om CocoaPods te installeren. Edelstenen zijn Ruby-pakketten, en aangezien CocoaPods een Ruby-programma is, moet het worden geïnstalleerd met Ruby's pakketbeheerder.
Om te beginnen, opent u een nieuw terminalvenster. U vindt dit in toepassingen > nutsbedrijven of je kunt er gewoon naar zoeken in Spotlight Search (Command-Space).
Voer de volgende regel code in uw terminal in.
$ sudo gem install cocoapods
Druk vervolgens op invoeren. U wordt gevraagd om uw wachtwoord in te voeren en wanneer u dit hebt gedaan, drukt u op invoeren nog een keer. Nadat je dit gedaan hebt, zal CocoaPods installeren, en als het klaar is ziet je terminal er ongeveer zo uit:
CocoaPods kunnen aan elk bestaand Xcode-project worden toegevoegd, maar laten we voor de doeleinden van deze tutorial een nieuwe maken. Wees alsjeblieft vrij om mee te gaan met je eigen Xcode-project en sla deze stap over.
Na het starten van Xcode, ziet u drie opties. Klik op de tweede optie die zegt Maak een nieuw Xcode-project. Als u in het verleden Xcode hebt gebruikt, verschijnen uw recente projecten aan de rechterkant.
Voor dit project kiezen we een toepassing met één weergave, maar u kunt elke sjabloon kiezen die u nodig hebt voor uw specifieke doeleinden.
Geef uw project een naam en kies Snel als de taal. Hier kunt u ook de bundel-ID instellen en de apparaten kiezen die uw app zou ondersteunen. Nogmaals, het is aan jou, maar ik zal het noemen CocoaPods.
Nadat u een Xcode-project hebt gemaakt, is de volgende stap om er naartoe te navigeren met behulp van de terminal. Velen van jullie zijn hier wellicht bekend mee, maar laten we er samen over gaan; de praktijk is immers perfect!
Voordat u met behulp van de opdrachtregel naar de projectdirectory kunt navigeren, is het een goed idee om uw project eerst met behulp van de Finder te lokaliseren. In dit geval staat mijn project op mijn bureaublad in een map met de naam Tuts+.
sudo
-een manier om de gebruikersrechten te overschrijven en een supergebruiker van de computer te worden. Dit is waarom het een admin-wachtwoord vereist wanneer het gebruikt wordt. We hebben dit commando gebruikt tijdens het eerder installeren van CocoaPods.ls
-geeft een overzicht van alle inhoud in de huidige map. Deze opdracht is handig als u de Finder niet wilt gebruiken om door bestanden te bladeren; u kunt ze eenvoudigweg vermelden met behulp van dit commando in uw Terminal.CD
-deze opdracht wordt gebruikt om mappen te wijzigen. Als je schrijft CD
alleen, u verlaat de huidige map. Na gebruik ls
(om de mappen te zien), kunt u de naam schrijven van de map die u wilt invoeren.vim
-dit is een van mijn favorieten. Herinner de podfile die ik eerder noemde? Je kunt dit bestand bewerken met de standaard TextEdit, maar ik gebruik graag de terminal. vim
is een teksteditor in de commandoregel die we zullen gebruiken om ons te bewerken podfile.Enkele bonus-enen: Deze zijn nu niet nodig, maar hey, waarom leer je niet wat meer leuke dingen terwijl je bezig bent?
mkdir
-je kunt een beetje vertellen wat deze op zijn naam doet; het maakt een map (nu was dat niet zo moeilijk, toch?). U moet de naam van de map achter het sleutelwoord typen mkdir
en voila, daar heb je een map die (bijna) ogenblikkelijk verschijnt.helpen
-deze opdracht is leuk omdat (zoals de naam al doet vermoeden), het je helpt als je ooit een opdracht vergeet. Typ gewoon helpen
in je Terminal-venster, en een lijst met basiscommando's zal verschijnen met hun betekenis.Omdat je CocoaPods al op je computer hebt geïnstalleerd, is het volgende dat je moet doen eigenlijk je Xcode-project initialiseren. Zoek waar uw project zich op uw harde schijf bevindt en volg het in uw eigen directory.
Nadat u via de terminal naar uw project bent gegaan, ziet uw venster er als volgt uit. Ik heb mijn projectnaam gemarkeerd en de uwe zou op dezelfde plek moeten verschijnen. Het zou er ongeveer zo uit moeten zien:
Zodra u zich in uw projectdirectory bevindt, moet u CocoaPods initialiseren, wat resulteert in een podfile gecreëerd worden. Hiertoe typt u de volgende regel in uw terminalvenster:
$ pod init
Hiermee wordt CocoaPods in uw projectmap geïnitialiseerd en ziet u een bestand met de naam podfile opdagen.
Hoera! CocoaPods is nu klaar om de afhankelijkheden van uw project te beheren. De volgende stap is om de gewenste bibliotheken daadwerkelijk toe te voegen aan uw Xcode-project - dat is tenslotte waar we hier voor zijn.
Onthouden vim
, de teksteditor? We zullen het gebruiken om de gewenste kaders aan de app toe te voegen. Typ de volgende regel om je podbestand te bewerken:
$ vim podfile
Om in de bewerkmodus te komen, typt u gewoon ik
, zoals in "insert".
In CocoaPods zijn er twee manieren om het commando te krijgen voor het framework dat je wilt. Je kunt de podfile-regel meestal vinden in de GitHub-projectbeschrijving van het framework. Zo niet, ga dan naar de CocoaPods-website en zoek daar naar de bibliotheek en hun podfile-regels.
Hieronder heb ik een regel voor Firebase.
pod 'Firebase / Core'
Zoals ik al zei, het maakt niet echt uit waar je ze vandaan haalt. Zoek een van deze en volg de onderstaande stappen. Voer nu uw regel in onder de opmerking die zegt:
# Pods voor
Dat is alles wat nodig is om kaders toe te voegen. Zie je hoe gemakkelijk dat was? Nu moeten we de vim
editor en ga verder met de volgende stap.
vim
EditorOm uw wijzigingen op te slaan en de vim
redacteur, moet je:
:X
(de opdracht opslaan en afsluiten).Deze stap is nog een one-liner. Het enige wat u hoeft te doen is, typ in uw projectdirectory de volgende opdracht:
$ pod-installatie
Hiermee downloadt u alle frameworks die u in uw podfile hebt vermeld en installeert u deze naar uw Xcode-project. De pods zouden nu moeten kunnen worden geïmporteerd, net zoals een normaal kader zou zijn (door het gebruik van importeren
bovenaan uw bronbestand).
Ik hoop dat deze tutorial nuttig was. We hebben betrekking op de installatie van CocoaPods, standaard terminalopdrachten en het toevoegen van pods aan uw podbestand. CocoaPods is een snel, gemakkelijk te gebruiken en effectief hulpmiddel voor het beheren van uw afhankelijkheden, en het wordt heel vaak gebruikt.
En onthoud:
.xcworkspace
en niet .xcodeproj
.pod installeren
van de terminal na het veranderen van je podfile, zodat de afhankelijkheden worden verwijderd of toegevoegd.Terwijl je hier bent, bekijk enkele van onze andere berichten over het coderen van iOS-apps!