Share via


Azure IoT SDK

下表列出可用來建置 IoT 解決方案的各種 SDK。

裝置 SDK

Microsoft Azure IoT 裝置 SDK 包含有助於建置應用程式的程式碼,並使裝置和應用程式連線到 Azure IoT 中心服務,且由其進行管理。 這些 SDK 可以在一般以 MPU 為基礎的計算裝置上執行,例如電腦、平板電腦、智慧型手機或 Raspberry Pi。 SDK 支援以 C 和現代受控語言開發,這些語言包括 C#、Node.JS、Python 和 JAVA。

SDK 支援多種語言,可提供彈性來讓您選擇最適合自己小組和案例的語言。

Language Package 來源 快速入門 範例 參考
.NET NuGet (英文) GitHub 連線到 IoT 中樞 範例 參考
Python pip GitHub 連線到 IoT 中樞 範例 參考
Node.js npm \(英文\)  GitHub 連線到 IoT 中樞 範例 參考
Java Maven GitHub 連線到 IoT 中樞 範例 參考
C packages 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 適用於多個作業系統,其提供的彈性可讓您選擇最適合您的案例的裝置 SDK。

RTOS SDK 來源 範例 參考
Eclipse ThreadX Azure RTO 中介軟體 GitHub 快速入門 參考
FreeRTOS FreeRTOS 中介軟體 GitHub 範例 參考
Bare Metal 適用於內嵌 C 的 Azure SDK GitHub 範例 參考

使用內嵌裝置 SDK 開發程式碼,以在連線到 IoT 中樞或 IoT Central 的 IoT 裝置上執行。

若要深入了解何時使用內嵌裝置 SDK,請參閱 C SDK 和內嵌 C SDK 使用方式情節

裝置 SDK 生命週期和支援

本節摘要說明 Azure IoT 裝置 SDK 生命週期和支援原則。 如需詳細資訊,請參閱 Azure SDK 生命週期和支援原則

套件生命週期

套件會以下列類別發行。 每個類別都有一個定義的支持結構。

  1. 搶鮮版 (Beta):也稱為預覽或候選版。 適用於早期存取和意見反應用途,不建議用於生產環境。 預覽版本支援僅限於 GitHub 問題。 預覽版本通常可存活不到六個月的時間,之後會遭到淘汰或發行為作用中版本。

  2. 作用中:正式推出且完全支援、接收新功能更新,以及 Bug 和安全性修正。 我們建議客戶使用最新版本,因為該版本會收到修正和更新。

  3. 已取代:由較新版本取代。 取代會在新版本變成作用中時同時發生。 已取代的版本可解決未來 12 個月最重要的 BUG 修正和安全性修正。

取得支援

如果您在使用 Azure IoT SDK 時遇到問題,有幾種方式可以尋求支援:

  • 報告 BUG:所有客戶都可以在與相關 SDK 相關聯的 GitHub 存放庫問題頁面上回報 BUG。

  • Microsoft 客戶支援小組 – 具有支援方案的任何使用者都可以接從 Azure 入口網站建立支援票證,與 Microsoft 客戶支援小組互動。

IoT 中心服務 SDK

Microsoft 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 CLIPowerShellREST API

DPS 裝置 SDK

DPS 裝置 SDK 提供登錄 API 實作,以及裝置透過 DPS 呼叫佈建的其他實作。 這些裝置 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

DPM 內嵌裝置 SDK

這些 SDK 的設計和建立目的是為了在計算和記憶體資源有限的裝置上執行,且其實作會使用 C 語言。

RTOS SDK 來源 範例 參考
Eclipse ThreadX Azure RTO 中介軟體 GitHub 快速入門 參考
FreeRTOS FreeRTOS 中介軟體 GitHub 範例 參考
Bare Metal 適用於內嵌 C 的 Azure SDK GitHub 範例 參考

深入瞭解IoT SDK中的裝置和內嵌裝置 SDK。

DPM 服務 SDK

DPS 服務 SDK 可協助您建置後端應用程式以管理 DPS 執行個體中的註冊和登錄記錄。

平台 套件 程式碼存放庫 範例 快速入門 參考
.NET NuGet (英文) GitHub 範例 快速入門 參考
Java Maven GitHub 範例 快速入門 參考
Node.js npm \(英文\) GitHub 範例 快速入門 參考

DPM 管理 SDK

DPS 管理 SDK 可協助您建置後端應用程式以管理 Azure 訂用帳戶中的 DPS 執行個體和其中繼資料。

平台 套件 程式碼存放庫 參考
.NET NuGet (英文) GitHub 參考
Java Maven GitHub 參考
Node.js npm \(英文\) GitHub 參考
Python pip GitHub 參考

Azure Digital Twins 控制平面 API

控制平面 API 是用來管理整個 Azure Digital Twins 執行個體的 ARM API,因此它們涵蓋了建立或刪除整個執行個體等操作。 您還將使用這些 API 來建立和刪除端點。

若要直接呼叫 API,請參考控制平面 Swagger 存放庫中的最新 Swagger 資料夾。 此資料夾也包含顯示使用量的範例資料夾。

以下是 Azure Digital Twins 控制平面 API 目前可用的 SDK。

SDK 語言 套件連結 參考文件 原始程式碼
.NET (C#) NuGet 上的 Azure.ResourceManager.DigitalTwins 適用於 .NET 的 Azure DigitalTwins SDK 參考 GitHub 上適用於 .NET 的 Microsoft Azure Digital Twins 管理用戶端程式庫
Java Maven 上的 azure-resourcemanager-digitaltwins 資源管理的參考 - Digital Twins GitHub 上適用於 Java 的 Azure Resource Manager AzureDigitalTwins 用戶端程式庫
JavaScript npm 上適用於 JavaScript 的 AzureDigitalTwinsManagement 用戶端程式庫 GitHub 上適用於 JavaScript 的 AzureDigitalTwinsManagement 用戶端程式庫
Python PyPI 上的 azure-mgmt-digitaltwins GitHub 上的 Microsoft Azure SDK for Python
Go azure-sdk-for-go/services/digitaltwins/mgmt GitHub 上的 Azure SDK for Go

Azure Digital Twins 資料平面 API

資料平面 API 是用來管理 Azure Digital Twins 執行個體內元素的 Azure Digital Twins API。 它們包括建立路由、上傳模型、建立關聯性及管理對應項等作業,可廣泛分成下列類別:

若要直接呼叫 API,請參考資料平面 Swagger 存放庫中的最新 Swagger 資料夾。 此資料夾也包含顯示使用量的範例資料夾。 您也可以檢視資料平面 API 參考文件

以下是 Azure Digital Twins 資料平面 API 目前可用的 SDK。

SDK 語言 套件連結 參考文件 原始程式碼
.NET (C#) NuGet 上的 Azure.DigitalTwins.Core 適用於 .NET 的 Azure IoT Digital Twins 用戶端程式庫參考 GitHub 上適用於 .NET 的 Azure IoT Digital Twins 用戶端程式庫
Java Maven 上的 com.azure:azure-digitaltwins-core 適用於 Java 的 Azure Digital Twins SDK 參考 GitHub 上適用於 Java 的 Azure IoT Digital Twins 用戶端程式庫
JavaScript npm 上適用於 JavaScript 的 Azure Azure Digital Twins Core 用戶端程式庫 Reference for @azure/digital-twins-core GitHub 上適用於 JavaScript 的 Azure Azure Digital Twins Core 用戶端程式庫
Python PyPI 上適用於 Python 的 Azure Azure Digital Twins Core 用戶端程式庫 azure-digitaltwins-core 的參考 GitHub 上適用於 Python 的 Azure Azure Digital Twins Core 用戶端程式庫

下一步

建議的後續步驟包括: