2016-07-03 14 views
1

Ich versuche gerade, eine vorhandene statische objective-c-Bibliothek in swift zu konvertieren. Mein Ziel ist es, einige Dateien von objective-c auf swift auf einmal zu aktualisieren, so dass mein Projekt für einige Wochen aus objective-c-Dateien und schnellen Dateien bestehen wird.Konvertieren einer vorhandenen statischen objective-c-Bibliothek in swift

Ich habe eine neue Swift-Datei erstellen und entfernt seinen Ziel-C-Zähler Teil. Ich habe auch einen Bridging-Header erstellt, wenn xcode gefragt wird.

Wenn ich bauen will bekomme ich folgende Fehlermeldung:

'Swift is not supported for static libraries'

ich ein bisschen herum ausgesehen haben und es scheint, als ob ich einen Rahmen schaffen müssen. Ich habe viele Beispiele gefunden, wie man ein neues Framework erstellt, aber nichts darüber, wie man ein altes statisches Bibliotheksprojekt in ein Framework umwandeln kann. Ist das möglich oder muss ich ein neues Projekt von Grund auf neu starten?

Vielen Dank im Voraus.

Antwort

-1
  • Fügen Sie ein neues Kakaotouch-Framework als TARGET in Ihr bestehendes Projekt für statisch verknüpfte Bibliotheken ein.
  • Fügen Sie in den Build-Phasen alle .m, .mm, .c, .cpp, .metal usw. in die Phase "\ Build Phases \ Compile Sources" Ihres statischen verknüpften Framework-Ziels ein.
  • Setzen Sie die Header, die Sie anzeigen möchten, in "\ Build Phases \ Headers".
  • Denken Sie daran, die Mach-O-Typ-Einstellung in Ihren Build-Einstellungen zu überprüfen, es sollte "Static Library" sein. Dann muss die App, die dieses Framework verwenden möchte, nur die Header als #import enthalten und das Framework in "Build Phases \ Link Binary with Libraries" Ihres App-Ziels hinzufügen. Hier

ist ein Tutorial von raywenderlich.com

Das Tutorial eine statische Bibliothek erstellt dann wandelt es in iOS Rahmen, so dass Sie die letzte Hälfte versuchen.

+0

Wenn ich das alles mache und baue, bekomme ich 'Swift wird nicht für statische Bibliotheken unterstützt' – lostintranslation

+0

Ich habe auch versucht, ein brandneues Framework-Projekt zu erstellen, um zu sehen, ob ich Dinge zum Laufen bringen und mit meinem bestehenden Projekt vergleichen kann. Alles funktioniert gut, bis ich die erste Swift-Datei hinzufüge und ich bekomme 'Swift wird nicht für statische Bibliotheken unterstützt'. Ich bin mir nicht sicher, warum ich das bekomme, da ich eine brandneue Rahmenarbeit erschaffe, keine statische Bibliothek. Was vermisse ich? – lostintranslation

Verwandte Themen