藍牙OTA SDK
更新時間:
SDK提供藍牙OTA業(yè)務的App端解決方案,提供了藍牙設備固件升級的能力。
依賴 SDK | 概述 |
藍牙 | Breeze SDK是按照規(guī)范實現(xiàn)的手機端藍牙SDK,方便合作廠商在手機端快速接入藍牙功能。Breeze SDK 包含的主要功能有:設備發(fā)現(xiàn)連接,設備通信,加密傳輸,大數(shù)據(jù)傳輸?shù)取?/p> |
API通道 | 提供API通道能力,和基礎環(huán)境配置信息。 |
初始化
按照以下步驟進行初始化。
通過android藍牙SDK連接上設備,獲取IBreezeDevice實例。
通過IBreezeDevice實例,
BreezeHelper.getDeviceInfo()
獲取deviceinfo。getDeviceInfo(breezeDevice,new IDeviceInfoCallback(){ void onDeviceInfo(DeviceInfo info){ mInfo = info; };
通過DeviceInfo
BreezeHelper.bindBreezeDevice()
綁定到當前用戶,獲取iotID。BreezeHelper.bindBreezeDevice(breezeDevice, mInfo, new BindCallback(){ void onBindResult(BindResult result, int error){ if (null == error){ mIotId = result.iotId; } });
使用方式
在生活物聯(lián)網(wǎng)后臺配置OTA任務,參見藍牙連接開發(fā)指南。
獲取OTA實例。
獲取OTA對象實例,并初始化(注意不再使用的時候務必釋放資源),device是breeze連接對象。
mBusiness = Factory.create(device); mBusiness.init();
檢查有無可以更新的固件。
檢查是否有新更新,mIotId在成功綁定時獲取會返回。
mBusiness.inquiryNewVersion(mIotId, new ILinkOTABusiness.IInquiryNewVersionCallback() { @Override public void onResult(boolean needUpgrade, String error, String result) { // 提示用戶升級 } });
開始OTA升級。
如果有新的OTA固件可以升級,且用戶同意升級,調(diào)用下列接口開始升級,升級進度通過
IOtaListener
回調(diào)。mBusiness.startUpgrade(iotId, false, ILinkOTABusiness.DEVICE_TYPE_BLE, new ILinkOTABusiness.IOtaListener() { @Override public void onNotification(int type, ILinkOTABusiness.IOtaError error) { Log.d(TAG, "onNotification type:" + type + " error:" + error);
停止OTA升級。
但OTA結(jié)束后(失敗或成功)或者用戶想終止OTA,調(diào)用下列接口停止升級。
mBusiness.stopUpgrade();
釋放OTA資源。
當不需要OTA時,務必釋放OTA資源。
mBusiness.deInit();
文檔內(nèi)容是否對您有幫助?