Ich weiß, es gibt bereits ein paar Fragen zu diesem Thema hier auf SO, aber sehr wenige haben Antworten akzeptiert, und ich glaube nicht, dass ich das exakt gleiche Problem gefunden habe so wie meins.Aufbau einer Cocoapod mit Swift und Abhängigkeit von Objective-C-Framework
Ich baue einen Swift Pod, und in meinem Code verlasse ich mich auf das Google Maps iOS SDK, das als .framework
Datei gebündelt ist. Das Projekt baut OK in Xcode auf, aber ich habe Probleme, die Lib zu Cocoapods zu veröffentlichen.
Ich schaffte es, eine Podspec
Datei zu haben, die fast mit dem pod lib lint
Befehl validiert. Aber jetzt, dass ich die Google-Maps-iOS-SDK
pod als eine Abhängigkeit in der Podspec
-Datei hinzugefügt haben, schlägt es mit der folgenden Meldung:
$ pod lib Flusen
Die 'Pods' Ziel hat transitiv [!] Abhängigkeiten, die statische Binärdateien sind: (/private/var/folders/n2/qyjfpk6n7zz_mngtwswlmsy00000gn/T/CocoaPods/Lint/Pods/Google-Maps-iOS-SDK/GoogleMaps.framework)
$
Wird das erwartet? Warum kann ich das Google Maps iOS SDK nicht als Pod-Referenz in meinem eigenen Swift-basierten Pod hinzufügen?
Hier ist die Podspec
:
Pod::Spec.new do |s|
s.name = '(name)'
s.version = '1.0.0'
s.summary = '(summary)'
s.platforms = { :ios => '8.0', :osx => '10.10' }
s.ios.deployment_target = '8.0'
s.osx.deployment_target = '10.10'
s.license = { :type => 'BSD', :file => 'LICENSE' }
s.source_files = 'Sources/*.{h,swift}', '*.framework'
s.source = { :git => "https://github.com/(Github repo).git", :tag => "1.0.0" }
s.requires_arc = true
s.frameworks = "Foundation", "CoreLocation"
s.author = { 'Romain L' => '(email)' }
s.dependency 'Google-Maps-iOS-SDK'
end
Wenn ich beinhalten nicht die Google Maps iOS SDK als Abhängigkeit, dann pod lib lint
im Bridging-Header aus, und beschwert sich nicht <GoogleMaps/GoogleMaps.h>
(Datei nicht gefunden) finden können.
Ich bin fest, und ich weiß nicht, ob es ein Fehler von Cocoapods 0.36 ist (noch in der Beta) oder wenn ich etwas falsch mache.
Danke für Ihre Hilfe!
können wir dies mit Google Analytics und Aufruhr? – Esqarrouth
Das ist perfekt. Es hat mir geholfen, das Google-Mobile-Ads-SDK jetzt auf 0.38.2 laufen zu lassen, indem ich diesen podspec im benutzerdefinierten Stil erstelle. Danke, @Romain! – ArtSabintsev
danke! Das ist eine sehr hilfreiche Antwort. Zur Info: Zur Zeit benötigt 'GoogleMaps 1.12.3'' Accelerate.framework'. –