Ios - Cum se exportă; gras; Cocoa Touch Framework (pentru Simulator și Dispozitiv) Overflow Stack

Cu Xcode 6 avem capacitatea de a crea propriile noastre cadre dinamice de cacao .

touch

Simulatorul utilizează în continuare biblioteca pe 32 de biți

începând cu 1 iunie 2015, actualizările aplicației trimise în App Store trebuie să includă suport pe 64 de biți și să fie construite cu SDK-ul iOS 8 (developer.apple.com)

Trebuie să facem o bibliotecă grasă pentru a rula proiectul pe dispozitive și simulatoare. adică acceptă atât 32 cât și 64 de biți în Frameworks.

Dar nu am găsit manuale, cum să export cadru universal universal pentru integrarea viitoare cu alte proiecte (și partajați această bibliotecă cu cineva).

Iată pașii mei de reproducere:

Setați ONLY_ACTIVE_ARCH = NO în Setările de compilare

Adăugați suport armv7 armv7s arm64 i386 x86_64 la Architectures (sigur)

  1. Construiți Framework și deschideți-l în Finder:

  1. Adăugați acest cadru la un alt proiect

Rezultatul actual:

Dar până la urmă am încă o problemă cu executarea proiectului cu acest cadru pe dispozitive și simulator simultan.

dacă iau cadru din folderul Debug-iphoneos - funcționează pe dispozitive și primește erori la simulatoare: ld: simbol (uri) nu au fost găsite pentru arhitectura i386

Arhitecturile din fișierul de grăsime: CoreActionSheetPicker sunt: ​​armv7 armv7s arm64

dacă iau cadru din folderul Debug-iphonesimulator - funcționează pe simulatoare. și am o eroare pe dispozitiv: ld: simbolul (simbolurile) nu a fost găsit pentru arhitectura arm64

Arhitecturile din fișierul fat: CoreActionSheetPicker sunt: ​​i386 x86_64

Deci, cum să creați un cadru dinamic care să funcționeze pe dispozitive și simulatoare?

Actualizați:

Am găsit un „hack murdar” pentru acest caz. Vezi răspunsul meu de mai jos. Dacă cineva cunoaște un mod mai convenabil - vă rog, anunțați-mă!

6 Răspunsuri 6

Actualitatea acestui răspuns este: iulie 2015. Cel mai probabil lucrurile se vor schimba.

TLDR;

În prezent, Xcode nu are instrumente pentru exportul automat al cadrului universal de grăsime, astfel încât dezvoltatorul trebuie să recurgă la utilizarea manuală a instrumentului lipo. De asemenea, conform acestui radar înainte de a fi trimis către dezvoltatorul AppStore, care este consumatorul cadrului, trebuie să folosească și lipo pentru a scoate feliile de simulator dintr-un cadru.