微信小程序如何搜索iBeacon设备

1.首先在utils文件夹下创建bluetooth.js和ibeacon.js

2.在 bluetooth.js文件中写入

module.exports = {initBluetooth: function () {// 初始化蓝牙模块wx.openBluetoothAdapter({success: function (res) {console.log('蓝牙模块初始化成功');},fail: function (res) {console.log('蓝牙模块初始化失败');}});}
}

3.在 ibeacon.js中写入

module.exports = {registerIBeaconCallback: function (callback) {// 注册iBeacon回调函数wx.onBeaconUpdate(function (res) {callback(res);});// 开始搜索iBeacon设备wx.startBeaconDiscovery({uuids: ['FDA50693-A4E2-4FB1-AFCF-C6EB07647826'], // iBeacon设备的uuidsuccess: function (res) {console.log('开始搜索iBeacon设备');},fail: function (res) {console.log('搜索iBeacon设备失败');}});},}

4.在需要获取蓝牙的wxml中的page上方引入

const bluetooth = require('../../utils/bluetooth');
const ibeacon = require('../../utils/ibeacon');

5.在下方onshow事件中调用

 bluetooth.initBluetooth();// 注册iBeacon回调函数ibeacon.registerIBeaconCallback(this.handleIBeacon);

6.在page内写入获取ibeacon设备代码及停止搜索

  handleIBeacon: function (res) {// 处理搜索到的iBeacon设备    let _this = thisif (res.beacons.length > 0) {wx.stopBeaconDiscovery({success: function (res) {console.log('停止搜索 iBeacon 设备',res);},fail: function (res) {console.log('停止搜索 iBeacon 设备失败');}});let devices = this.data.devicesdevices.push(res.beacons[0].uuid)this.setData({devices: devices})console.log(this.data.devices);}// 在这里可以对搜索到的设备进行进一步处理},

7.最后如果想检测蓝牙是否连接可以加上 wx.onBluetoothAdapterStateChange事件

 wx.onBluetoothAdapterStateChange(function(res) {console.log("蓝牙适配器状态变化", res);if (res.available) {console.log("蓝牙适配器可用");} else {console.log("蓝牙适配器不可用");}});

 8.如果出现报错,则需要安装 npm install @babel/runtime,或检查是否正确引用了@babel/runtime/helpers/defineProperty.js 模块

module '@babel/runtime/helpers/defineProperty.js' is not defined, require args is '../../@babel/runtime/helpers/defineProperty' Error: module '@babel/runtime/helpers/defineProperty.js' is not defined, require args is 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/599555.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用loki查询日志中大于某一数字的值的日志

简介 loki是一款轻量级的日志收集中间件,比elk体系占用的内存更小,采用go语言开发,可以利用grafana来查询loki中存储的日志,loki存储日志只对提前预设的标签做索引,所以日志存储空间占用比elk小很多。 方法 loki只对…

深圳易图讯实景三维数字孪生系统 实景三维电子沙盘

深圳易图讯实景三维数字孪生系统是一款基于三维地理空间的数字孪生系统,首先,该系统集成了多维度地理空间数据,可以将各类数据与应用需求进行充分整合,实现数据跨界融合、场景全角度可视等功能。其次,该系统具备智能化…

在 Windows 中安装 SQLite 数据库

在 Windows 上安装 SQLite 步骤1 请访问 SQLite 下载页面,从 Windows 区下载预编译的二进制文件 ​ 步骤2 您需要下载 sqlite-dll-win-x64-3440200.zip 和 sqlite-tools-win-x64-3440200.zip 压缩文件 步骤3 创建文件夹 C:\Program Files\SQLite,并在…

PostGIS学习教程十七:线性参考

PostGIS学习教程十七:线性参考 线性参考是一种表示要素的方法,这些要素可以通过引用一个基本的线性要素来描述。使用线性参照建模的常见示例包括: 公路资产,这些资产使用公路网络沿线的英里来表示。 道路养护作业,指…

java大数据hadoop2.92安装伪分布式文件系统

Apache Hadoop 3.3.6 – Hadoop: Setting up a Single Node Cluster. 1、解压缩到某个路径 /usr/local/hadoop 2、修改配置文件 /usr/local/hadoop/etc/hadoop/hadoop-env.sh export JAVA_HOME/usr/local/javajdk 3、修改配置文件 /usr/local/hadoop/etc/hadoop/core-sit…

(八)矩阵按键

文章目录 本章学习类比独立按键矩阵按键原理图三行代码法简单概述代码书写键码推算如何使用短按键长按键不松手长按键松手长按键 状态机法简单概述代码书写键码推算如何使用短按键长按键不松手长按键松手长按键 部分代码展示现象演示 本章学习类比独立按键 矩阵按键原理图 三行…

Swagger Editor 教程:从入门到精通编写 API 文档

在 API 开发的领域中,Swagger 以其卓越的使用效率与便捷性,备受开发者欢迎。它是一个强大的接口设计工具,允许开发人员对 RESTful API 进行高效的设计、构建及测试工作。本文旨在深入探讨其中一个子工具——Swagger Editor的使用介绍及它的有…

《知识扫盲》ROS和ROS2对比

文章摘选自:ROS与ROS2对比 1.ROS问题举例 ROS的设计目标是简化机器人的开发,如何简化呢?ROS为此设计了一整套通信机制(话题、服务、参数、动作)。 通过这些通信机制,ROS实现了将机器人的各个组件给的连接…

如何用自助法或刀切法来估计偏差、方差?

自助法和刀切法(也叫水手刀法)为计算标准误差和置信区间的非参数方法。刀切法耗费较少计算机资源,但自助法有某些统计优势。 1. 刀切法 由Quenouille(1949)提出的刀切法是用来对估计的偏差和方差进行近似的一个简单方法。 符号说明&#x…

VMware--安装CentOS系统

在虚拟机安装CentOS系统 1 下载CentOS镜像 方式一:可以到官网下载,下载速度较慢。 https://vault.centos.org/7.6.1810/isos/x86_64/ (最后的 / 不要漏掉) 方式二:可以到国内的镜像网站下载。 阿里开源镜像站&…

线性代数_逆矩阵性质

逆矩阵是线性代数中一个非常重要的概念,它具有以下几个基本性质: 1. 可逆矩阵一定是方阵:一个矩阵若要可逆,必须是方阵,即它的行数和列数相等。 2. 逆矩阵的唯一性:如果矩阵\( A \)是可逆的,那么…

sun.misc.BASE64Encoder() 找不到jar包

import sun.misc.BASE64Decoder;新下载的项目,在配置好maven之后,也更新完了Maven文件,还是发现有部分jar没有导入,报红信息如上所示。 其实这个是 Sun 的专用 API , rt.jar 是jre 中自带的 jar 包,所以就可…

ubuntu18.04+realsenseD455制作TUM数据集

教程目录 一、本机环境二、安装RealSense SDK三、录制rosbag四、制作数据集四、安装ROS-RealSense五、测试数据集一、本机环境 Ubuntu系统ROS系统RealSense18.04melodicD455二、安装RealSense SDK 1、首先注册服务器的公钥 sudo apt-key adv --keyserver keyserver.ubuntu.co…

全网最全fiddler使用教程和fiddler如何抓包(fiddler手机抓包)-笔者亲测

一、前言 抓包工具有很多,比如常用的抓包工具Httpwatch,通用的强大的抓包工具Wireshark.为什么使用fiddler?原因如下: 1.Wireshark是通用的抓包工具,但是比较庞大,对于只需要抓取http请求的应用来说,似乎…

Linux操作系统基础(09):Linux的文件权限

1. 文件权限是什么 在Linux系统中,文件权限是指对文件或目录的访问权限控制,它由三个部分组成:所有者权限、组权限和其他用户权限。文件权限和用户权限之间有密切的关系,文件权限规定了用户对文件的操作权限,而用户权…

CSIG青年科学家会议圆满举行,合合信息打造智能文档处理融合研究新范式

近期,第十九届中国图象图形学学会青年科学家会议(简称“会议”)在广州召开。会议由中国图象图形学学会(CSIG)主办,琶洲实验室、华南理工大学、中山大学、中国图象图形学学会青年工作委员会承办。会议面向国…

基于入侵杂草算法优化的Elman神经网络数据预测 - 附代码

基于入侵杂草算法优化的Elman神经网络数据预测 - 附代码 文章目录 基于入侵杂草算法优化的Elman神经网络数据预测 - 附代码1.Elman 神经网络结构2.Elman 神经用络学习过程3.电力负荷预测概述3.1 模型建立 4.基于入侵杂草优化的Elman网络5.测试结果6.参考文献7.Matlab代码 摘要&…

APP端网络测试与弱网模拟!

当前APP网络环境比较复杂,网络制式有2G、3G、4G网络,还有越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异,都会对用户使用app造成一定影响。另外,当前app使用场景多变,如进地铁、上公交、进电梯等,使…

Ribbon客户端负载均衡

简介 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等…

【操作系统】输入/输出系统

目录 l/O系统的功能、模型和接口 l/O设备和设备控制器 中断和中断处理程序 设备驱动程序 与设备无关的I/O 用户层的I/O软件 缓冲区管理 磁盘性能概述和磁盘调度 l/O系统的功能、模型和接口 I/O系统管理 1)主要对象: I/O设备和对应的设备控制器 …