- 用于安卓客户端与血糖仪,尿酸仪等POCT蓝牙检测设备间数据通信
- 方便互联网/物联网厂商快速将检测设备到自己的平台,无需关注设备指令交互,解析等复杂繁琐的过程,专注于业务开发
- 目前接口仅支持艾科产品(包含蓝牙血糖仪,精益佳Plus血糖尿酸测试仪,益优2血糖血酮测试仪,糖化血红蛋白分析仪等内置蓝牙设备,以及小牙蓝牙适配器支持的多款血糖设备),后续陆续接入其它设备厂商的产品
在根目录apk文件下
三. 操作流程 * 设 备 要 求 color{#FF0000}{设备要求} 设备要求 [
√
color{#22B14C}{√}
√ ] android 4.3及以上操作系统
[
√
color{#22B14C}{√}
√ ] 蓝牙版本4.0及以上
[
√
color{#22B14C}{√}
√ ] 支持ble操作接口
1.2 安装APP
1.3 授 权 A P P color{#FF0000}{授权APP} 授权APP
2. 准备检测 2.1 设备准备
2.2 APP操作环境准备
2.3 设备插入测试条开始检测 3. 检测完成后设备显示测量值。app选择操作的设备,点击【开始】按钮,自动搜索,连接设备并完成数据接收,将过程日志显示出来,使用者可以了解到app接口功能运行过程 A P P 操 作 color{#FF0000}{APP操作} APP操作
* 其它设备操作方法类似 四. 接入流程 1. 安卓项目添加maven地址
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
2. 模块中添加依赖
dependencies {
implementation 'com.github.zjfjf:bluetooth_device_toolkit:bluetoothdevicetoolkitcore-v1.0.+'
}
3. 使用库中设备交互接口方法
*
注
意
调
用
设
备
操
作
方
法
前
,
需
要
确
保
需
要
使
用
的
权
限
,
操
作
环
境
均
正
常
color{#FF0000}{注意调用设备操作方法前,需要确保需要使用的权限,操作环境均正常}
注意调用设备操作方法前,需要确保需要使用的权限,操作环境均正常
private boolean checkEnvironment() {
switch (Environment.check(this)){
case PermissionsForbidden:
//没有操作权限!!!请在应用程序权限管理设置中打开app相关操作权限
return false;
case BluetoothNotOpen:
//请打开蓝牙!!!
return false;
case LocationNotOpen:
//请打开定位!!!
return false;
}
return true;
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
if (requestCode == Environment.PermissionCode) {
for (int i = 0; i < grantResults.length; i++) {
if (grantResults.length > 0 && grantResults[i] != PackageManager.PERMISSION_GRANTED) {
Environment.checkPermissions(this);
return;
}
}
ininDevices();
}
}
3.1 初始化
private void ininDevices() {
DeviceActionManager.getInstance().init(getApplicationContext());
DeviceActionManager.getInstance().setOnGetRecordListener(result -> {
log("接收数据"+result.toString());
});
DeviceActionManager.getInstance().switch2Ogm112Auto();
}
3.2 结果回调数据结构说明
public Record onCallRecord; //检测记录值 public DetectItemType detectItemType; //检测类型 public String unit; //单位 public String convertValue; //不同单位换算后的值
public String value; //检测值 public String time; //检测时间
public enum DetectItemType {
GLU, //血糖
UA, //尿酸
KET, //血酮
HBA1C //糖化血红蛋白
}
3.3 可以切换要操作的设备
DeviceActionManager.getInstance().switch2Ogm202();3.4 可以调用扫描设备方法(搜索哪个设备取决于3.3调用的切换设备接口)
DeviceActionManager.getInstance().scan(device->{
//找到设备
});
3.5 可以调用连接设备方法(连接哪个设备取决于3.3调用的切换设备接口)
DeviceActionManager.getInstance().getCurrentDeviceAction().connect(device.getAddress(), connectResult -> {
//连接结果
});
3.6 连接回调数据结构说明
public ErrorType error; //错误类型(Succeed:连接成功;DeviceClosed:设备连接断开) public String message; //说明信息 public T data; //实际结果数据内容(true:连接成功;false:连接失败) public String tag; //辅助信息4. 其它接口方法说明后续补充



