web-dev-qa-db-fra.com

Que sont les fichiers binaires incorporés dans Xcode?

J'utilise Alamofire dans un projet Swift, et une partie de leurs instructions d'installation manuelle consiste à ajouter Alamofire sous Binaires incorporés dans l'onglet Général de ma cible d'application.

enter image description here

Que sont les fichiers binaires incorporés ?

53
Doug Richardson

Les fichiers binaires incorporés sont des fichiers binaires copiés dans votre groupe d'applications lorsque vous générez le projet. Utilisez des fichiers binaires incorporés lorsque votre application s'appuie sur des infrastructures tierces pour que les utilisateurs puissent utiliser votre application sans avoir besoin de ces infrastructures installées sur leur ordinateur. Les fichiers binaires incorporés évitent aux utilisateurs d’avoir à installer manuellement des infrastructures tierces. Votre application utilise le framework que vous avez intégré.

Dans votre exemple Alamofire, votre application s'appuie sur Alamofire. Si vous n'avez pas intégré le framework Alamofire, personne ne pourra utiliser votre application à moins d'avoir installé Alamofire manuellement. En intégrant Alamofire dans votre application, tout le monde peut exécuter votre application.

41
Mark Szymczyk
  • "Binaire" signifie: code compilé - par opposition à "code source", avec lequel vous travaillez lorsque vous écrivez du code en tant que texte.

    Ils pourraient vous ont donné le code source et ont laissé vous le compiler, mais ils ne l’ont pas fait; ils gardent le code source secret, donc ils vous ont tout donné après compilation, pour que vous ne puissiez pas le lire.

  • "Embarqué" signifie: être inclus dans votre lot d'applications, en le copiant au moment de la construction.

    Ainsi, ils vous remettent du code compilé (frameworks) et vous expliquent comment les inclure dans votre bundle d'applications. Ces cadres, contrairement aux cadres de Cocoa, n'existent pas déjà sur l'appareil. Par conséquent, si vous ne les incluez pas dans l'application, ils ne seront pas présents et votre application ne pourra pas les appeler.

    Comparez cela aux cadres de Cocoa. Eux aussi sont du code compilé. Mais ils do existent déjà sur l'appareil. Par conséquent, ils ne sont pas intégrés à votre application. elles sont simplement liées (et, si elles apparaissent, elles apparaîtront dans le groupe suivant, Frameworks and Libraries).

39
matt

L'incorporation de fichiers binaires copie l'intégralité de l'infrastructure vers la cible.

Un framework est un répertoire hiérarchique qui encapsule une bibliothèque dynamique, des fichiers d'en-tête et des ressources, telles que des storyboards, des fichiers image et des chaînes localisées, dans un seul package. Les applications utilisant des frameworks doivent embed the framework dans l'offre de l'application.

Ainsi, lorsque vous intégrez un framework dans votre application, cela augmente la taille de votre application car il est copié dans votre bundle d'applications. Dans la plupart des scénarios, nous utiliserons cette section lorsque nous utiliserons un framework tiers.

Lorsque nous ajoutons un framework à Embedded Binaries _ il ajoute automatiquement ce cadre à Linked Frameworks and Libraries également.

Reportez-vous à Apple pour plus de détails: https://developer.Apple.com/library/archive/technotes/tn2435/_index.html

2
Shubham Mishra

Embedding en fait ajoute par défaut une copie d'un framework à votre lot d'applications, dans le répertoire Frameworks. Votre application ne pourra rien faire avec ce Framework à moins qu’il y ait un lien. Xcode prend la liberté de le faire pour vous. [Lien vs Intégrer]

La source est ici

0
yoAlex5