Das Entfernen von CocoaPods aus einem Projekt ist möglich, wird jedoch derzeit von der CLI nicht automatisiert. Erstens, wenn das einzige Problem, das Sie haben, nicht in der Lage ist, einen zu verwenden xcworkspace
, können Sie CocoaPods mit nur xcodeproj
s verwenden, indem Sie das --no-integrate
Flag verwenden, das den Pods.xcodeproj
Arbeitsbereich erzeugt, aber keinen. Dann können Sie dies xcodeproj
als Teilprojekt zu Ihrem Hauptprojekt hinzufügen xcodeproj
.
Wenn Sie wirklich die gesamte CocoaPods-Integration entfernen möchten, müssen Sie einige Dinge tun:
HINWEIS Wenn Sie einige dieser Dinge falsch bearbeiten, kann dies Ihr Hauptprojekt beschädigen. Ich empfehle Ihnen dringend, Ihre Projekte für alle Fälle in die Quellcodeverwaltung einzuchecken. Diese Anweisungen gelten auch für die CocoaPods-Version 0.39.0
. Sie können sich mit neuen Versionen ändern.
- Löschen Sie die eigenständigen Dateien (
Podfile
Podfile.lock
und Ihr Pods
Verzeichnis).
- Löschen Sie die generierte
xcworkspace
- Öffnen Sie Ihre
xcodeproj
Datei, löschen Sie die Verweise auf Pods.xcconfig
und libPods.a
(in der Frameworks
Gruppe)
- Unter Ihren
Build Phases
löschen Sie die Copy Pods Resources
, Embed Pods Frameworks
und Check Pods Manifest.lock
Phasen.
- Dies mag offensichtlich erscheinen, aber Sie müssen die Bibliotheken von Drittanbietern auf andere Weise integrieren oder Verweise darauf aus Ihrem Code entfernen.
Nach diesen Schritten sollten Sie eine Single xcodeproj
festlegen, die vor der Integration von CocoaPods vorhanden war. Wenn ich etwas verpasst habe, lass es mich wissen und ich werde es bearbeiten.
Außerdem sind wir immer auf der Suche nach Vorschlägen zur Verbesserung von CocoaPods. Wenn Sie also Probleme haben, senden Sie diese bitte in unseren Issue-Tracker, damit wir einen Weg finden, sie zu beheben!
BEARBEITEN
Wie gezeigt von Jack Wu in den Kommentaren gibt es eine dritte Partei CocoaPods dass Plugin diese Schritte für Sie automatisieren. Es kann hier gefunden werden . Beachten Sie, dass es sich um ein Plugin eines Drittanbieters handelt und möglicherweise nicht immer aktualisiert wird, wenn CocoaPods verwendet wird. Beachten Sie auch, dass es von einem CocoaPods-Kernteammitglied erstellt wurde, damit das Problem kein Problem darstellt.