Wie bundle CocoaPods Abhängigkeiten mit Cordova-Plugin?
Entwickle ich ein Cordova-plugin, und für die iOS-Plattform ist, würde ich gerne integrieren einige bestehende (nicht-cordova-spezifisch) Cocoapods. Ich habe nicht in der Lage zu finden keine info oder Beispiele, wie dies funktioniert, und ich hätte gedacht, dass dies eine ziemlich Allgemeine Gebrauch-Fall.
Beachten Sie, dass ich versuche nicht zu verwenden Cordova als Cocoapod, für die es eine anständige Menge an Informationen da draußen, aber eher zur Verwendung von Cocoapods innerhalb der iOS-Plattform ein Cordova-plugin, das ich entwickle.
Cordova ' s plugin.xml
im Allgemeinen benötigt, um eine Liste aller Projekt-Abhängigkeiten zu bündeln, die Dinge richtig. Kennt jemand eine Cordova oder PhoneGap-plugin, welches intern verwendet Cocoapods?
- Nun, wenn dies ist wirklich ein ungelöstes problem, das Cordova - / PhoneGap-team wirklich, wirklich braucht, um es anzugehen, gegeben, dass in der Lage zu nutzen, weit verbreitet CocoaPods von innerhalb des nativen plugins würde deutlich zu steigern, die Menge und die Qualität der plugins die es gibt (iOS zuerst in diesem Fall).
- haben Sie irgendwelche Fortschritte auf diesem?
- Nein, ich habe nicht in der Lage, um Hilfe finden und nicht verstehen, die Cocoapod / cordova build-Prozesse genug, um die Zeit zu verbringen, es umzusetzen ich.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich gerade verschwendet mehrere Stunden auf, so daß ich dachte, ich würde diese hier für jedermann, der interessiert ist. Cordova als der Cordova-CLI version 6.4.0/Cordova iOS-version 4.3.0 unterstützt die direkte integration mit CocoaPods.
Detaillierte Informationen gibt es hier:
https://cordova.apache.org/docs/en/latest/plugin_ref/spec.html
Fügen Sie einfach etwas wie:
Den plugin.xml -Datei für Ihr plugin. Cordova generiert automatisch eine .xcworkspace. Verwenden, statt die xcodeproj-Datei, und Sie sind gut zu gehen.
.xcworkspace
- Datei ist der Schlüssel! Danke.Konnte ich nicht finden, eine gute Lösung für dieses problem, so habe ich ein plugin für Sie, https://github.com/blakgeek/cordova-plugin-cocoapod-support. Es fügt Unterstützung für die Definition von Cocoapod Abhängigkeiten in der plugin.xml. Es sollte enthalten sein, wie eine Abhängigkeit von einem anderen plugin und dann das plugin hinzufügen können Einträge in der ios-Plattform Abschnitt der plugin.xml. Es unterstützt alle pod Abhängigkeit Spezifikationen wie git repo, Konfigurationen, subspecs, etc. Hoffe, dies hilft jemand aus.
Konnte ich nicht finden, viel info über diese entweder, so schrieb ich ein Cocoapods-plugin, um zu helfen: https://github.com/xdissent/cocoapods-cordova Es verwaltet Ihre
plugin.xml
automatisch und baut eine Universelle statische Bibliothek, die links in der nur nicht-cordova Abhängigkeiten. Derzeit ist ein WIP, aber ich bin es mit Erfolg auf ein paar plugins.Ich bin treffen eine ähnliche situtation.
Hier sind zwei workarounds.
Integration von Cordova in das plugin-Entwicklungsumgebung, ich.e, wiederum eine Reine Xcode-Projekt in einer Cordova-basiertes Projekt. Wenn wir wollen, verwenden Sie cordova-plugins für iOS, erhältlich sind Sie über Cocoapods zu.
Vorstellen Cocoapods, um das Xcode-Projekt erzeugt von Cordova. Dieser Weg, wir müssen den generierten code in die source-control und vorsichtig sein, wenn wir hinzufügen, andere plugins, da Dateien, die wir geändert kann geändert werden, indem Sie cordova.
Weiß ich noch nicht welches ist die bessere Wahl.
Folgende Hülsen info hilfreich für den workaround #1.
pod search cordova
-> Cordova (4.0.1)
Cordova-iOS
pod 'Cordova', '~> 4.0.1'
- Homepage: https://github.com/apache/cordova-ios
- Quelle: https://github.com/apache/cordova-ios.git
- Versionen: 4.0.1, 3.9.1, 3.8.0, 3.7.0, 3.6.0, 3.5.0, 3.4.1, 3.4.0, 3.3.0, 3.2.0, 3.1.0, 3.0.0, 2.9.0, 2.8.0,
2.7.0, 2.6.0, 2.5.0, 2.4.0, 2.3.0, 2.2.0, 2.1.0, 2.0.0, 1.9.0, 1.8.1, 1.8.0, 1.7.0, 1.6.1, 1.6.0, 1.5.0, 1.4.1,
1.4.0, 1.3.0, 1.2.0, 1.1.0, 1.0.0 [master-repo -]
-> Cordova-Lib (3.9.1)
镜像自github,部署在git.oschina.net解决国内访问的连接速度。Apache Cordova ist eine Plattform zur Erstellung nativer mobiler Anwendungen
mit HTML, CSS und JavaScript.
pod 'Cordova-Lib', '~> 3.9.1'
- Homepage: https://git.oschina.net/liubiqu/cordova-ios
- Quelle: https://git.oschina.net/liubiqu/cordova-ios.git
- Versionen: 3.9.1, 3.9.0, 3.8.0 [master repo]