AWS IoT Device SDK、Mobile SDK、および AWS IoT Device Client - AWS IoT Core

AWS IoT Device SDK、Mobile SDK、および AWS IoT Device Client

このページでは、AWS IoT と選択したハードウェアプラットフォームを使用して革新的な IoT ソリューションを構築するのに役立つ、AWS IoT Device SDK、オープンソースライブラリ、デベロッパーガイド、サンプルアプリケーション、および移植ガイドの概要を説明します。

これらの SDK は、IoT デバイスで使用するためのものです。モバイルデバイスで使用する IoT アプリケーションを開発している場合は、AWS Mobile SDK を参照してください。IoT アプリケーションまたはサーバー側プログラムを開発している場合は、AWS SDK を参照してください。

AWS IoTDevice SDKs

AWS IoT Device SDK には、オープンソースライブラリ、サンプル付きの開発者ガイド、ガイドが含まれているので、選択したプラットフォーム上で革新的な IoT 製品またはソリューションを構築できます。

これらの SDK は、MQTT および WSS プロトコルを使用して、IoT デバイスを AWS IoT に接続するのに役立ちます。

C++

AWS IoT C++ Device SDK

AWS IoT C++ Device SDK を使用すると、デベロッパーは AWS および AWS IoT API を使用して接続されたアプリケーションを構築できます。具具体的には、この SDK にはリソース制約がなく、メッセージキュー、マルチスレッドサポート、最新の言語機能などの高度な機能が必要なデバイス向けに設計されています。詳細については、以下を参照してください。

Python

AWS IoT Device SDK for Python

AWS IoT Device SDK for Python では、開発者が デバイスを使用して MQTT または WebSocket プロトコル経由の MQTT で AWS IoT プラットフォームにアクセスできるように Python スクリプトを記述できます。そのデバイスを AWS IoT に接続することで、ユーザーは AWS IoT が提供するメッセージブローカー、ルール、Shadows、および、AWS Lambda、Kinesis、Amazon S3 などその他の AWS のサービスを安全に使用できます。

JavaScript

AWS IoT Device SDK for JavaScript

aws-iot-device-sdk.js パッケージでは、開発者が MQTT または WebSocket プロトコル経由の MQTT を使用して AWS IoT にアクセスする JavaScript アプリケーションを記述できます。これは、Node.js 環境およびブラウザーアプリケーションで使用できます。詳細については、以下を参照してください。

Java

AWS IoT Device SDK for Java

AWS IoT Device SDK for Java では、Java 開発者が MQTT または WebSocket プロトコル経由の MQTT で AWS IoT プラットフォームにアクセスできます。SDK はシャドウをサポートするように構築されています。GET、UPDATE、DELETE を含む HTTP メソッドを使用して、 Shadows にアクセスできます。SDK では、簡略化された Shadow アクセスモデルもサポートしていて、開発者が、JSON ドキュメントをシリアル化または逆シリアル化することなく、ゲッターメソッドとセッターメソッドを使用するだけで Shadows とデータを交換できます。詳細については、以下を参照してください。

AWS IoT Device SDK for Embedded C

注記

この SDK は、経験豊富な組み込みソフトウェアデベロッパーによる使用を想定しています。

AWS IoT Device SDK for Embedded C (C-SDK) は、IoT デバイスを AWS IoT Core に安全に接続するために組み込みアプリケーションで使用できる、MIT オープンソースライセンスに基づく C ソースファイルのコレクションです。これには、MQTT、JSON Parser、および AWS IoT Device Shadow ライブラリが含まれています。これはソース形式で配布され、アプリケーションコード、その他のライブラリ、およびオプションで RTOS (Real Time Operating System) とともにお客様のファームウェアに組み込まれることが意図されています。

Fleet Provisioning の場合、https://github.com/aws/aws-iot-device-sdk-embedded-C/tree/v4_beta_deprecated にある AWS IoT Device SDK for Embedded C の v4_beta_deprecated バージョンを使用します。詳細については、このブランチの README を確認してください。

AWS IoT Device SDK for Embedded C は通常、最適化された C 言語ランタイムを必要とするリソース制約のあるデバイスを対象としています。この SDK は、任意のオペレーティングシステムで使用でき、任意のプロセッサタイプ (MCU や MPU など) でホストできます。

詳細については、以下を参照してください。

AWS IoT Device SDK の以前のバージョン

これらは、上記の新しいバージョンに置き換えられた AWS IoT Device SDK の以前のバージョンです。これらの SDK は、メンテナンスおよびセキュリティ更新プログラムのみを受信します。新しい機能を含むように更新されることはないため、新しいプロジェクトでは使用しないでください。

AWS Mobile SDK

AWS Mobile SDK は、モバイルアプリケーションデベロッパーに、 AWS IoT Core サービスの API、MQTT を使用した IoT デバイス通信、および他の AWS のサービスの API に対するプラットフォーム固有のサポートを提供します。

Android

AWS Mobile SDK for Android

AWS Mobile SDK for Android には、デベロッパーが AWS を使用して関連するモバイルアプリケーションを構築できるように、ライブラリ、サンプル、およびドキュメントが含まれています。この SDK には、MQTT デバイス通信と AWS IoT Core サービスの API 呼び出しのサポートも含まれています。詳細については、以下を参照してください。

iOS

AWS Mobile SDK for iOS

AWS Mobile SDK for iOS はオープンソースの開発キットで、Apache オープンソースライセンスのもとに配布されています。AWS Mobile SDK for iOS には、デベロッパーが AWS を使用して関連するモバイルアプリケーションを構築できるように、ライブラリ、コードサンプル、およびドキュメントが含まれています。この SDK には、MQTT デバイス通信と AWS IoT Core サービスの API 呼び出しのサポートも含まれています。詳細については、以下を参照してください。

AWS IoT Device Client

AWS IoT Device Client は、デバイスが AWS IoT に接続し、フリートプロビジョニングタスクを実行し、デバイスセキュリティポリシーをサポートし、セキュアトンネリングを使用して接続し、デバイスでジョブを処理するのに役立つコードを提供します。このソフトウェアをデバイスにインストールして、これらの日常的なデバイスタスクを処理できるため、特定のソリューションに集中できます。

注記

AWS IoT Device Client は、x86_64 または ARM プロセッサと一般的な Linux オペレーティングシステムを備えたマイクロプロセッサベースの IoT デバイスで動作します。

C++

AWS IoT Device Client

C++ の AWS IoT Device Client の詳細については、以下を参照してください。