你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure IoT SDK
下表列出了可用于生成 IoT 解决方案的各种 SDK。
设备 SDK
Microsoft Azure IoT 设备 SDK 包含的代码可帮助构建连接到 Azure IoT 中心服务并由这些服务管理的应用程序。 这些 SDK 可以在基于 MPU 的常规计算设备上运行,例如电脑、平板电脑、智能手机或 Raspberry Pi。 SDK 支持使用 C 和新式托管语言(包括 C#、Node.js、Python 和 Java)进行开发。
SDK 支持多种语言,你可以灵活地选择其中最适合团队和方案的一种。
语言 | 程序包 | Source | 快速入门 | 示例 | 参考 |
---|---|---|---|---|---|
.NET | NuGet | GitHub | 连接到 IoT 中心 | 示例 | 引用 |
Python | pip | GitHub | 连接到 IoT 中心 | 示例 | 引用 |
Node.js | npm | GitHub | 连接到 IoT 中心 | 示例 | 引用 |
Java | Maven | GitHub | 连接到 IoT 中心 | 示例 | 引用 |
C | 包 | GitHub | 连接到 IoT 中心 | 示例 | 引用 |
Java 设备 SDK 包含Android 示例。
C 设备 SDK 包含使用 CocoaPods 的 iOS 示例。
警告
Azure IoT C SDK 因其内存管理和线程模型而不适合嵌入式应用程序。 对于嵌入式设备 SDK 选项,请查看嵌入式设备 SDK。
使用设备 SDK 开发代码,以在连接到 IoT 中心或 IoT Central 的 IoT 设备上运行。
要详细了解如何使用设备 SDK,请参阅什么是 Azure IoT 设备和应用程序开发?
嵌入式设备 SDK
这些 SDK 是为在计算和内存资源有限的设备上运行而设计和创建的,并且使用 C 语言来实现。
嵌入式设备 SDK 支持多种操作系统,你可以灵活地选择其中最适合方案的一种。
RTOS | SDK | 源 | 示例 | 参考 |
---|---|---|---|---|
Eclipse ThreadX | Azure RTOS 中间件 | GitHub | 快速入门 | 引用 |
FreeRTOS | FreeRTOS 中间件 | GitHub | 示例 | 引用 |
裸机 | 适用于嵌入式 C 的 Azure SDK | GitHub | 示例 | 引用 |
使用嵌入式设备 SDK 开发代码,以在连接到 IoT 中心或 IoT Central 的 IoT 设备上运行。
要详细了解何时使用嵌入式设备 SDK,请参阅 C SDK 和嵌入式 C SDK 使用方案。
设备 SDK 生命周期和支持
本部分汇总了 Azure IoT 设备 SDK 生命周期和支持策略。 有关详细信息,请参阅 Azure SDK 生命周期和支持策略。
包生命周期
包将按以下类别发布。 每个类别都有一个已定义的支持结构。
Beta - 也称为预览版或候选发布。 可供早期访问,或出于反馈目的访问,不建议在生产环境中使用。 对预览版的支持仅限于 GitHub 问题。 预览版通常生存不到六个月,之后它们要么弃用,要么作为活动版本发布。
活动 - 正式发布且完全受支持,可接收新功能更新以及 bug 和安全修复。 我们建议客户使用最新版本,因为它们会收到修补程序和更新。
已弃用 - 由较新版本取代。 弃用是在新版本变为活动状态的同时发生的。 弃用的版本会处理接下来 12 个月中最关键的 bug 修复和安全修补程序。
获取支持
如果你在使用 Azure IoT SDK 时遇到问题,可以通过多种方式来寻求支持:
报告 bug - 所有客户都可以在与相关 SDK 关联的 GitHub 存储库的问题页面上报告 bug。
Microsoft 客户支持团队 - 拥有支持计划的用户可以通过直接从 Azure 门户创建支持票证来与 Microsoft 客户支持团队进行沟通。
IoT 中心服务 SDK
Azure IoT 服务 SDK 包含的代码可帮助生成直接与 IoT 中心进行交互以管理设备和安全性的应用程序。
平台 | 程序包 | 代码存储库 | 示例 | 参考 |
---|---|---|---|---|
.NET | NuGet | GitHub | 示例 | 引用 |
Java | Maven | GitHub | 示例 | 引用 |
节点 | npm | GitHub | 示例 | 引用 |
Python | pip | GitHub | 示例 | 引用 |
要详细了解如何使用服务 SDK 通过 IoT 中心与设备交互,请参阅 IoT 即插即用服务开发人员指南。
IoT 中心管理 SDK
IoT 中心管理 SDK 可帮助你生成管理 Azure 订阅中的 IoT 中心的后端应用程序。
平台 | 程序包 | 代码存储库 | 参考 |
---|---|---|---|
.NET | NuGet | GitHub | 引用 |
Java | Maven | GitHub | 引用 |
Node.js | npm | GitHub | 引用 |
Python | pip | GitHub | 引用 |
管理 SDK 的替代项包括 Azure CLI、PowerShell 和 REST API。
DPS 设备 SDK
DPS 设备 SDK 提供注册 API 和设备调用以通过 DPS 进行预配的其他 API 的实现。 设备 SDK 可以在基于 MPU 的常规计算设备上运行,例如电脑、平板电脑、智能手机或 Raspberry Pi。 SDK 支持使用 C 和新式托管语言(包括 C#、Node.js、Python 和 Java)进行开发。
平台 | 程序包 | 代码存储库 | 示例 | 快速入门 | 参考 |
---|---|---|---|---|---|
.NET | NuGet | GitHub | 示例 | 快速入门 | 引用 |
C | apt-get、MBED、Arduino IDE 或 iOS | GitHub | 示例 | 快速入门 | 引用 |
Java | Maven | GitHub | 示例 | 快速入门 | 引用 |
Node.js | npm | GitHub | 示例 | 快速入门 | 引用 |
Python | pip | GitHub | 示例 | 快速入门 | 引用 |
警告
上述 C SDK 因其内存管理和线程模型不适合嵌入式应用程序 。 对于嵌入式设备,请参阅嵌入式设备 SDK。
DPS 嵌入式设备 SDK
这些 SDK 是为在计算和内存资源有限的设备上运行而设计和创建的,并且使用 C 语言来实现。
RTOS | SDK | 源 | 示例 | 参考 |
---|---|---|---|---|
Eclipse ThreadX | Azure RTOS 中间件 | GitHub | 快速入门 | 引用 |
FreeRTOS | FreeRTOS 中间件 | GitHub | 示例 | 引用 |
裸机 | 适用于嵌入式 C 的 Azure SDK | GitHub | 示例 | 引用 |
详细了解 IoT SDK 中的设备和嵌入式设备 SDK。
DPS 服务 SDK
DPS 服务 SDK 可帮助构建后端应用程序,以便管理 DPS 实例中的注册和注册记录。
平台 | 程序包 | 代码存储库 | 示例 | 快速入门 | 参考 |
---|---|---|---|---|---|
.NET | NuGet | GitHub | 示例 | 快速入门 | 引用 |
Java | Maven | GitHub | 示例 | 快速入门 | 引用 |
Node.js | npm | GitHub | 示例 | 快速入门 | 引用 |
DPS 管理 SDK
DPS 管理 SDK 可帮助你构建后端应用程序来管理 Azure 订阅中的 DPS 实例及其元数据。
平台 | 程序包 | 代码存储库 | 参考 |
---|---|---|---|
.NET | NuGet | GitHub | 引用 |
Java | Maven | GitHub | 引用 |
Node.js | npm | GitHub | 引用 |
Python | pip | GitHub | 引用 |
Azure 数字孪生控制平面 API
控制平面 API 是用于将 Azure 数字孪生实例作为一个整体进行管理的 ARM API,因此它们涵盖了创建实例或删除实例等操作。 你还将使用这些 API 来创建和删除终结点。
要直接调用 API,可引用控制平面 Swagger 存储库中最新的 Swagger 文件夹。 此文件夹还包括一个示例文件夹,其中显示了用法。
下面是目前可用于 Azure 数字孪生控制平面 API 的 SDK。
Azure 数字孪生数据平面 API
数据平面 API 是用于管理 Azure 数字孪生实例中的元素的 Azure 数字孪生 API。 这包括创建路由、上传模型、创建关系和管理孪生等操作,并且可大体上可以划分为以下类别:
DigitalTwinModels
- DigitalTwinModels 类别包含用于管理 Azure 数字孪生实例中的模型的 API。 管理活动包括上传、验证、检索和删除在 DTDL 中创作的模型。DigitalTwins
- DigitalTwins 类别包含让开发人员能够在 Azure 数字孪生实例中创建、修改和删除数字孪生体及其关系的 API。Query
- 查询类别让开发人员能够跨关系查找孪生图中的数字孪生体集。Event Routes
- 事件路由类别包含通过系统向下游服务路由数据的 API。Import Jobs
- 通过导入作业 API,可以管理长期运行的异步操作,以批量导入模型、孪生体和关系。Delete Jobs
- 通过删除作业 API,可以管理长期运行的异步操作,以删除实例中的所有模型、孪生体和关系。
要直接调用 API,可引用数据平面 Swagger 存储库中最新的 Swagger 文件夹。 此文件夹还包括一个示例文件夹,其中显示了用法。 还可以查看数据平面 API 参考文档。
下面是目前可用于 Azure 数字孪生数据平面 API 的 SDK。
后续步骤
建议执行的后续步骤包括: