跳转到主要内容

概述

DreisamLib 是一款用于设备连接与数据交互的SDK,提供设备连接管理、数据同步、历史数据获取等功能,适用于需要与特定设备进行通信的应用开发。

SDK公开类的作用

  1. DreisamLib
    • 主引用文件,开发者#import <DreisamLib/DreisamLib.h>即可使用SDK的所有方法
  2. DreisamLibManage
    • 主管理类,用来初始化SDK
  3. DreisamBuilderParam
    • 初始化赋值传参
  4. BleManage
    • 蓝牙模块控制类,使用方式[DreisamLibManage shareLib].bleManage
  5. DreisamGlucoseModel
    • 血糖数据模型,包含血糖值、血糖产生时间等
  6. DreisamEnum
    • 枚举类,回调给上层的状态码

初始化的相关方法

初始化

DreisamBuilderParam *builder = DreisamBuilderParam.new;
builder.hideLog = NO;
builder.appId = @"******";
[[DreisamLibManage shareLib] initSDKBuilderParam:builder];
  • 功能:初始化SDK
  • 参数:
    • hideLog - 是否隐藏日志,默认不隐藏,默认会打印
    • appId - 开放平台生成的appId

反初始化

[DreisamLibManage.shareLib releaseUnInit];
  • 功能:释放SDK内部资源,用于退出登录

设备连接管理

连接设备

[[DreisamLibManage shareLib].bleManage connectBleDeviceName:deviceName callback:^(DreisamEnumState state) {
    if(state==DreisamEnumStateConnected){
        ///
    }
}];
  • 功能:连接指定名称的设备
  • 参数:deviceName — 设备名

断开连接

[DreisamLibManage.shareLib.bleManage disconnect];
  • 功能:断开设备连接
  • 场景:根据APP自己的需求选择时机,一般在退出登录时调用

获取信号值

[[DreisamLibManage shareLib].bleManage getRSSICallback:^(NSNumber *rssi) {

}];

获取历史数据

[[DreisamLibManage shareLib].bleManage getHistoryDataStartTime:1766577042 endTime:1766577642 callBack:^(NSArray<DreisamGlucoseModel *> *glucoseModelAry) {
    NSLog(@"getHistoryDataStartTime %@",glucoseModelAry);
}];
  • 功能:获取指定时间范围内的历史数据
  • 参数:开始时间和结束时间

状态监听及回调

蓝牙状态回调

[[DreisamLibManage shareLib].bleManage connectBleStateCallback:^(DreisamEnumState state) {
    if(state==DreisamEnumStateConnected){
      ////////
    }
}];
  • 枚举说明:
    • DreisamEnumStateAuthenticationFailure //设备验证失败
    • DreisamEnumStateDisconnect //连接断开
    • DreisamEnumStateConnected //已连接
    • DreisamEnumStateIndicateLoading //可转圈等待
    • DreisamEnumBleStatePoweredOn //手机蓝牙已打卡
    • DreisamEnumBleStatePoweredOff //手机蓝牙已关闭

数据同步开始

[[DreisamLibManage shareLib].bleManage dataSyncStartCallback:^(int totalCount){
    
}];
  • 回调参数:totalCount,需要同步的数量

数据同步进度回调

[[DreisamLibManage shareLib].bleManage dataSyncProgressCallback:^(**int** progress) {
    NSLog(@"dataSyncProgressCallback = %d",progress);
}];

数据同步完成

[[DreisamLibManage shareLib].bleManage dataSyncCompleteCallback:^(NSArray<DreisamGlucoseModel *> *glucoseModelAry) {
    weakSelf.headerView.dataSyncLabel.text = @"Data sync:100%";
}];

实时数据回调

[[DreisamLibManage shareLib].bleManage realTimeDataCallBack:^(DreisamGlucoseModel *glucoseModel) {
    weakSelf.headerView.dataSyncLabel.text = @"Data sync:100%";
}];
  • 方法说明:3分钟1条数据上报