| Kommentare

CocoaPods

Paketverwaltung für Objective-C

CocoaPods – Die elegante Paketverwaltung für Objective-C

Was viele Softwareentwickler aus der Ruby-Welt lieben, ist nun endlich auch in anderen Programmiersprachen wie Objective-C möglich. Das einfache Einbinden von Third-Party-Libraries und Bibliotheken in das eigene Projekt wird mithilfe von CocoaPods so simpel wie noch nie gestaltet. Zudem erleichtert es auch, den Überblick über zahlreiche Erweiterungen zu behalten und Abhängigkeiten besser kontrollieren zu können. Es bedarf nach der Installation lediglich einen Eintrag in die Liste der Bibliotheken und einem Terminalbefehl und schon kann die Bibliothek verwendet werden.

Im Folgenden wird schrittweise gezeigt, wie man CocoaPods in ein bestehendes Projekt integriert. CocoaPods ist in Ruby entwickelt worden und kann unter OS X sehr einfach installiert werden. Hierzu müssen lediglich die beiden Befehle:

sudo gem install cocoapods
pod setup

in das Terminal eingegeben und das Administrator-Kennwort ausgefüllt werden. Stellen Sie sicher, dass der Befehl gem auf Ihrem System ausführbar ist.

Falls die Command Line Tools von Xcode noch nicht installiert sind, sollte dies noch nachgeholt werden. Hierfür unter Xcode > Preferences > Downloads > Components navigieren und bei Bedarf die Command Line Tools herunterladen oder updaten.

Nach erfolgreicher Installation von CocoaPods gilt es nun eine Datei für das Projekt anzulegen, in der definiert ist, welche Bibliotheken für dieses Projekt installiert werden sollen. Diese Datei nennt sich Podfile und sollte im Hauptordner des Projektes angelegt werden. Wichtig hierbei ist, dass die Datei keine Dateiendung und den exakten Namen „Podfile“ besitzen muss.

Für das Anlegen des Podfiles einfach in das Root-Verzeichnis des Projektes navigieren und mit dem Befehl

touch Podfile

die Datei anlegen. Anschließend kann diese mit einem Editor eurer Wahl bearbeitet werden.

Das Podfile ist immer gleich aufgebaut. In der ersten Zeile steht die Plattform für die das Projekt entwickelt wird. Also entweder “ios” oder “osx”. Anschließend folgen alle Bibliotheken in der Syntax:

pod #NAME_DER_BIBLIOTHEK, #VERSION

Falls keine Versionsnummer angegeben wird, wird immer die aktuellste Version verwendet. Für detailliertere Informationen dient die Syntax Referenz von CocoaPods.

Ein Beispiel eines solchen Podfiles könnte wie folgt aussehen:

Podfile Beispiel
1
2
3
4
5
6
platform :ios, "7.0"

pod 'CocoaLumberjack'
pod 'AFNetworking', '>= 0.5.1'
pod 'MagicalRecord'
pod 'iRate'

Ist das Podfile komplett, können alle Abhängigkeiten installiert werden. Hierzu ist nur ein einziger Befehl notwendig:

pod install

Nun werden die notwendigen Dateien heruntergeladen und in das Projekt integriert, sodass anschließend eine einfache Verwendung der Bibliotheken im Projekt möglich ist. Diese können nun wie herkömmliche Frameworks importiert werden.

Verwendung der Bibliotheken
1
2
3
4
...
#import <iRate/iRate.h>
#import <MagicalRecord/MagicalRecord.h>
...

Falls für die Versionsverwaltung git zum Einsatz kommt, sollte die .gitignore-Datei noch angepasst werden, sodass die neu erzeugten Dateien von der Versionsverwaltung ausgeschlossen werden. Um dies zu erreichen, sind folgende Zeilen in die .gitignore-Datei aufzunehmen und die Änderungen anschließend zu committen:

.gitignore
1
2
3
4
xcuserdata
xcshareddata
Pods
.DS_Store

Nachdem man sich für die Verwendung von CocoaPods entschieden hat, muss man stets darauf achten, anstelle des APP.xcodeproj die APP.xcworkspace Datei zu öffnen. Diese wird automatisch generiert und enthält alle im Podfile spezifizierten Bibliotheken und Abhängigkeiten.

open App.xcworkspace

Für weitere und ausführlichere Informationen sind cocoapods.org und das Github-Repository gute Anlaufspunkte. Eine große Auswahl an Bibliotheken, die CocoaPods unterstützen, bietet cocoacontrols.com.

Comments