更新记录

1.0.0(2026-07-24) 下载此版本

初版


平台兼容性

uni-app(3.8.0)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - -

快速上手

安装

pnpm install

安装依赖后:

  1. 使用HBuilder打开DEMO项目
  2. 预览,使用HBuilder可将项目运行到Android或IOS设备上
  3. 若有小程序开发需求则需要配置APPID等相关参数

引入插件

在UNI-APP插件市场中下载或使用HBuilder引入

初始化

import { reactive } from 'vue';
import { onLoad, onUnload } from '@dcloudio/uni-app';
import { QNMPPluginUni } from '...';

// 推荐:接入微信日志,方便线上问题排查
// 非小程序平台需自行实现日志功能
function logger() {
  const mpwx = getMpWx();
  const wxlogger = mpwx.getLogManager && mpwx.getLogManager({ level: 0 });
  return {
    log(...params) {
      console.log(...params);
      wxlogger && wxlogger.log(...params);
    },
  };
}

const state = reactive({
  bleState: '空闲',
  connected: false,
  // ...其他状态
});

let bleApi;

onLoad((options) => {
  bleApi = new QNMPPluginUni({
    appId: APPID,     // 必填,联系云康宝对接人员在云康宝后台配置
    logger: logger(), // 推荐,方便排查问题
  });

  // 错误监听
  bleApi.onError = (err) => {
    console.error('捕捉到错误', err.detail);
  };

  // 初始化完成回调
  bleApi.onReady = ({ bleEnableState }) => {
    if (bleEnableState) {
      bleApi.startBleDeviceDiscovery();
    } else {
      console.log('蓝牙未开启');
    }
  };

  // 设置蓝牙事件监听
  bleApi.setBleEventListener(bleEventListener());

  // 执行初始化
  bleApi.init();
});

使用流程

1. 启动扫描

bleApi.startBleDeviceDiscovery();

扫描结果通过 onBleDeviceFound 回调返回,只回调本公司设备。可通过 QNConsts.QNBleDeviceType 结合 device.type 过滤设备类型。

2. 创建连接

bleApi.createBleConnection(device, deviceEventListener(), operation);

3. 处理测量数据

连接成功后,数据通过 deviceEventListener 中的回调返回:

  • onGetUnsteadyWeight:实时非稳定重量,用于页面动态显示
  • onGetScaleData:稳定测量数据,最终结果

拿到 onGetScaleData 数据后,需通过对应指标库处理以生成报告,详见体脂秤 - 数据处理

4. 停止蓝牙

离开测量页面时调用:

onUnload(() => {
  stopBle();
});

async function stopBle() {
  await bleApi.stop();
  // 可选:完全释放蓝牙资源,再次使用需重新 init
  await bleApi.releaseBleSource();
}

Demo 页面索引

设备 页面
入口页面 pages/board
用户信息设置页 pages/user
八电极深度报告 pages/deepReport/index
体脂秤(蓝牙) pages/four-electrode-measure
八电极用户秤 pages/eight-electrode-measure

隐私、权限声明

1. 本插件需要申请的系统权限列表:

网络权限、蓝牙权限、位置权限

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

本插件不会隐式地收集用户隐私信息,所有用户数据均为用户显式提供,且本插件不会存储,仅用于支持测量数据的分析。数据可能经过third-api.yolanda.hk服务器中的接口处理。数据都是为了支持体脂秤功能的正常使用。

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。