Azure IoT enhets- och tjänst-SDK:er

Den här referensen visar de Azure-SDK:er du kan använda för att skapa IoT-lösningar, inklusive SDK:er för enhet, tjänst och hantering för IoT Hub och Device Provisioning Service (DPS), förhandsversions-SDK:er för certifikathantering och länkar till Azure Digital Twins kontrollplans- och dataplans-API:er.

Enhets-SDK:er

Microsoft Azure IoT-enhets-SDK:er innehåller kod som underlättar skapandet av program som ansluter till och hanteras av Azure IoT Hub tjänster. Dessa SDK:er kan köras på en allmän MPU-baserad beräkningsenhet, till exempel en dator, surfplatta, smartphone eller Raspberry Pi. SDK:erna stöder utveckling i C och i moderna hanterade språk, bland annat i C#, Node.js, Python och Java.

SDK:erna är tillgängliga på flera språk , vilket ger flexibiliteten att välja vilket som passar ditt team och ditt scenario bäst.

Språk Package Källa Snabbstarter Exempel Referens
.NET NuGet GitHub Anslut till IoT Hub Samplar Referens
Python pip GitHub Anslut till IoT Hub Samplar Referens
Node.js npm  GitHub Anslut till IoT Hub Samplar Referens
Java Maven GitHub Anslut till IoT Hub Samplar Referens
C paket GitHub Anslut till IoT Hub Samplar Referens

SDK:n för Java-enheten innehåller samplar för Android.

C-enhetens SDK innehåller samplar för iOS som använder CocoaPods.

Varning

Azure IoT C SDK är inte lämplig för inbäddade program på grund av dess minneshantering och trådningsmodell. Information om SDK-alternativ för inbäddade enheter finns i SDK:erna för inbäddade enheter.

Använd enhetens SDK:er för att utveckla kod som ska köras på IoT-enheter som ansluter till IoT Hub eller IoT Central.

SDK:er för inbäddade enheter

Dessa SDK:er har utformats och skapats för att köras på enheter med begränsade beräknings- och minnesresurser och implementeras med C-språket.

SDK:er för inbäddade enheter är tillgängliga för flera operativsystem , vilket ger flexibiliteten att välja vilket som passar bäst för ditt scenario.

RTOS SDK Källa Exempel Referens
Eclipse ThreadX Azure RTOS Mellanprogram GitHub Snabbstarter Referens
FreeRTOS FreeRTOS Middleware GitHub Samplar Referens
Bare Metal Azure SDKs för Embedded C GitHub Samplar Referens

Använd de inbäddade enhets-SDK:erna för att utveckla kod som ska köras på IoT-enheter som ansluter till IoT Hub eller IoT Central.

Mer information om när du ska använda SDK:er för inbäddade enheter finns i Användningsscenarier för C SDK och Inbäddad C SDK.

Enhetens SDK-livscykel och support

I det här avsnittet sammanfattas livscykeln för Azure IoT Device SDK och supportprincipen. Mer information finns i Azure SDKs Livscykel och supportprincip.

Paketlivscykel

Paket släpps i följande kategorier. Varje kategori har en definierad stödstruktur.

  1. Beta – kallas även förhandsversion eller versionskandidat. Tillgänglig för tidig åtkomst och feedback och rekommenderas inte för användning i produktion. Förhandsversionssupporten är begränsad till GitHub problem. Förhandsversioner är vanligtvis tillgängliga i mindre än sex månader, varefter de antingen är inaktuella eller släppta som aktiva.

  2. Aktiv – Allmänt tillgänglig och stöds fullt ut, tar emot nya funktionsuppdateringar samt bugg- och säkerhetskorrigeringar. Använd den senaste versionen eftersom den versionen tar emot korrigeringar och uppdateringar.

  3. Inaktuell – ersatt av en nyare version. Utfasningen sker samtidigt som den nya versionen blir aktiv. Föråldrade versioner hanterar de mest kritiska fel- och säkerhetskorrigeringarna i ytterligare 12 månader.

Få support

Om du får problem när du använder Azure IoT SDK:er kan du söka support via följande alternativ:

  • Rapportera buggar – Alla kunder kan rapportera buggar på problemsidan för den GitHub lagringsplats som är associerad med relevant SDK.

  • Microsoft kundsupport – Användare som har en supportplan kan kontakta Microsoft kundsupportteam genom att skapa ett supportärende direkt från Azure-portalen.

SDK:er för IoT Hub-tjänsten

SDK:erna för Azure IoT-tjänsten innehåller kod som underlättar skapandet av program som interagerar direkt med IoT Hub för att hantera enheter och säkerhet.

Plattform Package Kodlagringsplats Exempel Referens
.NET NuGet GitHub Samplar Referens
Java Maven GitHub Samplar Referens
Nod npm GitHub Samplar Referens
Python pip GitHub Samplar Referens

Mer information om hur du använder tjänst-SDK:er för att interagera med enheter via en IoT-hubb finns i IoT Plug and Play guide för tjänstutvecklare.

SDK:er för IoT Hub hantering

SDK:er för IoT Hub hantering hjälper dig att skapa serverdelsprogram som hanterar IoT-hubbar i din Azure-prenumeration.

Plattform Package Kodlagringsplats Referens
.NET NuGet GitHub Referens
Java Maven GitHub Referens
Node.js npm GitHub Referens
Python pip GitHub Referens

Alternativ till hanterings-SDK:er är Azure CLI, PowerShell och REST API.

DPS-enhets-SDK:er

DPS-enhets-SDK:erna tillhandahåller implementeringar av register-API:t och andra som enheter anropar för tilldelning via DPS. Enhetens SDK:er kan köras på allmänna MPU-baserade beräkningsenheter, till exempel en dator, surfplatta, smartphone eller Raspberry Pi. SDK:erna stöder utveckling i C och i moderna hanterade språk, bland annat i C#, Node.js, Python och Java.

I följande tabell visas de enhets-SDK:er som är tillgängliga för varje språk som stöds.

Plattform Package Kodlagringsplats Exempel Snabbstart Referens
.NET NuGet GitHub Samplar Snabbstart Referens
C apt-get, MBED, Arduino IDE eller iOS GitHub Samplar Snabbstart Referens
Java Maven GitHub Samplar Snabbstart Referens
Node.js npm GitHub Samplar Snabbstart Referens
Python pip GitHub Samplar Snabbstart Referens

Varning

C SDK:t ovan är inte lämplig för inbäddade program på grund av dess minneshantering och trådningsmodell. Se SDK:er för inbäddade enheter.

DPS embedded device SDK:er

Dessa SDK:er har utformats och skapats för att köras på enheter med begränsade beräknings- och minnesresurser och implementeras med C-språket.

RTOS SDK Källa Exempel Referens
Eclipse ThreadX Azure RTOS Mellanprogram GitHub Snabbstarter Referens
FreeRTOS FreeRTOS Middleware GitHub Samplar Referens
Bare Metal Azure SDKs för Embedded C GitHub Samplar Referens

Läs mer om SDK:er för enheter och inbäddade enheter i IoT SDK:er.

DPS-tjänst-SDK:er

DPS-tjänstens SDK:er hjälper dig att bygga backend-program för att hantera anmälningar och registreringsposter i DPS-instanser.

Plattform Package Kodlagringsplats Exempel Snabbstart Referens
.NET NuGet GitHub Samplar Snabbstart Referens
Java Maven GitHub Samplar Snabbstart Referens
Node.js npm GitHub Samplar Snabbstart Referens

DPS-hanterings-SDK:er

DPS-hanterings-SDK:er hjälper dig att skapa serverdelsprogram som hanterar DPS-instanserna och deras metadata i din Azure-prenumeration.

Plattform Package Kodlagringsplats Referens
.NET NuGet GitHub Referens
Java Maven GitHub Referens
Node.js npm GitHub Referens
Python pip GitHub Referens

SDK:er för certifikathantering (förhandsversion)

För SDK:er som stöder Microsoft-stödda X.509-certifikathantering i förhandsversionen använder du följande instruktioner och exempel. Om du vill använda SDK:er för certifikathantering i förhandsversionen måste du använda Azure IoT Hub med en länkad DPS-instans, och enheterna måste etableras via DPS.

SDK:er för certifikathanteringsenheter (förhandsversion)

I följande tabell visas de plattforms-SDK:er som för närvarande stöder Microsoft-stödda X.509-certifikathantering i förhandsversion.

Språk Package Källa/gren Exempel
.NET NuGet Azure/azure-iot-sdk-csharp på feature/iot-csr-preview CertificateSigningRequestSample
Python pip Azure/azure-iot-sdk-python på feature/iot-csr-preview cert-mgmt
Node.js npm Ej tillgänglig Ej tillgänglig
Java Maven Azure/azure-iot-sdk-java på feature/csr certificate-signing-sample
C paket Azure/azure-iot-sdk-c på feature/dps-csr-preview iothub_ll_client_sample_certificate_signing_request

Inbäddade SDK:er för certifikathantering (förhandsversion)

I följande tabell visas de inbäddade SDK:er som för närvarande stöder Microsoft X.509-certifikathantering i förhandsversion.

RTOS SDK Källa Exempel
FreeRTOS FreeRTOS Middleware Azure/azure-iot-middleware-freertos på feature/dps-csr-preview Ej tillgänglig
Bare Metal Azure SDKs för Embedded C Azure/azure-sdk-for-c på feature/dps-csr-preview paho_iot_hub_csr_sample.c

API:er för Azure Digital Twins kontrollplan

API:erna för kontrollplanet är ARM API:er som används för att hantera din Azure Digital Twins instans som helhet, så de omfattar åtgärder som att skapa eller ta bort hela instansen. Du använder också dessa API:er för att skapa och ta bort slutpunkter.

Om du vill anropa API:erna direkt refererar du till den senaste Swagger-mappen i swagger-lagringsplatsen control-planet. Den här mappen innehåller också en mapp med exempel som visar användningen.

Här är de SDK:er som för närvarande är tillgängliga för API:erna för Azure Digital Twins kontrollplan.

SDK-språk Paketlänk Referensdokumentation Källkod
.NET (C#) Azure. ResourceManager.DigitalTwins på NuGet Referens för Azure DigitalTwins SDK för .NET Microsoft Azure Digital Twins hanteringsklientbibliotek för .NET den GitHub
Java azure-resourcemanager-digitaltwins på Maven Referens för Resurshantering – Digital Twins Azure Resource Manager AzureDigitalTwins-klientbiblioteket för Java den GitHub
JavaScript AzureDigitalTwinsManagement-klientbibliotek för JavaScript på npm AzureDigitalTwinsManagement-klientbiblioteket för JavaScript den GitHub
Python azure-mgmt-digitaltwins på PyPI Microsoft Azure SDKs för Python den GitHub
Gå! azure-sdk-for-go/services/digitaltwins/mgmt Azure SDKs för Go on GitHub

AZURE DIGITAL TWINS API:er för dataplanet

API:erna för dataplanet är de Azure Digital Twins API:er som används för att hantera elementen i din Azure Digital Twins-instans. De omfattar åtgärder som att skapa vägar, ladda upp modeller, skapa relationer och hantera tvillingar och kan delas in i följande kategorier:

Om du vill anropa API:erna direkt refererar du till den senaste Swagger-mappen i swagger-lagringsplatsen dataplanets Swagger-lagringsplats. Den här mappen innehåller också en mapp med exempel som visar användningen. Du kan också visa referensdokumentationen för dataplanets API.

Här är de SDK:er som för närvarande är tillgängliga för API:erna för Azure Digital Twins dataplan.

SDK-språk Paketlänk Referensdokumentation Källkod
.NET (C#) Azure. DigitalTwins.Core på NuGet Referens för Azure IoT Digital Twins-klientbibliotek för .NET Azure IoT Digital Twins-klientbibliotek för .NET på GitHub
Java com.azure:azure-digitaltwins-core på Maven Referens för Azure Digital Twins SDK för Java Azure IoT Digital Twins-klientbibliotek för Java på GitHub
JavaScript Azure Azure Digital Twins Core-klientbiblioteket för JavaScript på npm Reference for @azure/digital-twins-core Azure Azure Digital Twins Core-klientbiblioteket för JavaScript på GitHub
Python Azure Azure Digital Twins Core-klientbiblioteket för Python på PyPI Referens för azure-digitaltwins-core Azure Azure Digital Twins Core-klientbiblioteket för Python den GitHub

Nästa steg

Föreslagna nästa steg är: