設備接入指南
1、sdk文件組成
目前 SDK 提供的文件主要包括以下幾個:
expeed_types.h:SDK 使用到的數據類型、數據結構定義頭文件。
expeed _cloudapi.h:SDK 提供給設備應用層調
用的API接口,包括SDK初始化,回調函數注冊,發送數據等接口
expeed_porting.h:SDK使用到的外部函數的
原型,開發者需要根據本文件定義的所有函數原型實現相應的函數,并添加到工程中,否則編譯鏈接靜態庫的時候會報
錯找不到函數。
libexpeed.a 或者 libexpeed.lib:SDK 靜態庫文件,需要鏈接到工程中。
2、sdk線程模型
為了不影響應用層的邏輯,SDK 獨立運行在一個邏輯線程,針對不支持線程的系統,SDK 與廠商程序可以運行在同一個線程。
3、初始化啟動SDK
在設備連接上路由器以后,調用 expeed_cloud_init()完成 SDK 初始化,然后在調用 expeed_regist_callbacks()注冊相關回調函數,這兩個步驟完成以后,開發者就可以通過 expeed_cloud_send_packet () 接口發送數據給服務器。如果運行的環境支持多線程,開發者可以直接開一個線程來調用 expeed_cloud_loop(), 該函數的返回值為下一次期望調用 expeed_cloud_loop()的時間值,單位為毫秒(ms)。對于不支持多線程的系統, 開發者可以在程序大循環中調用 expeed_cloud_loop(),然后在函數返回后再去處理數據或運行自己的邏輯代碼。