Cocoapods: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
Zeile 68: Zeile 68:
 
** Wenn ja im podfile (nicht podfile.lock) aktualisieren. Z.B.
 
** Wenn ja im podfile (nicht podfile.lock) aktualisieren. Z.B.
 
  pod 'CLTypingLabel', '~> 0.4'
 
  pod 'CLTypingLabel', '~> 0.4'
 +
Dann im Terminal nochmal
 +
pod install

Version vom 22. Januar 2023, 21:32 Uhr

Cocoapods ein Dependency Manager für Swift and Objective-C Cocoa Projekte. Es gibt hier für viele Zwecke freien Code von Programmierern. Über den Dependency Manager kann man dafür sorgen, dass man stets die aktuelle Version in seinen Projekten hat.

Cocoapods basiert auf Ruby und kann mit den Mac Standard Libraries über das Terminal installiert werden. Je nach Mac und OS kann das aber auch mal Probleme machen. Alternativ kannst du über Homebrew installieren. Generelle habe ich mit Homebrew i.d.R. weniger Probleme.

Installation direkt über Mac

Wenn du möchtest kannst du zuerst die ruby gem library updaten:

sudo gem update --system

Dann kannst du cocoapods installieren:

sudo gem install cocoapods

Sinnvoll ist vorher auf alle Fälle ein Blick in die Doku, da sich der Vorgang ab und zu ändern kann. Schau also mal in die Getting Started Guides auf:

https://cocoapods.org

Installation über Homebrew - recommended

Immer gut - Homebrew aktualisieren und dann cocoapods installieren, dann setup ausführen um die Library Database zu laden. Das --verbose flag informiert uns was gerade beim Laden abgeht. Am Ende testen ob alles passt indem du die Version ausgibst.

brew upgrade
brew install cocoapods
pod setup --verbose
pod --version

Pods in Xcode verwenden

1. Podfile erstellen

  • Mit dem Terminal ins Projekt Hauptverzeichnis
  • Podfile erstellen:
pod init
  • In der Target Section die pods hinzufügen (Details zum Namen findest du auf cocoapods.org.

Am Ende sieht das etwa so aus:

platform :ios, '8.0'
use_frameworks!

target 'MyApp' do
  pod 'AFNetworking', '~> 2.6'
  pod 'ORStackView', '~> 3.0'
  pod 'SwiftyJSON', '~> 2.3'
end

Besser auch die Version angeben, sonst kann es sein, dass eine ältere Installiert wird.

2. Dependency in Xcode installieren

Jetzt kannst du die Dependencies im Projekt installieren:

$ pod install

Damit später alles funktioniert solltest du jetzt XCode schließen und von nun an nicht das Projekt sondern den Workspace des Projekts öffnen wenn du den Build machst.

$ open App.xcworkspace

oder einfach statt dem .xcodeproj das .xcworkspace File klicken.

Im projekt kannst du die Dependencies nun einbinden z.B.:

#import <Reachability/Reachability.h>

Probleme beheben

Erst mal ein Build

cmd + b

Manchmal kommt es zu Fehlern, wenn in Swift oder XCode was neu ist. Die Library aber noch keinen aktuellen Code hat, oder eine ältere Version installiert ist.

  • Fehler anschauen
  • Mal im Github Repository der Lib schauen ob der Fehler schon behoben ist oder Requests vorliegen
  • Schauen ob in der Datei podfile.lock eine ältere Version als die Aktuelle geladen ist.
    • Wenn ja im podfile (nicht podfile.lock) aktualisieren. Z.B.
pod 'CLTypingLabel', '~> 0.4'

Dann im Terminal nochmal

pod install