更新记录
1.0.1(2026-08-11)
新增安卓和IOS支持 添加/重置锁、蓝牙开门、获取/校准门锁时间、获取操作记录、获取电量、自定义密码增删改查
平台兼容性
uni-app(4.84)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| √ | √ | - | - | - | - | 5.0 | 12 | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
开始使用
下载导入项目后,直接在文件内导入即可
import * as LockApi from '@/uni_modules/x-ttlock'
注入开始方法:
onLoad() {
// 加载时调用----IOS会在这一步请求权限,安卓会在执行具体方法前校验
LockApi.initBLE();
}
1. 开始扫描
LockApi.startScan(cb: (res: any[])=> void)
LockApi.startScan(cb: (jsonStr: string)=> void)
扫描方法会一直刷新,但是列表可能没有变化,每次可能返回同一个设备
res / jsonStr:当次扫描到的设备
deviceFromScanList:当前最新的设备列表
具体设备对象内的字段可实际测试时打印查看
由于通通锁官方SDK对于安卓和IOS返回的字段不同,所以扫描设备时,需要兼容一下字段保证两端代码通用
具体兼容代码如下:
// #ifdef APP-IOS 该注解只在UTS和UNIAPP X 下生效 普通uniapp项目可以这么写 if (uni.getSystemInfoSync().platform == "ios") {}
let list = []
jsonStr.forEach((item) => {
let device = JSON.parse(item)
list.push(device)
})
deviceFromScanList = list
// #endif
兼容后会统一输出三个字段:
name:设备名称isSettingMode:是否为初始化状态mAddress:蓝牙MAC地址
2. 停止扫描
LockApi.stopScan()
3. 初始化锁 并且设置扇区
LockApi.initLock(item.mAddress, data.hotelInfo, buildingNumber, floorNumber, sector, async (lockData) => {})
4. 锁数据绑定
因为锁的操作是单线程的,一次只能响应一个指令,同时后续所有操作都需要用到lockData和mac两个参数,
所以这里抽出了统一设置的方法,设置过之后,后续所有锁操作都无需关心这俩参数,只传输业务数据即可。
// 设置锁数据
LockApi.setLockData(lockData)
// 获取锁数据
LockApi.getLockData(mAddress)
5. 蓝牙开门
LockApi.openLock((res: boolean) => {})
7. 重置锁
LockApi.resetLock((res: boolean) => {})
将锁重置为初始化状态,等待重新绑定
8. 获取锁内日期
LockApi.getTime((res: number) => {})
返回锁内的时间,格式为时间戳
9. 校准锁时间
const timestamp = Date.now()
LockApi.setTime(timestamp, (res: boolean) => {})
10. 获取锁内操作记录
LockApi.getLog((res: string) => {})
ios版不支持,测试会闪退
11. 获取锁电量
LockApi.getBattery(async (res: number) => {})
获取锁当前剩余电量
12. 创建密码
LockApi.setPassword(pwd, start, end, (res: boolean) => {})
蓝牙创建密码
pwd: 密码数字 4-9位
start: 开始时间-时间戳
end: 结束时间-时间戳
13. 修改密码
LockApi.egitPassword(oldPwd, newPwd, start, end, (res: boolean) => {})
修改指定密码
oldPwd: 旧密码
newPwd: 新密码数字 4-9位
start: 开始时间-时间戳
end: 结束时间-时间戳
14. 删除密码
LockApi.deletePasscode(oldPwd, (res: boolean) => {})
删除已有密码
oldPwd
15. 获取锁内有效密码
LockApi.getAllPasscode((res: string) => {})
返回锁内所有有效的密码
返回值为JSONArray字符串,需格式化后使用
补充说明
安卓和ios都是使用下载sdk引入 还有一些网关类的接口,没有使用过,可以自己试一试 希望该插件可以给你带来帮助。购买源码前,如有疑问可以先联系***

收藏人数:
购买源码授权版(
试用
赞赏(0)
下载 1
赞赏 0
下载 12500091
赞赏 1940
赞赏
京公网安备:11010802035340号