使用 Objective Sharpie 创建绑定

本部分介绍 Objective Sharpie,它是 Xamarin 的命令行工具,用于自动创建到 Objective-C 库的绑定

概述

Objective Sharpie 是一种命令行工具,可帮助启动绑定的第一个传递。 工作原理是分析本机库的头文件,将公共 API 映射到绑定定义(此过程以前手动完成)。

Objective Sharpie 使用 Clang 分析头文件,因此绑定尽可能准确且全面。 这可大大减少生成高质量绑定所花费的时间和精力。

重要

Objective Sharpie 是一种工具,适合精通 Objective-C(和通过延伸学习精通 C)且经验丰富的 Xamarin 开发人员。 在尝试绑定 Objective-C 库之前,你应该具备有关如何在命令行上生成本机库的扎实知识(并充分了解本机库的工作原理)。

History

在过去三年,我们一直在 Xamarin 内部改进和使用 Objective Sharpie。 为了证明 Objective Sharpie 的强大功能,自 iOS 8、Mac OS X 10.10 和 watchOS 2.0 起在 Xamarin.iOS 和 Xamarin.Mac 中引入的 API 完全通过 Objective Sharpie 启动。 Xamarin 在内部非常依赖 Objective Sharpie 来构建自己的产品。

但是,Objective Sharpie 是一种非常高级的工具,要求精通 Objective-C 和 C,熟知如何在命令行上使用 clang 编译器,并大概了解如何将本机库组合在一起。 由于使用门槛高,我们认为有 GUI 向导会导致错误的预期,因此 Objective Sharpie 当前仅作为命令行工具提供。