2016-07-05 24 views
7

Właśnie zauważyłem, że niektóre z kapsuł, które dodałem pojawiają się jako klocki Lego:Dlaczego niektóre połączone ramy wyglądają jak klocki Lego, a inne jak zestaw narzędzi?

enter image description here

A niektóre strąki są wyświetlane jako przyborniki:

enter image description here

w połączonych bibliotek i ram Sekcja. Jako całość, wszystkie moje strąków wyglądać następująco:

enter image description here

Dlaczego tak jest?

Ponieważ nazwa sekcji to "Połączone frameworki i biblioteki", zakładam, że jedna z ikon reprezentuje framework, a druga reprezentuje bibliotekę? Ale co to jest? A w jaki sposób Xcode wie, że jest to framework lub biblioteka? Sprawdziłem podspecs z strąków, ale nie znalazłem nic o frameworkach/bibliotekach.

Odpowiedz

2

Toolbox to standardowa ikona CocoaTouchFramework a to zwykle oznacza, że ​​wykorzystuje Foundation ramy.

Biała kostka (klocki lego) oznacza pakiet. To może łączyć wszystko, czego potrzebujesz, może to być pakiet Localized.strings (np. ZendeskSDK) lub inne zasoby.

Należy pamiętać, że istnieje różnica między wyświetlaniem wewnątrz Linked Frameworks and Libraries lub Embedded Binaries niż w środku Finder.

enter image description here

i ramy do pracy zarówno z symulatora i urządzenia muszą być zbudowane z różnych architektur (x86_64) vs (ARMv7, arm64). I to jest obsługiwane przez Xcode, co wziąć od .framework, ponieważ nie trzeba łączyć go ręcznie z inną architekturą. Tak więc w Xcode, zawsze masz w tej sekcji właściwy plik .framework gotowy do twojej architektury, dzięki czemu może być wyświetlany jako zestaw narzędzi. W twoim przypadku biblioteka LTHPasscodeViewController nie zawiera schematu autobuildingu (na przykład SwiftyJSON). Oprócz demo, klasy nie są połączone z .xcodeproj, więc nie zostały utworzone z CocoaTouchFramework.

Po wybraniu nowego projektu z Xcode i wybraniu Cocoa Touch Framework, należy utworzyć projekt dla siebie. Jeśli nie masz projektu, to po prostu bundle (nie ma znaczenia, że ​​ma rozszerzenie .framework).