2017-07-25 3 views
0

ich XCode 8 + Swift bin mit 3.3rd-Party-Framework (Alamofire) in meinem Teilprojekt (Cocoatouch-Framework)

Ich habe ein neues iOS Projekt mit dem Namen "MeineAnw".

Dann erstelle ich einen Cocoa Touch Rahmen Projekt, namens "MySubProject".

Ich habe MySubProject in MeineAnw Projekt verknüpft die MySubProject Rahmen (Die Idee MeineAnw Projekt Zugriff auf MySubProject Code. Zu haben ist).

In XCode Projektnavigator sieht es wie folgt aus:

MyApp 
    > MySubProject.xcodeproj 

Alles funktioniert gut. Code in MyApp kann Code in MySubProject zugreifen.

Nun muss ich Alamofire in MySubProject hinzufügen. Ich folgte Unterricht in Alamofire offical website zu manuell hinzufügen Alamofire zu MySubProject, die Projektstruktur sieht dann wie folgt aus:

MyApp 
    > MySubProject.xcodeproj 
    > Alamofire.xcodeproj 

So MySubProject hat die Abhängigkeit von Alamofire Rahmen. Dies ist, wie es unter MySubProject Ziel looke -> Allgemein:

enter image description here

Danach habe ich Alamofire in MySubProject Code zugreifen können, ohne Kompilierung-Fehler. MyApp ist erfolgreich erstellt. Allerdings, wenn ich meine app in Emulator laufen, bekam ich Laufzeitfehler:

dyld: Library not loaded: @rpath/libswiftSwiftOnoneSupport.dylib 
Referenced from: /Users/myname/Library/Developer/Xcode/DerivedData/MyApp-hezjlyvzxnavccenabxdepgftbrg/Build/Products/Debug-iphonesimulator 

/Alamofire.framework/Alamofire Grund: Bild nicht

gefunden Warum? & Wie löst man das?

+0

Haben Sie schon versucht, das Pods-Schema zu erstellen? –

Antwort

-1

Wenn Sie Alamofire verwenden möchten, gibt es eine bessere Möglichkeit, es zu installieren. Sie können die Cocoapoden für alle externen Frameworks verwenden. So müssen Sie die folgenden Schritte aus:

1.- Bitte installieren cocoapods von Edelsteine ​​sudo gem install cocoapods

2.- Gehen Sie zu Ihrem Ordner von Terminal und pod init eingeben, geben Sie dann vim Podfile

3.- Sie können Sehen Sie sich eine Datei an, in der Sie Ihre 3rd-Party-Frameworks hinzufügen können, also müssen Sie Alamofire zu Ihrem Ziel hinzufügen und es von Ihrem vim :wq schreiben. Zum Beispiel geben Sie dies:

# Uncomment the next line to define a global platform for your project 
# platform :ios, '9.0' 

target 'YourTarget' do 
use_frameworks! 

pod 'Alamofire', '~>4.0' 

4.- Jetzt müssen Sie pod install von Ihrem Terminal einzugeben und das ist es.Öffnen Sie Ihre xcworkspace generiert von Cocoapoden und geben Sie cmd + B von xCode. Danach können Sie Alamofire in Ihre Klassen importieren.

+0

Ich weiß das, aber diese Installation passt nicht zu meinem Bedarf. Bitte sehen Sie meine Frage dazu hier https://stackoverflow.com/questions/45281648/use-3rd-party-pod-in-sub-project-framework-project –

+1

Alfredo: Er bezieht uns miteinander, so denke ich, er ist nur die Situation überkompensiert und nicht weiß, was er eigentlich will. – Leon

+1

@Leon, Ich bin sehr klar über das, was ich will, ich weiß einfach nicht eine richtige Möglichkeit, um es zu ermöglichen. Ich poste zwei Fragen, weil es sich um zwei verschiedene Fragen zum selben Projekt handelt. Du verstehst meine Frage nicht wirklich, ich weiß nicht, was ich will. –