首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开发 | 手把手,教你调用小程序蓝牙接口

下面,我将在知晓程序(微信号 zxcx0101)为大家总结,我在研究小程序蓝牙接口的时候遇到的问题。 关注「知晓程序」微信公众号,回复「开发」,获取小程序开发全套经验。 小程序如何连接蓝牙设备?...,开启监听已扫描的设备; 如果已扫描到的新设备,包含特定名称规律,则开始连接该设备; 开启获取已连接蓝牙设备,成功后,连接包含特定名称规律的设备; 两者都无法搜索到相应设备,则等待 5 s,重新搜索;...获取已配对的蓝牙设备 需要注意的是,参数 services(Array)是必填的,但是官方示例中以及各种坑爹 demo 里从没见过有谁填写。不填写这个属性此方法,将无法获取到任何已配对设备。...意外处理 如果扫描到的设备中没有想要连接的设备,可以尝试使用系统蓝牙手动配对,然后再小程序中调用 getConnectedBluetoothDevices() 获取本机已配对的蓝牙设备,然后过滤设备(可能获取多个已配对的蓝牙设备...需要注意的事项 that.serviceId 是在初始化时设置的,由于对需要连接设备的主服务 serivceId 和各种特征值都是已知的,因此可以这样做。

2.3K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【Android 应用开发】BluetoothAdapter解析

    , 例如 : 启动设备发现(startDiscovery), 获取已配对设备(getBoundedDevices), 通过mac蓝牙地址获取蓝牙设备(getRemoteDevice), 从其它设备创建一个监听连接...: 允许程序连接到已配对的蓝牙设备, 请求连接/接收连接/传输数据需要改权限, 主要用于对配对后进行操作; android.permission.BLUETOOTH_ADMIN : 允许程序发现和配对蓝牙设备..., 值为21, 查询扫描失效, 页面扫描有效, 该状态下蓝牙模块可以扫描其它设备, 从可见性来说只对已配对的蓝牙设备可见, 只有配对的设备才能主动连接本设备; 可见状态 : int SCAN_MODE_CONNECTABLE_DISCOVERABLE...", 默认的可见时间为120s, 可以在广播中添加附加域, 设置任意的可见时间, 附加域为EXTRA_DISCOVERABLE_DURATION, 需要BLUETOOTH权限; 可以在Activity中的...: 本地蓝牙设备的名称; (4)获取绑定的蓝牙集合 public Set getBoundedDevices(); 作用 : 获取已经配对的蓝牙设备的集合, 如果蓝牙未被打开

    2.2K40

    HarmonyOS学习路之开发篇—网络与连接(蓝牙开发 一)

    传统蓝牙 HarmonyOS传统蓝牙提供的功能有: 传统蓝牙本机管理:打开和关闭蓝牙、设置和获取本机蓝牙名称、扫描和取消扫描周边蓝牙设备、获取本机蓝牙profile对其他设备的连接状态、获取本机蓝牙已配对的蓝牙设备列表...传统蓝牙本机管理 场景介绍 传统蓝牙本机管理主要是针对蓝牙本机的基本操作,包括打开和关闭蓝牙、设置和获取本机蓝牙名称、扫描和取消扫描周边蓝牙设备、获取本机蓝牙profile对其他设备的连接状态、获取本机蓝牙已配对的蓝牙设备列表...isBtDiscovering​() 检查蓝牙是否在扫描设备中。 getProfileConnState​(int profile) 获取本机蓝牙profile对其他设备的连接状态。...getPairedDevices​() 获取本机蓝牙已配对的蓝牙设备列。...场景介绍 传统蓝牙远端管理操作主要是针对远端蓝牙设备的基本操作,包括获取远端蓝牙设备地址、类型、名称和配对状态,以及向远端设备发起配对。

    77340

    Android 蓝牙开发(1)

    基础知识 使用 Android Bluetooth API 来完成使用蓝牙进行通信的四项主要任务:设置蓝牙、查找局部区域内的配对设备或可用设备、连接设备,以及在设备之间传输数据。...在首次与远程设备建立连接后,将会自动向用户显示配对请求。设备完成配对后,将会保存关于该设备的基本信息(如 设备名称、MAC 地址)。并且可以使用 Bluetooth API 读取这些信息。...Android 设备是默认处于不可检测状态的。 查询配对的设备 在执行设备发现之前,有必要查询已配对的设备集合。用来了解设备是否处于已知状态。...在连接之前如果两个设备没有配对,则系统会自动发出配对请求 连接为服务器 当连接两台设备时,其中一台必须保持开发的 BluetoothServerSocket 来充当服务器,用于监听传入的连接请求,在接受了请求后提供一个已经连接的...在 onServiceConnected() 中获取配置文件代理对象的句柄。 获取配置文件代理对象后,可以里脊将其用于监听连接状态和执行其他与该配置文件相关的操作。

    2.5K01

    Android4.42-Settings源码分析之蓝牙模块Bluetooth整体实现(总)

    中完成,preference包括title--蓝牙名称、summary---蓝牙可检测性的更新 蓝牙名称--title的更新过程在BluetoothSettings.java中完成,过程如下 获取到本机蓝牙名称...       ii>,如果是别的状态,则要根据是否已经有已配对的设备进行显示,显示为“已配对设备可见”或者是“对所有设备不可见” 既然说到了可检测性,直接说一说可检测时间,在程序启动时注册了广播BluetoothDiscoverableTimeoutReceiver...中对列表进行管理 获取到设备缓存列表,该列表中存放已配对设设备和未配对设备,在程序安装成功后会通过BluetoothAdapter的getBondedDevices方法读取到已配对设备保存到缓存列表中...; 扫描到设备后缓存到缓存列表,然后显示到附近可用设备列表 若附近可用设备列表为空,则移除 设备的点击事件在BluetoothDevicePreference中处理,设备状态不同则动作不同:如果是已配对设备则点击后就进行连接...,如果是为配对的设备点击后进行配对,如果是已连接的设备点击后断开连接。

    53410

    Android4.42-Setting源码分析之蓝牙模块Bluetooth(下)

    ()方法获取到已配对的设备列表,获取到列表后将数据缓存在List中进行备份,当蓝牙界面启动后会从缓存中读取数据并显示已配对设备列表mPairedDevicesCategory...设备列表的加载基本上就是这些,接下来挨个介绍 i>,调用底层代码获取可用设备列表并进行缓存 这部分代码的书写在BluetoothEventManager.java文件中,获取已配对设备列表的代码定义如下...文件中的代码,在蓝牙开启后会调用如下代码读取已配对的设备 void setBluetoothStateOn() { ParcelUuid[] uuids = mLocalAdapter.getUuids...其实,在进行扫描后,获取的设备列表与可配对设备列表缓存在一起,这部分在介绍扫描处介绍 ii>,设备列表加载到屏幕 现在不论是已配对设备或是附近可用设备均缓存在同一列表,所以两个列表的加载类似,附近可用设备列表显示时会有一个...,与列表的排序相关 cachedDevice.setVisible(true); } } 5>,蓝牙配对 设备列表中包括已配对设备、未配对设备、已连接设备等

    96130

    Android开发笔记(一百六十二)蓝牙设备的连接与配对

    蓝牙是一种短距离无线通信技术,它由爱立信公司于1994年创制,原本想替代连接电信设备的数据线,但是后来发现它也能用于移动设备之间的数据传输,所以蓝牙技术在手机上获得了长足发展...disable : 禁用蓝牙功能。 isEnabled : 判断蓝牙功能是否启用。返回true表示已启用,返回false表示未启用。 getBondedDevices : 获取已配对的设备集合。...isDiscovering : 判断是否正在搜索周围的蓝牙设备。 接下来通过一个检测蓝牙设备并配对的例子,介绍如何在App开发中运用蓝牙技术。...所以页面代码需要注册一个蓝牙搜索结果的广播接收器,在接收器中解析蓝牙设备信息,再把新设备添加到蓝牙设备列表。...下面是BluetoothDevice类的常用方法说明: getName : 获取设备的名称。 getAddress : 获取设备的MAC地址。 getBondState : 获取设备的绑定状态。

    3.3K10

    Android4.42-Settings源码分析之蓝牙模块Bluetooth(上)

    还加入了关于蓝牙的两个权限,BLUETOOTH和BLUETOOTH_ADMIN,前者用于允许与已经配对的蓝牙设备进行连接主要是配对后的权限,后者用于允许发现和配对蓝牙设备,主要是配对前的权限。...,与设备配对,连接,通信。...圈2:ActionBar底部栏,可进行蓝牙设备的搜索,检测时间,已配对设备列表等一些除了配对之外的设置,Actionbar的相关布局在onCreateOptionsMenu方法中,利用如下代码可自定义actionbar...4:本机蓝牙设备的相关设置,包括本机蓝牙名称,蓝牙对附近可用设备的可见性,蓝牙对已经配对设备的可见性,当检测到蓝牙开启时会添加一个本机蓝牙信息的Preference,在方法updateContent中完成添加或者移除...(this); mValidListener = true; } 在resume方法中做了三件事, i>,根据本地蓝牙适配器获取到此时的蓝牙状态对switch进行设置handleStateChanged

    1.6K20

    HC-05蓝牙模块主从机通信

    ,下文将介绍如何使用两个蓝牙模块进行主从机通信。...注意:当模块进入已配对状态时,除非重新上电复位,否则是无法进入AT模式的,也就不能发任何AT指令。...)1——任意蓝牙地址连接模式(不受绑定指令设置地址的约束)2——回环角色(Slave-Loop)默认连接模式:0 AT+BIND=Param OK Param——绑定蓝牙地址 默认绑定蓝牙地址:00:00...四、备注说明 1.AT+INQ 返回ERROR:(1F) 1F错误码在HC-05手册中没有说明,暂定为未知错误 解决方法是:尝试恢复出厂设置(AT+ORGL \r\n)另外本条指令需要通过上文提到的第二种方式发送才可以...s;停止位:1 位;校验位:无 ⑥.配对码:“1234” ⑦.设备名称:“HC-05”

    14310

    蓝牙API介绍及基本功能实现

    本文已授权微信公众号>独家发布 ONE,传统蓝牙 BluetoothAdapter:本地蓝牙设备适配器,用于管理蓝牙的开启/关闭、重命名、扫描、配对、连接 BluetoothClass...);//本地蓝牙重命名 mAdapter.getName();//获取本机蓝牙名 通过监听BluetoothAdpater.ACTION_LOCAL_NAME_CHANGED监听本机蓝牙名称的改变 蓝牙可检测性设置...()没有办法去调用,只能利用反射 获取已配对设备列表 List list = (List) adapter.getBondedDevices...BluetoothDevice.ACTION_FOUND的广播,通过监听该广播可以获取到设备信息 获取到设备后调用如下方式进行连接 BluetoothSocket _BluetoothSocket =...,remotedevice和本机蓝牙设备的uuid必须相同 TWO,BLE低功耗蓝牙 获取蓝牙适配器的步骤同上,扫描ble设备的方法如下: //开启蓝牙扫描 mBluetoothAdapter.startLeScan

    1.5K10

    android 十八 蓝牙及Wi-Fi

    学习内容 Ø 蓝牙的基本概念 Ø Android中蓝牙的应用 能力目标 Ø 了解蓝牙的基本概念 Ø 掌握Android中蓝牙的应用 Ø 掌握如何使用Android中Wi-Fi 本章简介 蓝牙是一种重要的短距离无线通信技术...本节中我们主要来学习Android开发中如何调用系统中蓝牙以及wifi的功能。 ​...扫描已经配对的蓝牙设备时,包括手机和电脑配对,必须得通过手动完成,不能通过代码完成,我们应该把主要的精力放在配对完成之后的操作上来。...核心步骤如下: (1) 获得BluetoothAdapter对象; (2) 判断当前设备中是否拥有蓝牙设备; (3) 判断当前设备中的蓝牙设备是否已经打开,如果没有打开的话,要打开; (4) 得到所有已经配对的蓝牙设备对象...2:获取Wi-Fi相关信息 ​训练技能点​ 如何获取Wi-Fi相关信息 ​需求说明​ Wi-Fi的连接信息在实际的应用中是很有用的,以连接速度为例,当我们可以在程序中根据连接速度的快慢做不同的工作

    10710

    【Android 应用开发】BluetoothDevice详解

    调用BluetoothAdapter的getBoundedDevices()方法, 可以获取已经配对的蓝牙设备集合; 3....需要权限 android.permission.BLUETOOTH : 允许程序连接到已配对的蓝牙设备, 请求连接/接收连接/传输数据需要改权限, 主要用于对配对后进行操作; android.permission.BLUETOOTH_ADMIN... : 允许程序发现和配对蓝牙设备, 该权限用来管理蓝牙设备, 有了这个权限, 应用才能使用本机的蓝牙设备, 主要用于对配对前的操作; 优先级 : BLUETOOTH权限是BLUETOOTH_ADMIN权限的前提...; 本地存储了一个该远程设备的共享连接, 本地设备和远程设备之间的通信可以被认证和加密; 这个连接不是已经连接成功, 时刻保持连接状态, 这个连接的作用是, 下次连接的时候不用再次建立新的蓝牙连接; 绑定中..., 可能会是BOND_BONDED, BOND_BONDING, BOND_NONE中的一个; (7)获取设备的蓝牙名称 public String getName () 作用 : 获取远程的蓝牙设备名称

    1.9K30

    『教程』微信小程序--蓝牙连接开发总结

    3、 判断蓝牙适配器可用时开启扫描蓝牙设备和开启获取已连接的蓝牙设备 4、 如果开启扫描蓝牙设备失败5s后自动再次开启扫描 5、 开启扫描蓝牙设备成功后开启监听已扫描的设备 6、 如果已扫描到的新设备含...FeiZhi名(个人产品需要)的设备则开始连接该设备 7、 开启获取已连接蓝牙设备开启获取设备成功后判断以获取的设备名包含FeiZhi(个人产品需要)字符串的设备则开始连接该设备 8、 开始获取已连接蓝牙设备没有成功获取到已连接的蓝牙设备...() 开启获取本机已配对的蓝牙设备。...,可以尝试使用系统蓝牙手动配对,然后再小程序中调用getConnectedBluetoothDevices() 获取本机已配对的蓝牙设备,然后过滤设备(可能获取多个已配对的蓝牙设备)。...将以获取的蓝牙设备deviceId放入到一个数组中调用自定义方法this.loopConnect(); 思路:通过递归调用获取已配对蓝牙设备的deviceId,如果获取到了就去连接,devicesId[

    7.8K103

    带你解锁蓝牙skill(三)

    界面大致包括两部分,设置中的蓝牙界面和蓝牙应用中的蓝牙界面 设置中蓝牙相关的界面 蓝牙界面相关的分析在去年做过,虽然是4.4.2但是原理还是一样的,也没必要再做那么多无用功,贴上博客链接 蓝牙界面实现分析...(一) 蓝牙界面实现分析(二) 蓝牙界面实现分析(三) 有需要的可以看一下 在这里需要说明一下:关于已配对设备的各种配置协议显示界面 蓝牙设备间的连接其实就是各协议之间的连接,蓝牙设备间有可能有多个协议连接...,但每个协议仅支持一个连接 在设备进行配对时,发送设备配对状态发生改变的广播,在监听到广播后设备会去获取到remote设备所支持的协议,并尝试进行连接,比如如果remote设备支持手机音频或者媒体音频,...因为所设备的过滤器是FILTER_TYPE_ALL,所以所添加的设备包括已配对的,已连接的,以及附近可用设备即所有蓝牙设备 针对选择蓝牙设备界面的filter共有以下几种取值(为什么我这么说,因为对于其他界面比如...BLuetoothSettings时filter又会有别的取值,在加载已配对设备和可用设备时区分是靠BluetoothDeviceFilter中的取值) ?

    1.6K70

    BLE (低功耗蓝牙)协议入门-01-整体介绍

    后续的章节会对每一部分单独进行详细的讲解。 00-蓝牙的历史 蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料,以形成个人局域网(PAN)。...定义了蓝牙设备配对、认证、解密等行为的安全操作,SMP用来管理BLE连接的加密和安全的,如何保证连接的安全性,同时不影响用户的体验,这些都是SMP要考虑的工作。...09-GAP层 GAP(Generic Access Profile, 通用访问规范):定义了所有蓝牙设备的基础功能,设备间发现、连接、配对绑定的流程;蓝牙设备中四种角色;广播和扫描响应报文的格式;还有一些通用蓝牙参数定义...,比如设备地址、名称、配对秘钥和设备的外观特征值,用于区分是什么设备,手机还是电脑;明确了作为一个低功耗蓝牙设备的基本需求,包含哪些层级以及如何协同工作的。...规范了一些通用的蓝牙参数:蓝牙设备地址、设备名称、配对秘钥、外观特征值(用于区分设备是手机还是电脑)。

    4.7K60
    领券