Amazon IoT Device SDK、Mobile SDK 和 Amazon IoT Device Client - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon IoT Device SDK、Mobile SDK 和 Amazon IoT Device Client

本页总结了 Amazon IoT Device SDK、开源库、开发人员指南、示例应用程序和移植指南的内容,可帮助您使用 Amazon IoT 和您选择的硬件平台构建创新的 IoT 解决方案。

这些 SDK 供您在 IoT 设备上使用。如果您正在开发用于移动设备的 IoT 应用,请参阅 AmazonMobile SDK。如果您正在开发 IoT 应用程序或服务器端程序,请参阅 Amazon SDKs

Amazon IoT Device SDK

Amazon IoT Device SDK 包括开源库、开发人员指南(含示例)和移植指南,便于您在自己选择的硬件平台上构建富有创新精神的 IoT 产品或解决方案。

注意

Amazon IoT Device SDK 已发布了 MQTT 5 客户端。Amazon IoT Device SDK 不支持在 macOS 上使用 TLS 1.3。

这些 SDK 可帮助您使用 MQTT 和 WSS 协议将 IoT 设备连接到 Amazon IoT。

C++

Amazon IoT C++ 设备 SDK

Amazon IoT C++ Device SDK 使得开发人员可以使用Amazon和 Amazon IoT API 构建互连应用程序。特别是,此 SDK 面向没有资源限制且需要高级特征(例如,消息队列、多线程支持和最新的语言特征)的设备而设计。有关更多信息,请参阅下列内容:

Python

适用于 Python 的 Amazon IoT 设备 SDK

借助 Amazon IoT Device SDK for Python,开发人员可以编写 Python 脚本,以使用其设备通过 MQTT 或基于 WebSocket 的 MQTT 协议来访问 Amazon IoT 平台。通过将设备连接到 Amazon IoT,用户可以安全地使用由 Amazon IoT 提供的消息代理、规则和影子,以及 Amazon Lambda、Kinesis 和 Amazon S3 等其它 Amazon 服务。

JavaScript

适用于 JavaScript 的 Amazon IoT 设备 SDK

借助 aws-iot-device-sdk.js 软件包,开发人员可以编写 JavaScript 应用程序,这些应用程序可使用 MQTT 或基于 WebSocket 的 MQTT 协议来访问 Amazon IoT。它可用于 Node.js 环境和浏览器应用程序。有关更多信息,请参阅下列内容:

Java

适用于 Java 的 Amazon IoT 设备 SDK

借助 Amazon IoT Device SDK for Java,Java 开发人员能够通过 MQTT 或基于 WebSocket 协议的 MQTT 来访问 Amazon IoT 平台。该 SDK 内置有影子支持。您可以使用 HTTP 方法 (包括 GET、UPDATE 和 DELETE) 访问影子。该 SDK 还支持简化的影子访问模型,开发人员只需要使用 getter 和 setter 方法即可与影子交换数据,而不必对任何 JSON 文档进行序列化或反序列化。

注意

适用于 Java 的 Amazon IoT Device SDK v2 现在支持进行 Android 开发。有关详细信息,请参阅 Amazon IoT Device SDK for Android

有关更多信息,请参阅下列内容:

Amazon IoT Device SDK for Embedded C

注意

该 SDK 供经验丰富的嵌入式软件开发人员使用。

Amazon IoT Device SDK for Embedded C (C-SDK) 是 MIT 开源许可证下多个 C 源文件的集合,可在嵌入式应用程序中使用,以安全地将 IoT 设备连接到 Amazon IoT Core。其中包括 MQTT 客户端、JSON Parser、Amazon IoT Device Shadow、Amazon IoT Jobs、Amazon IoT Fleet Provisioning 和 Amazon IoT Device Defender 库。该开发工具包以源代码形式分发,可构建到客户固件和应用程序代码、其他库以及您选择的操作系统 (OS) 中。

Amazon IoT Device SDK for Embedded C通常面向需要优化的 C 语言运行时的资源受限设备。您可以在任何操作系统上使用此 SDK,并将其托管在任何类型的处理器(例如 MCU 和 MPU)上。

有关更多信息,请参阅下列内容:

早期 Amazon IoT Device SDK 版本

这些早期版本的 Amazon IoT Device SDK 已被上面列出的较新版本替换。这些 SDK 仅接收维护和安全更新。它们不会更新以获取新特征,也不应用于新项目。

AmazonMobile SDK

Amazon Mobile SDK 为移动应用程序开发人员提供特定于平台的支持,支持 Amazon IoT Core 服务的 API、使用 MQTT 的 IoT 设备通信以及其它 Amazon 服务的 API。

Android

Amazon Mobile SDK for Android

Amazon Mobile SDK for Android 包含为开发人员提供的库、示例和文档,以便于他们使用Amazon构建联网的移动应用程序。此 SDK 还包括对 MQTT 设备通信和调用 Amazon IoT Core 服务 API 的支持。有关更多信息,请参阅下列内容:

iOS

Amazon Mobile SDK for iOS

Amazon Mobile SDK for iOS 是开源的软件开发套件,依据 Apache 开源许可分发。Amazon Mobile SDK for iOS 为开发人员提供库、代码示例和文档,以便于他们使用Amazon构建联网的移动应用程序。此 SDK 还包括对 MQTT 设备通信和调用 Amazon IoT Core 服务 API 的支持。有关更多信息,请参阅下列内容:

Amazon IoT Device Client

Amazon IoT Device Client 提供代码以帮助您的设备连接到 Amazon IoT、执行机群预置任务、支持设备安全策略、使用安全隧道进行连接以及处理设备上的任务。您可以在设备上安装此软件来处理这些常规设备任务,以便专注于特定的解决方案。

注意

Amazon IoT Device Client 与基于微处理器且搭载 x86_64 或 ARM 处理器和常见 Linux 操作系统的 IoT 设备配合使用。

C++

Amazon IoT 设备客户端

有关以 C++ 编写的 Amazon IoT Device Client 的更多信息,请参阅以下内容: