Partager via


Objective Sharpie Tools &Commandes

Vue d’ensemble des outils inclus avec Objective Sharpie et les arguments de ligne de commande à utiliser.

Une fois Objective Sharpie installé, ouvrez un terminal et familiarisez-vous avec les commandes que Objective Sharpie a à offrir :

$ sharpie -help
usage: sharpie [OPTIONS] TOOL [TOOL_OPTIONS]

Options:
  -h, -help                Show detailed help
  -v, -version             Show version information

Telemetry Options:
  -tlm-about               Show a detailed overview of what usage and binding
                             information will be submitted to Xamarin by
                             default when using Objective Sharpie.
  -tlm-do-not-submit       Do not submit any usage or binding information to
                             Xamarin. Run 'sharpie -tml-about' for more
                             information.
  -tlm-do-not-identify     Do not submit Xamarin account information when
                             submitting usage or binding information to Xamarin
                             for analysis. Binding attempts and usage data will
                             be submitted anonymously if this option is
                             specified.

Available Tools:
  xcode              Get information about Xcode installations and available SDKs.
  pod                Create a Xamarin C# binding to Objective-C CocoaPods
  bind               Create a Xamarin C# binding to Objective-C APIs
  update             Update to the latest release of Objective Sharpie
  verify-docs        Show cross reference documentation for [Verify] attributes
  docs               Open the Objective Sharpie online documentation

Objective Sharpie fournit les outils suivants :

Outil Description
Xcode Fournit des informations sur l’installation actuelle de Xcode et les versions des kits SDK iOS et Mac disponibles. Nous allons utiliser ces informations ultérieurement lors de la génération de nos liaisons.
Pod Recherche, configure, installe (dans un répertoire local) et lie les bibliothèques Objective-CCocoaPod disponibles à partir du référentiel master Spec. Cet outil évalue le CocoaPod installé pour déduire automatiquement l’entrée correcte à passer à l’outil bind ci-dessous. Nouveautés de la version 3.0 !
bind Analyse les fichiers d’en-tête (*.h) de la Objective-C bibliothèque dans les fichiers ApiDefinition.cs et StructsAndEnums.cs structs.
mise à jour Recherche les versions plus récentes d’Objective Sharpie et télécharge et lance le programme d’installation si l’un d’eux est disponible.
verify-docs Affiche des informations détaillées sur [Verify] les attributs.
docs Accède à ce document dans votre navigateur web par défaut.

Pour obtenir de l’aide sur un outil Objective Sharpie spécifique, entrez le nom de l’outil et l’option -help . Par exemple, sharpie xcode -help retourne la sortie suivante :

$ sharpie xcode -help
usage: sharpie xcode [OPTIONS]

Options:
  -h, -help        Show detailed help
  -v, -verbose     Be verbose with output

Xcode Options:
  -sdks            List all available Xcode SDKs. Pass -verbose for more details.

Avant de commencer le processus de liaison, nous devons obtenir des informations sur nos kits SDK installés actuels en entrant la commande suivante dans le terminal sharpie xcode -sdks. Votre sortie peut différer selon la ou les versions de Xcode que vous avez installées. Objective Sharpie recherche les kits SDK installés dans n’importe quel Xcode*.app/Applications répertoire :

$ sharpie xcode -sdks
sdk: appletvos9.0    arch: arm64
sdk: iphoneos9.1     arch: arm64   armv7
sdk: iphoneos9.0     arch: arm64   armv7
sdk: iphoneos8.4     arch: arm64   armv7
sdk: macosx10.11     arch: x86_64  i386
sdk: macosx10.10     arch: x86_64  i386
sdk: watchos2.0      arch: armv7

À partir de ce qui précède, nous pouvons voir que nous avons installé le iphoneos9.1 Kit de développement logiciel (SDK) sur notre ordinateur et qu’il a arm64 une prise en charge de l’architecture. Nous allons utiliser cette valeur pour tous les exemples de cette section. Avec ces informations en place, nous sommes prêts à analyser des fichiers d’en-tête Objective-C de bibliothèque dans le projet initial ApiDefinition.cs et StructsAndEnums.cs pour le projet de liaison.