開放、平等、協(xié)作、快速、分享
點擊登錄控制臺打開SDK定制頁面,根據(jù)產(chǎn)品需要進(jìn)行相應(yīng)SDK功能選擇,點擊按鈕 “開始生成” 下載SDK,如下圖所示:說明 :
4.x 版本SDK的API接口與3.x/2.x 分支的API不兼容,使用3.x/2.x分支開發(fā)產(chǎn)品的客戶請繼續(xù)使用3.x/2.x分支進(jìn)行產(chǎn)品開發(fā)
4.x目前尚未支持阿里云物聯(lián)網(wǎng)平臺提供的所有功能,在使用4.x分支開發(fā)產(chǎn)品前請查看功能是否滿足產(chǎn)品要求
支持通過設(shè)備預(yù)置密鑰的方式對設(shè)備進(jìn)行認(rèn)證,并支持動態(tài)注冊 支持通過ID2對設(shè)備進(jìn)行認(rèn)證 支持X.509對設(shè)備進(jìn)行認(rèn)證 包含對以下OS的適配: Linux FreeRTOS POSIX機(jī)制兼容的OS FreeRTOS 若設(shè)備使用的OS不支持上述OS,開發(fā)者需要對OS進(jìn)行適配 客戶可以通過編寫makefile通過GNU Make來編譯代碼 客戶也可以通過編寫cmake來編譯SDK 對于集成IDE開發(fā)環(huán)境(比如Eclipse),客戶可以將SDK的代碼文件添加到IDE中進(jìn)行編譯 ChangeLog.md 其中包含SDK中各個功能模塊的更新時間 components 根據(jù)客戶的選擇,在該目錄下會出現(xiàn)各種子模塊的目錄 core SDK的核心代碼文件 demos 存放各種功能的示例代碼 external 當(dāng)需要使用TLS功能時,SDK使用了第三方的mbedtls,客戶可以使用其它的TLS庫來替換mbedtls portfiles SDK運行時與TCP/IP協(xié)議棧、與TLS庫的集成實現(xiàn) 客戶在移植SDK的時候,demos目錄可以不用加入編譯系統(tǒng),將其它目錄下面的代碼文件加入編譯系統(tǒng)進(jìn)行編譯即可。 若SDK并未提供對指定系統(tǒng)下TCP/IP協(xié)議棧、TLS庫的移植,客戶需要自行實現(xiàn)portfiles下相關(guān)函數(shù)的移植。 SDK頭文件包含 然后再根據(jù)選擇的功能查看相應(yīng)模塊編程手冊中指定包含的頭文件即可。比如如果設(shè)備使用MQTT協(xié)議與物聯(lián)網(wǎng)平臺通信,那么可以打開文檔“MQTT接入與數(shù)據(jù)通信”,該文檔中會明確說明需要包含頭文件SDK功能列表
目前SDK支持的功能如下表所示:功能模塊 功能說明 MQTT連云 設(shè)備可以通過MQTT連接阿里云物聯(lián)網(wǎng)平臺,并使用MQTT Topic進(jìn)行設(shè)備與云端之間的數(shù)據(jù)收發(fā) HTTP連云 設(shè)備可以通過HTTP連接阿里云物聯(lián)網(wǎng)平臺,并上傳設(shè)備數(shù)據(jù)。注意:本種協(xié)議連接方式不支持物聯(lián)網(wǎng)平臺主動向設(shè)備發(fā)送數(shù)據(jù)。 設(shè)備認(rèn)證 OS適配 物模型 使用屬性、事件、服務(wù)來對設(shè)備進(jìn)行建模,云端APP開發(fā)時基于物模型對設(shè)備進(jìn)行管理,而無需關(guān)心設(shè)備與物聯(lián)網(wǎng)平臺之間的數(shù)據(jù)交互格式 OTA 設(shè)備固件升級。 SDK只進(jìn)行固件的獲取,開發(fā)者需要實現(xiàn)將固件寫入Flash/ROM中讓固件生效 時間同步 讓設(shè)備通過SDK獲取當(dāng)前物聯(lián)網(wǎng)平臺的時間 RRPC 支持云端應(yīng)用對設(shè)備的遠(yuǎn)程同步調(diào)用 設(shè)備連接異常告警 當(dāng)連接延時較大、或者丟包時進(jìn)行報警 日志上報 提供日志實時上傳功能 設(shè)備引導(dǎo)服務(wù) 設(shè)備啟動時動態(tài)決定連接服務(wù)站點的能力,設(shè)備全球化部署時使用 SDK編譯說明
SDK以源文件方式進(jìn)行輸出,客戶可以使用自己喜歡的方式編譯SDK,比如:
當(dāng)用戶從阿里云物聯(lián)網(wǎng)平臺下載SDK之后,SDK的目錄結(jié)構(gòu)如下所示:$ ls -l total 20 -rwxrwxrwx 1 root root 1067 4月 26 14:14 ChangeLog.md drwxrwxrwx 1 root root 4096 4月 26 14:14 components drwxrwxrwx 1 root root 4096 4月 26 14:14 core drwxrwxrwx 1 root root 4096 4月 26 14:14 demos drwxrwxrwx 1 root root 0 4月 26 14:38 external -rwxrwxrwx 1 root root 1026 4月 26 14:14 Makefile drwxrwxrwx 1 root root 0 4月 26 14:14 portfiles
其中:#include "aiot_state_api.h" #include "aiot_sysdep_api.h"
aiot_mqtt_api.h,
用戶在程序中加入相應(yīng)的頭文件包含即可。