微信小程序如何搜索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.hqwc.cn/news/438627.html

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

相关文章

贪吃蛇项目

引言: 本文章使用C语言在Windows环境的控制台中模拟实现经典小游戏贪吃蛇。 实现基本功能: 1.贪吃蛇地图绘制。 2.蛇吃食物的功能(上、下、左、右方向键控制蛇的动作) 3.蛇撞墙死亡 4.蛇咬到自己死亡 5.计算得分 6.蛇加速…

Spark3内核源码与优化

文章目录 一、Spark内核原理1、Spark 内核概述1.1 简介1.2 Spark 核心组件1.3 Spark 通用运行流程概述 2、Spark 部署模式2.1 YARN Cluster 模式(重点)2.2 YARN Client 模式2.3 Standalone Cluster 模式2.4 Standalone Client 模式 3、Spark 通讯架构3.1 Spark 通信架构概述3.2…

【React教程】(2) React之JSX入门与列表渲染、条件渲染详细代码示例

目录 JSX环境配置基本语法规则在 JSX 中嵌入 JavaScript 表达式在 JavaScript 表达式中嵌入 JSXJSX 中的节点属性声明子节点JSX 自动阻止注入攻击在 JSX 中使用注释JSX 原理列表循环DOM Elements 列表渲染语法高亮 条件渲染示例1:示例2:示例3&#xff08…

Spring Security的入门案例!!!

一、导入依赖 <dependencies><!--web--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--security--><dependency><groupId>…

幻兽帕鲁服务器出租,腾讯云PK阿里云怎么收费?

幻兽帕鲁服务器价格多少钱&#xff1f;4核16G服务器Palworld官方推荐配置&#xff0c;阿里云4核16G服务器32元1个月、96元3个月&#xff0c;腾讯云换手帕服务器服务器4核16G14M带宽66元一个月、277元3个月&#xff0c;8核32G22M配置115元1个月、345元3个月&#xff0c;16核64G3…

SpringBoot项目接入MQTT协议

mqtt是一种类似于mq的通讯技术 1、mqtt服务端搭建 创建docker网络 docker network create --driver bridge --subnet 172.18.0.0/24 --gateway 172.18.0.1 emqx-net创建容器 docker run -d \--name emqx1 \-e "EMQX_NODE_NAMEemqx172.18.0.2" \--network emqx-ne…

【LeetCode每日一题】56. 合并区间插入区间

一、判断区间是否重叠 力扣 252. 会议室 给定一个会议时间安排的数组 intervals &#xff0c;每个会议时间都会包括开始和结束的时间 intervals[i] [starti, endi] &#xff0c;请你判断一个人是否能够参加这里面的全部会议。 思路分析 因为一个人在同一时刻只能参加一个会…

Zygote的启动流程

在zygote进程对应的文件是app_main.cpp文件&#xff0c;在app_main.cpp文件的main()方法中先解析了init.rc中配置的参数并根据配置的参数设置zygote的状态。 在状态设置阶段主要做了&#xff1a; 设置进程名称为zygote通过startSystemServer true标示启动的是systemServer调…

SpringSecurity笔记

SpringSecurity 本笔记来自三更草堂&#xff1a;https://www.bilibili.com/video/BV1mm4y1X7Hc/?spm_id_from333.337.search-card.all.click&#xff0c;仅供个人学习使用 简介 Spring Security是Spring家族中的一个安全管理框架。相比与另外一个安全框架Shiro&#xff0c;…

消息中间件RabbitMQ介绍

一、基础知识 1. 什么是RabbitMQ RabbitMQ是2007年发布&#xff0c;是一个在AMQP(高级消息队列协议)基础上完成的&#xff0c;简称MQ全称为Message Queue, 消息队列&#xff08;MQ&#xff09;是一种应用程序对应用程序的通信方法&#xff0c;由Erlang&#xff08;专门针对于大…

What is Rust? Why Rust?

why Rust&#xff1f; 目前&#xff0c;Rust 变得越来越流行。然而&#xff0c;仍然有很多人&#xff08;和公司&#xff01;&#xff09;误解了 Rust 的主张价值是什么&#xff0c;甚至误解了它是什么。在本文中&#xff0c;我们将讨论 Rust 是什么以及为什么它是一种可以增强…

基于springboot+vue的医院管理系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 研究背景…