2014-09-16 4 views

Répondre

15

J'ai découvert que la version que j'essayais de télécharger a été archivée dans Xcode beta 6:/La mise à niveau vers la version GM a résolu mon problème. Assurez-vous également que Embedded Content contains swift code est réglé sur "NON" dans les paramètres de construction de votre extension et que vous définissez "OUI" dans les paramètres de construction de votre application.

+1

J'ai rencontré ce problème en soumettant une mise à jour à notre application Apple Watch qui contenait certains Swift dans l'extension de la montre. Même si le paramètre "Embedded Content contient swift code" était défini dans le paramètre de génération de cible de l'extension de surveillance, cette erreur était toujours présente. La solution était d'activer ce ** dans la cible de l'application iPhone **, même si cette cible ne contient actuellement aucun Swift. – phatblat

6

Juste pour ajouter à cela. Le Embedded Content contains swift code a travaillé pour moi aussi. De plus, j'avais une extension et je faisais des liens vers des frameworks dans cette extension. J'ai également été en copiant les cadres de l'extension, aka création d'un dossier Frameworks. Parce que c'est ce que vous devez faire correctement? Eh bien, j'avais vraiment tort. Je suppose que le chemin de recherche de l'extension sait regarder dans l'application du dossier du cadre de contenant via le paramètre RUNPATH de poste cible Chemins de recherche dans les paramètres Build

@executable_path/../../Frameworks 

Quel était pas clair pour moi, et il est maintenant clair est que vous ne copiez pas les Frameworks (Copy Build Phase) dans l'extension. Il les utilise à partir de l'application contenant. Ce qui est aussi pourquoi, si vous souhaitez utiliser vos cadres dans votre extension, vous devez être sûr que les Build Settings>Exigez API de App-Extension-Safe est réglé sur Oui

+0

Cela a du sens. Aussi je pense que c'est la seule solution correcte, puisque le dossier '' 'Frameworks /' '' est sur le dossier racine seulement. Donc, tous les appex regardent ce dossier, et le dossier racine d'appex n'a pas besoin d'un autre dossier imbriqué '' '' Frameworks'''. – loretoparisi

1

Pour l'application , je devais définir:

Embedded Content Contains Swift Code: YES 

et pour l'extension:

Embedded Content Contains Swift Code: NO 
+1

Est-ce que cela s'applique à un projet Swift uniquement avec des frameworks Swift uniquement? Je ne pense pas ... – igraczech

2

pour moi, aucune des solutions ci-dessus travaillé, mais dans le fin this GH issue a donné un indice.

Si vous utilisez CocoaPods, vous pouvez envisager de supprimer les cadres Intégrer construire sur la cible problématique de phase (l'extension), le problème est résolu pour moi.

+0

Celui-ci a fonctionné pour moi. Cela semble vague, mais cela a résolu mon problème. – SpaceTrucker

Questions connexes