CocoaPods Schnelleinstieg



Ähnliche Dokumente
Qt-Projekte mit Visual Studio 2005

Informatik I Tutorial

Informatik 1 Tutorial

FTP-Server einrichten mit automatischem Datenupload für

INSTALLATION OFFICE 2013

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

PC-Umzug: So ziehen Sie Ihre Daten von Windows XP nach Windows 8 um

Der Kalender im ipad

OP-LOG

ZfP-Sonderpreis der DGZfP beim Regionalwettbewerb Jugend forscht BREMERHAVEN. Der Zauberwürfel-Roboter. Paul Giese. Schule: Wilhelm-Raabe-Schule

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Bauteilattribute als Sachdaten anzeigen

DOKUMENTATION VOGELZUCHT 2015 PLUS

Installationsanleitungen

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

MetaQuotes Empfehlungen zum Gebrauch von

Arbeiten mit dem Outlook Add-In

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Der einfache Weg zum CFX-Demokonto

Konvertieren von Settingsdateien

! " # $ " % & Nicki Wruck worldwidewruck

Second Steps in eport 2.0 So ordern Sie Credits und Berichte

Guide DynDNS und Portforwarding

Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1.

Diese Anleitung enthält Anweisungen, die nur durch erfahrene Anwender durchgeführt werden sollten!

Fotos verkleinern mit Paint

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Installation OMNIKEY 3121 USB

Erstellen der Barcode-Etiketten:

Einrichten einer Festplatte mit FDISK unter Windows 95/98/98SE/Me

Leichte-Sprache-Bilder

Sich einen eigenen Blog anzulegen, ist gar nicht so schwer. Es gibt verschiedene Anbieter. ist einer davon.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Professionelle Seminare im Bereich MS-Office

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

1. Einschränkung für Mac-User ohne Office Dokumente hochladen, teilen und bearbeiten

Anleitung zur Verwendung der VVW-Word-Vorlagen

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

12. Dokumente Speichern und Drucken

Online Newsletter III

Handbuch für Easy Mail in Leicht Lesen

Live Update (Auto Update)

Anwendungsbeispiele Buchhaltung

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Kurzanleitung. MEYTON Aufbau einer Internetverbindung. 1 Von 11

Die Dateiablage Der Weg zur Dateiablage

2. Die eigenen Benutzerdaten aus orgamax müssen bekannt sein

Anleitung für die Umstellung auf das plus Verfahren mit manueller und optischer Übertragung

INSTALLATION VON INSTANTRAILS 1.7

1.3. Installation und Konfiguration von Filr Desktop

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

Lizenzen auschecken. Was ist zu tun?

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

Adminer: Installationsanleitung

Anleitung über den Umgang mit Schildern

Versionsverwaltung mit SVN

Artikel Schnittstelle über CSV

SAMMEL DEINE IDENTITÄTEN::: NINA FRANK :: :: WINTERSEMESTER 08 09

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Problem crazytrickler unter Windows 8:

Beispiel Shop-Eintrag Ladenlokal & Online-Shop im Verzeichnis 1

Erstellen einer digitalen Signatur für Adobe-Formulare

WordPress. Dokumentation

Anleitung Captain Logfex 2013

DeltaVision Computer Software Programmierung Internet Beratung Schulung

Intranet Moodle

Tutorial: Wie kann ich Dokumente verwalten?

ICS-Addin. Benutzerhandbuch. Version: 1.0

1. Einführung. 2. Weitere Konten anlegen

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Windows 10. Vortrag am Fleckenherbst Bürgertreff Neuhausen.

SharePoint Workspace 2010 Installieren & Konfigurieren

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein.

Anleitung zur Daten zur Datensicherung und Datenrücksicherung. Datensicherung

Fotostammtisch-Schaumburg

Wie richten Sie Ihr Web Paket bei Netpage24 ein

Installation und Inbetriebnahme von Microsoft Visual C Express

Anleitung OpenCms 8 Webformular Auswertung

Was ich als Bürgermeister für Lübbecke tun möchte

Abamsoft Finos im Zusammenspiel mit shop to date von DATA BECKER

Barcodedatei importieren

Anleitung zur Installation und Nutzung des Sony PRS-T1 ebook Readers

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Anleitung zur Installation und Nutzung des Sony PRS-T1 ebook Readers

Lehrer: Kurs wiederherstellen

Benutzung der Avid Liquid Edition Schnittplätze an der Universität Innsbruck

ELO Print&Archive so nutzen Sie es richtig

Tutorial -

Partnerportal Installateure Registrierung

Patch Management mit

R Installationsanleitung Mac (Version 1.5)

SEPA-Umstellungshilfe für die VR-NetWorld Software

Eine Anwendung mit InstantRails 1.7

Transkript:

CocoaPods Schnelleinstieg Moritz Haarmann, Software for mobile devices CocoaPods ist das Tool der Wahl, wenn es darum geht, Abhängigkeiten eines Projekts zu verknüpfen. CocoaPods ist kostenlos und quelloffen das Beste ist jedoch dass man auch eigene Bibliotheken, die z.b. nur intern genutzt werden problemlos hinzufügen kann. Los gehts. 1 Installation Die Installation verläuft angenehm simpel. CocoaPods ist in Ruby geschrieben, was allerdings bei Mac OS immer vorinstalliert ist. Daher reicht es, in einem Terminal den Befehl $ sudo gem i n s t a l l cocoapods einzugeben. Danach kann über $ pod v Überprüfen, ob die Installation auch funktioniert hat. Bei mir sieht die Ausgabe davon im Moment so aus, wobei sich die Versionsnummer natürlich stets ändert. $ pod v e r s i o n 0. 3 3. 1 Wunderbar, wäre dieser Teil geschafft. www.moritzhaarmann.de Seite 1 von 5

2 Verwendung CocoaPods besteht in erster Linie aus dem oben schon aufgerufenen Programm pod. Bevor wir jedoch CocoaPods wirklich benutzen können, sind zwei Dinge notwendig. Zum ersten ist das ein leeres Xcode-Projekt. Dazu Xcode öffnen und dort ein neues, leeres ios-projekt anlegen. Da wir das Projekt selbst nur am Rande und zum testen unserer Konfiguration verwenden, ist egal welches Projekt-Template verwendet wird. Wichtig ist nur, dass der Ort des Projekts bekannt ist, so dass wir unkompliziert dorthin navigieren können. 2.1 Podfile Dieses neue Projekt ist ziemlich leer und im Moment noch ziemlich nutzlos. Um das zu ändern, wollen wir 2 Bilbliotheken einbinden. Was früher ziemlich aufwendig war, geht dank CocoaPods recht schnell. Als erstes wird eine sog. Podfile benötigt, die Informationen enthält mittels denen CocoaPods bestimmt, welche Plattformen unterstützt werden sollen und welche Abhängigkeiten benötigt werden. Wer sich mit Maven aus der Java-Welt oder Bundler von Ruby auskennt erkennt ein Schema: Eine Konfigurationsdatei ist Grundlage für ein weiteres Tool, dass dann die notwendige Projektkonfiguration erstellt oder aktualisiert. Eine einfache Podfile besteht mindestens aus der Angabe der Plattform, auf der das Projekt basiert. p l a t f o r m : i o s, 7. 1 So weiss CocoaPods, dass unsere Build-Plattform ios 7.1 ist. Abhängigkeiten werden bei CocoaPods pods genannt, in Anlehnung an die Kakaobohne (Cocoa), die Bohnen in sog. Pods, den Schalen, enthält. Jedes Pod definiert genau eine Abhängigkeit. Will man z.b. AFNetworking in sienem Projekt benutzen, fügt man in der Podfile eine neue Zeile ein, die wie folgt aussieht pod AFNetworking Achtung, die Namen der Pods sind Case-Sensitive, d.h. unterscheiden nach Groß- und Kleinschreibung! führt man dann in einem Terminal den Befehl $ pod i n s t a l l aus, macht CocoaPods einige Dinge im Hintergrund und auf einmal. Zuerst wird ein Abhängigkeitsgraph erstellt, da es ein üblicher Fall ist, dass Pods ihrerseits von anderen Pods abhängen. Anhang dieses Abhängigkeitsbaums rennt CocoaPods los www.moritzhaarmann.de Seite 2 von 5

Moritz Haarmann Abbildung 1: Kakaobohnen in Schalen und läd die entsprechenden Projekte in den pod-ordner im Projektverzeichneis, in dem alle Artefakte und Quellen gespeichert sind, die von CocoaPods verwaltet werden Im pods-ordner sollte man nicht von Hand Änderungen vornehmen, da das Verhalten im besten Fall undefiniert, im schlechtesten Fall katastrophal ist. Nachdem dieser Schritt zum Ende gekommen ist, wird ein Pods-Projekt angelegt. Dieses Projekt dient einzig und alleine dazu, die Abhängigkeiten in einem Projekt zusammenzufassen und dort in eine statische Bibliothek zu kompilieren. Für sich ist das schon praktisch, allerdings besteht der kritische Punkt im nächsten Schritt, bei dem CocoaPods einen Workspace erstellt, die unser ios-projekt und das Pods-Projekt enthält und diese verknüpft. Diese Verknüpfung besteht im Kern daraus, dass das Pods-Projekt als Abhängigkeit unseres Projekts angegeben wird, so dass dieses immer gebaut wird. Dieser Workspace ist ab sofort auch der Dreh- und Angelpunkt der Entwicklung das heisst dass das bisherige.xcodeproj nicht mehr benutzt werden kann, da sonst die Abhängigkeiten fehlen. www.moritzhaarmann.de Seite 3 von 5

Auf der Kommandozeile kann mittels open P r o j e c t. xcworkspace einfach das neu angelegte Projekt bzw. der dazugehörige Workspace geöffnet werden. 2.2 Änderungen an der Podfile Ändert man die Podfile, was in der Praxis natürlich häufig der Fall ist, kann das bestehende Pod-System mittels pod update auf den neusten Stand gebracht werden. Sollte Xcode die Änderungen nicht sofort erkennen bzw. Probleme beim Bauen haben hilft oft ein Neustart von Xcode. Sollte das nicht den gewünschten Effekt haben, kann man in der (CocoaPods Troubleshooting guide)[http://guides.cocoapods.org/using/troubleshooting.html] weiter bekannte Probleme und deren Lösungen recherchieren. 3 Pods finden CocoaPods kommt mit einem search-kommando, dass behilflich ist, wenn man Pods finden möchte. Sucht man Beispielsweise ein Pod, dass aus Hex-Farbcodes wie sie in HTML/CSS zum Einsatz kommen, eine UIColor-Instanz baut, kann man einfach danach suchen: pod s e a r c h hex Eine Liste mit verfügbaren Pods wird dann angezeigt, die auszugsweise so aussieht: > UIColor ColorWithHexAndAlpha ( 1. 2. 0 ) C r e ate U I C o l o r O b j e c t s u s i n g Hex Values pod UIColor ColorWithHexAndAlpha, ~> 1. 2. 0 Homepage : h t t p s : / / g i t h u b. com/ A r t S a b i n t s e v / UIColor ColorWithHexAndA Source : h t t p s : / / g i t h u b. com/ A r t S a b i n t s e v / UIColor ColorWithHexAndA V e r s i o n s : 1. 2. 0 [ master repo ] > UIColor Hex ( 0. 1. 1 ) I n i t i a l i z e s the U I C o l o r u s i n g h e x a d e c i m a l. pod UIColor Hex, ~> 0. 1. 1 Homepage : h t t p : / / g i t h u b. com/ n a k a j i j a p a n www.moritzhaarmann.de Seite 4 von 5

Source : h t t p s : / / g i t h u b. com/ n a k a j i j a p a n / UIColor Hex. g i t V e r s i o n s : 0. 1. 1, 0. 1. 0 [ master repo ] > UIColor H e x S t r i n g ( 1. 1. 0 ) Easy, Android c o m p a t i b l e hex s t r i n g s to U I C o l o r. pod UIColor HexString, ~> 1. 1. 0 Homepage : h t t p s : / / g i t h u b. com/ k e v i n r e n s k e r s / UIColor H e x S t r i n g Source : h t t p s : / / g i t h u b. com/ k e v i n r e n s k e r s / UIColor H e x S t r i n g. g i t V e r s i o n s : 1. 1. 0, 1. 0. 1, 1. 0. 0 [ master repo ] daraus kann man sich nun den Namen des gewünschten Pods kopieren und in die eigene Podfile übernehmen 4 Cocoapods und git Vor Cocoapods war die Verwaltung von Dependencies mittels git submodules oder anderer Techniken oftmals mühsam und hat (in meiner Erfahrung) zu mehr Problemen geführt, als man wollte. Eine bewährte Strategie für den Umgang mit Cocoapods und git ist, die folgenden Dateien und Verzeichnisse komplett in die Versionskontrolle zu übernehmen so ist es jedem Entwickler nach einem clone sofort möglich, loszuarbeiten, auch ohne selbst Cocoapods installiert zu haben: P o d f i l e P o d f i l e. l o c k Pods/ $ ( Projektname ). xcworkspace Ein weiterer Vorteil liegt darin, dass auch eine Continuous Integration-Umgebung dass Projekt auschecken und bauen kann, da alle Abhängigkeiten schon parat liegen. www.moritzhaarmann.de Seite 5 von 5