本文以夜燈開關為例,介紹在Windows環境中如何快速使用Android Link SDK,類比裝置採用MQTT協議接入物聯網平台,並通過自訂Topic上報資料至物聯網平台的完整操作。
前提條件
開通物聯網平台服務。
建立產品和裝置
登入物聯網平台控制台,單擊目標執行個體卡片。
在左側導覽列,選擇裝置管理 > 產品,單擊建立產品。
在建立產品頁面,輸入產品名稱:夜燈開關,所屬品類選擇自訂品類,其他參數使用預設值,單擊確認。
在完成建立產品的頁面,單擊添加裝置下的前往添加。
在添加裝置對話方塊中,輸入裝置名稱,例如:LightSwitch。然後,單擊確認。
在添加完成對話方塊中,單擊一鍵複製裝置認證。將裝置認證資訊儲存至本地備用。
裝置認證指ProductKey、DeviceName和DeviceSecret,後續將裝置接入物聯網平台時需要使用。關於裝置認證的更多資訊,請參見裝置認證。
在建立的產品頁面,單擊查看。
在產品詳情頁面,單擊Topic類列表> 自訂Topic> 定義Topic類,建立自訂Topic。
請按照上圖,分別建立一個訂閱(get)和發布(updata)許可權的Topic,並將介面上的Topic類儲存到本地待用,後面使用手機訂閱Topic時,需要使用。
訂閱:
/a18wP******/${deviceName}/user/get
發布:
/a18wP******/${deviceName}/user/updata
單擊確認。
準備開發環境
本樣本開發工具為Android Studio 4.1.1,虛擬設備系統為Android 10.0。關於環境的更多說明,請參見環境說明。
安裝Android Studio。
更多資訊,請參見Android Studio。
建立虛擬設備。
更多資訊,請參見建立和管理虛擬設備。
配置裝置端SDK
下載Demo檔案至開發環境並解壓。
說明下載本Demo將預設您同意本軟體許可協議。
關於Android Link SDK的更多資訊,請參見Android Link SDK。
開啟已安裝好的Android Studio,選擇File > Open...,找到下載的Demo檔案並配置以下檔案中的參數。
需配置的檔案
參數
樣本
說明
app/src/main/res/raw/deviceinfo
productKey
a18wP******
裝置認證資訊。請將檔案中的裝置認證資訊修改為您儲存至本地的裝置認證資訊。
deviceName
LightSwitch
deviceSecret
uwMTmVAMnGGHaAkqmeDY6cHxxB******
app/src/main/java/com/aliyun/alink/devicesdk/manager/InitManager.java
LinkKit.getInstance().init
MqttConfigure.mqttHost = "iot-060a****.mqtt.iothub.aliyuncs.com:8883"
裝置的接入網域名稱。
您需在
LinkKit.getInstance().init
前,添加以下代碼:MqttConfigure.mqttHost = "YourHostName:8883";
其中,
YourHostName
需修改為您執行個體的接入網域名稱,擷取方法如下:企業版執行個體和新版公用執行個體:在執行個體詳情頁面,單擊查看開發配置,MQTT裝置接入下面的地址就是裝置的接入網域名稱,單擊地址後的複製。
舊版公用執行個體:接入網域名稱需按照格式自行拼接。格式如下:
${YourProductKey}.iot-as-mqtt.${YourRegionId}.aliyuncs.com:8883
樣本:
a18wP******.iot-as-mqtt.cn-shanghai.aliyuncs.com:8883
單擊按鈕,完成專案的編譯。
運行結果
專案編譯完成後,您可單擊按鈕,運行專案。
如下圖所示,Demo程式在虛擬設備中成功運行,裝置成功接入物聯網平台。
單擊Mqtt樣本。
在Mqtt樣本頁面,將訂閱topic修改為前面步驟中拷貝的訂閱Topic內容,單擊訂閱。
說明例如拷貝的內容為:
/a18wP******/${deviceName}/user/get
,您需要將產品名稱和裝置名稱修改為您自己的。Topic訂閱成功後,裝置將接收到物聯網平台發送的訊息。在收到平台發送的訊息之前,您可以自行給裝置發送訊息進行測試。
在裝置詳情頁面的Topic列表頁簽,單擊已訂閱的Topic右側的發布訊息,在發布訊息對話方塊中輸入一條訊息,例如:
This is a test message from Alibaba Iot Platform
,類比物聯網平台向裝置發送訊息,您的裝置將收到這條測試訊息。在Mqtt樣本頁面,將發布訊息topic修改為前面步驟中拷貝的發布Topic內容,並填入訊息內容,單擊發布。
訊息內容自訂,可以是中文等,下圖僅為樣本。
在Log Service頁面,單擊查看,您將看到裝置給物聯網平台發送的訊息內容。
後續步驟
裝置接入物聯網平台後,您可以管理裝置並對其進行監控營運。關於物聯網平台的更多功能,請參見物聯網平台產品功能。
使用Android Link SDK配置相關進階功能,請參見Android Link SDK。