文档参考: 工程质量蓝牙数据传输通信协议汇承HC-08BLE串口模块使用规格书 质检测量工具配套插件,目前支持仪器: 0:迈测手持激光测距仪 1:联睿科智能靠尺 2:回弹仪
注意:
// 获取info.plist配置文件对象:plistObj
......
plistObj.NSBluetoothAlwaysUsageDescription = '如果不允许,可能导致应用功能无法正常使用';
plistObj. NSBluetoothPeripheralUsageDescription = '如果不允许,可能导致应用功能无法正常使用';
用于监听手机蓝牙的开启和关闭状态
MEngineerKit.registerBlueToothObserver(callback);
调用示例
var callback = {
"onPoweredOn":function (){
console.log('蓝牙开关打开');
},
"onPoweredOff":function (){
console.log('蓝牙开关关闭');
}
}
MEngineerKit.registerBlueToothObserver(callback);
MEngineerKit.resignBlueToothObserver();
调用示例
MEngineerKit.resignBlueToothObserver();
用于获取通过插件API连接的
,且当前状态为已连接
的设备的列表
注意:该接口不能获取用户通过手机的系统蓝牙自行连接的设备
MEngineerKit.getConnectedDevices(success, fail);
参数说明
参数 | 类型 | 作用 |
---|---|---|
success(array) | Function | 成功回调,array为已连接的设备列表,例:[{"name" : "T7","address":"设备地址"},...] |
fail(error) | Function | 失败回调 |
调用示例
MEngineerKit.getConnectedDevices(
function (array) {
console.log('getConnectedDevices success ', array);
},
function (error) {
console.log(error);
}
);
已经连接的设备无法被搜索到。如目标蓝牙已被其他设备连接、目标蓝牙已经通过手机系统的蓝牙连接(而非APP内调用API连接)。
MEngineerKit.searchDevice(options, callback);
参数说明
参数 | 类型 | 作用 |
---|---|---|
options | Object | 搜索参数,请参照下方options参数说明 |
callback | Object | 回调方法,请参照下方callback参数说明 |
options参数说明
字段名称 | 类型 | 必填 | 作用 |
---|---|---|---|
scanPeriod | int | 否 | 蓝牙扫描时间,单位ms,默认10000 |
callback参数说明
参数 | 类型 | 作用 |
---|---|---|
onStart() | Function | 搜索开始回调 |
onNewDevice(deviceInfo) | Function | 搜索到设备回调, deviceInfo:设备信息,例: {"name" : "T7","address":"设备地址"} |
onError(error) | Function | 失败回调 |
onFinish() | Function | 搜索结束回调 |
调用示例
MEngineerKit.searchDevice(
{
"scanPeriod": 10000
},
{
"onStart": function () {
console.log("onStart ")
}, "onNewDevice": function (deviceInfo) {
console.log("onNewDevice ", deviceInfo)
}, "onError": function (error) {
console.log("onError", error)
}, "onFinish": function () {
console.log("onFinish")
}
}
);
MEngineerKit.stopSearchDevice(success, fail);
参数说明
参数 | 类型 | 作用 |
---|---|---|
success() | Function | 成功回调 |
fail(error) | Function | 失败回调 |
调用示例
MEngineerKit.stopSearchDevice(
function () {
console.log('stopSearchDevice success ');
},
function (error) {
console.log(error);
}
);
若蓝牙正处于搜索设备状态,此时禁止连接设备。
MEngineerKit.connectDevice(options, callback);
参数 | 类型 | 必填 | 作用 |
---|---|---|---|
options | Object | 是 | 设备参数,请参照下方options参数说明 |
callback | Object | 否 | 回调方法,请参照下方callback参数说明 |
options参数说明
参数 | 必填 | 类型 | 作用 |
---|---|---|---|
address | 是 | String | 设备地址,从搜索结果中获取 |
type | 是 | int | 设备类型,如下 0:迈测手持激光测距仪 1:联睿科智能靠尺 2:回弹仪 默认参数为0
|
timeout | 否 | int | 连接设备超时时间,单位ms,默认10000,连接发起时有效,传0表示持续搜索 |
callback参数说明
参数 | 必填 | 类型 | 作用 |
---|---|---|---|
onConnect(options) | 否 | Function | 连接成功回调, options为接口调用传入的options |
onReceiveData(data, options) | 否 | Function | 数据接收回调,格式请参照下方对应设备data说明 |
onDisconnect(options) | 否 | Function | 与设备蓝牙的连接中断(如信号干扰,距离问题等)时回调,断开后会自动重连
|
onError(error, options) | 否 | Function | 失败回调 |
onClose(options) | 否 | Function | 关闭指定蓝牙连接的回调,关闭后,两台设备间的蓝牙,不再有断开重连功能
|
迈瑞手持激光测距仪data说明:
参数 | 必填 | 类型 | 作用 |
---|---|---|---|
distance | 是 | String | 测量距离,单位m |
联睿科智能靠尺data说明:
参数 | 必填 | 类型 | 作用 |
---|---|---|---|
mode | 是 | String | 测量类型:PZD-平整度,CZD-垂直度 |
value | 是 | String | 测量结果,单位mm |
LRK-HT225全自动一体回弹仪data说明:
注意:回弹仪返回单条数据,没有头标识
和尾标识
。当返回数据为多条时,由于数据通过字符串拼接来组装,导致暂无法识别出独立的每一条数据。下方示例为完整的单条数据
的示例
参数 | 必填 | 类型 | 作用 |
---|---|---|---|
data | 是 | String | 设备测量返回的完整结果,例如:1;1;3;1;1;[1.5];{[65,66,53,56,61,57,56,59,57,58,59,66,66,62,65,57]};[60.0];[60.1];60.1;60.1;00.0;0.00;1.5;60.1
|
调用示例
MEngineerKit.connectDevice({
"address": "64:33:DB:D7:1F:35",
"type": 0,
"timeout": 10000
},{
"onConnect": function (options) {
console.log("onConnect", options);
}, "onReceiveData": function (data, options) {
console.log("onReceiveData ", data, options);
}, "onDisconnect": function (options) {
console.log("onDisconnect", options);
}, "onError": function (error, options) {
console.log("onError", error, options);
}, "onClose": function (error, options) {
console.log("onClose", error, options);
}
}
);
MEngineerKit.disconnectDevice(address, success, fail);
参数说明
参数 | 类型 | 作用 |
---|---|---|
address | String | 设备地址,从搜索结果中获取 |
success() | Function | 成功回调 |
fail(error) | Function | 失败回调 |
调用示例
MEngineerKit.disconnectDevice(
"64:33:DB:D7:1F:35",
function () {
console.log('disconnect success ');
},
function (error) {
console.log(error);
}
);