蓝牙 OTA SDK

更新时间:2018-09-21 21:08:06

概述

SDK 提供蓝牙 OTA 业务的 APP 端解决方案,提供了蓝牙设备固件升级的能力。

注:进行 OTA 前,必须要连接 breeze 设备,绑定设备,上报设备版本号

依赖SDK 概述
API 通道 提供 API 通道能力,和基础环境配置信息
蓝牙 Breeze SDK 是按照规范实现的手机端蓝牙 SDK,方便合作厂商在手机端快速接入蓝牙功能。Breeze SDK 包含的主要功能有:设备发现连接,设备通信,加密传输,大数据传输等。

初始化

使用 create 来创建业务对象

mBusiness = Factory.create(device);

device 来自于与设备建立好连接的 device 对象,如何与设备建立蓝牙连接,参见 蓝牙 SDK

使用方式

基本流程是用户先绑定设备,得到一个 iotId, 再上报版本,进行 OTA 升级,取消 OTA 流程等。

绑定设备

OTA 前必须绑定设备 ,绑定后,会得到一个 mIotId, 参数 mDeviceInfo 可以通过 getDeviceInfo 接口获取

BreezeHelper.bindBreezeDevice(mDeviceInfo, new IoTCallback{
        @Override
        public void onFailure(IoTRequest request, Exception e) {
            Log.w(TAG, "onFailure", e);
        }

        @Override
        public void onResponse(IoTRequest request, IoTResponse response) {
            mIotId = (String) response.getData();
        }
}

上报设备版本

进行 OTA 前,必须要上报设备版本号,否则后台无法对这些设备进行OTA升级,因此,我们建议在连接好蓝牙设备时就立即上报设备版本,而不是在OTA前才上报,这里仅仅是作为示例以供参考。如何上报版本,参见 固件升级服务-上报版本号,其中设备版本 version 通过 getVersionFromDevice 接口获取

开始 OTA 升级

只有在绑定了设备,上报设备版本后才能通过 startUpgrade 开始 OTA 升级过程。

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 完成后,必须要通过 stopUpgrade 停止掉,可以随时停止正在进行中的OTA过程。

mBusiness.stopUpgrade();

混淆配置


-keep class com.aliyun.iot.breeze.ota.LinkOtaBusiness$FirmwareInfo {*;}

results matching ""

    No results matching ""