2017-10-13 13 views
1

Je crée un framework universel pour iOS. Je suis en train de créer un à lipo et cela crée uneCréation d'un framework universel iOS avec Xcode 9

universel Je vérifie l'architecture avec lipo après la création il me retourne correct: Architectures dans le fichier de graisse: i386 x86_64 armv7 arm64

J'exécuter l'application sur le téléphone et sur simulateur qui fonctionne bien aussi .. Mais quand je tente d'exporter la .ipa de xcarchive je reçois l'erreur suivante:

Impossible de vérifier dans Myframework.framework code binaire/Myframework: \ nerreur: Plate-forme iPhoneSimulator est pas pris en charge \ n \ n

Je peux aussi les symboles de code binaire dans mon cadre universel en cours d'exécution

otool -l /Path/To/Framework | grep __LLVM 

    segname __LLVM 

    segname __LLVM 

Si je choisis seulement iphoneos cadre qui fonctionne bien

Répondre

1

Vous devez enlever i386 et x86_64 du cadre avant d'exporter l'archive.

par exemple. $ lipo -remove i386 ./path/to/binary_name -o ./path/to/binary_name $ lipo -remove x86_64 ./path/to/binary_name -o ./path/to/binary_name

Vous devez faire cela, puisque i386 et x86_64 ne sont pas pris en charge pour l'exportation - « Plate-forme iPhoneSimulator est pas pris en charge »

+0

vous dire avant d'exporter les archives de l'application? Est-ce une pratique générale de le faire? – hariszaman

+0

https://stackoverflow.com/a/31270427/598057 –

+0

@hariszaman Oui, vous ne pouvez pas envoyer de binaires iPhoneSimulator à l'App Store. En interne, vous pouvez les utiliser tout ce que vous voulez. – greymouser