bsf-ailink-bleUnder maintenance

ailinkbleutsuniapp蓝牙体脂秤

基于AILink BLE蓝牙SDK的UTS插件

Project Start

2025-02-26

Crowdfunding Success

2024-10-12

Launch

2025-02-26

bsf-ailink-ble

此项目是基于AILink蓝牙BLE-SDK专为uniapp/uniappx的App项目定制的UTS插件。

注:此插件目前仅实现了SDK的基本方法,以及四电极体脂秤协议,如需其他设备协议,请联系作者定制。

平台

  • Android
  • iOS
  • Uniapp / UniappX

使用说明

引入插件

import * as AlinkManager from "@uni_modules/bsf-ailink-ble";

API接口

getSdkVersion (获取SDK版本)

const version = AlinkManager.getSdkVersion();

requestPermission (请求蓝牙权限)

AlinkManager.requestPermission();

startScanBodyFatScale (开始扫描体脂秤)

AlinkManager.startScanBodyFatScale({
    onDeviceScaned: (device) => {
        // device: 扫描到的设备信息
        // iOS返回单个设备对象,Android返回设备数组
    },
    onStateUpdate: (state) => {
        // state: 蓝牙状态码
        // 0: 蓝牙不可用
        // 1: 蓝牙可用
        // 2: 停止扫描
        // 3: 正在扫描
        // 4: 将要连接
        // 5: 已经连接
        // 6: 连接出错
        // 7: 外设特征回调
        // 8: 断开连接
        // 9: 通过验证
        // 10: 未通过验证
        // 255: 没有蓝牙权限
    }
});

stopScanBodyFatScale (停止扫描)

AlinkManager.stopScanBodyFatScale();

connectBodyFatScale (连接体脂秤)

AlinkManager.connectBodyFatScale({
    address: "设备MAC地址",
    cid: "设备CID",
    vid: "设备vendorID",
    pid: "设备productID",
    onWeightCallback: (state, model) => {
        // 体重数据回调
    },
    onRequestUser: (state) => {
        // 用户信息请求回调
    },
    onAdcCallback: (state, adc) => {
        // ADC数据回调
    },
    onNotifyOtherData: (res) => {
        // 其他数据通知
    },
    onNotifyA6Data: (res) => {
        // A6数据通知
    },
    onNotifyA7Data: (res) => {
        // A7数据通知
    }
});

setUnit (设置单位)

AlinkManager.setUnit(unitType); // unitType: 0 为默认单位

sendData (发送数据)

AlinkManager.sendData(data); // data: 数据数组