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

如何在Android设备上通过MAC地址断开蓝牙连接?

在Android设备上,可以通过以下步骤通过MAC地址断开蓝牙连接:

  1. 获取设备的蓝牙适配器:使用BluetoothAdapter类的getDefaultAdapter()方法获取设备的蓝牙适配器对象。
  2. 检查蓝牙是否已启用:使用isEnabled()方法检查蓝牙是否已启用。如果蓝牙未启用,可以使用enable()方法启用蓝牙。
  3. 获取已配对设备列表:使用getBondedDevices()方法获取已配对的蓝牙设备列表。这将返回一个Set<BluetoothDevice>对象,其中包含已配对设备的BluetoothDevice实例。
  4. 遍历设备列表:使用for循环遍历设备列表,找到目标设备的BluetoothDevice实例。可以使用getAddress()方法获取设备的MAC地址,并与目标MAC地址进行比较。
  5. 断开蓝牙连接:使用BluetoothDevice类的disconnect()方法断开与目标设备的蓝牙连接。

以下是一个示例代码:

代码语言:txt
复制
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;

// 获取蓝牙适配器
BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();

// 检查蓝牙是否已启用
if (!bluetoothAdapter.isEnabled()) {
    bluetoothAdapter.enable();
}

// 获取已配对设备列表
Set<BluetoothDevice> pairedDevices = bluetoothAdapter.getBondedDevices();

// 目标设备的MAC地址
String targetMacAddress = "00:11:22:33:44:55";

// 遍历设备列表,找到目标设备并断开连接
for (BluetoothDevice device : pairedDevices) {
    if (device.getAddress().equals(targetMacAddress)) {
        device.disconnect();
        break;
    }
}

请注意,以上代码仅断开与目标设备的蓝牙连接,并不会关闭蓝牙功能。如果需要关闭蓝牙,可以使用BluetoothAdapter的disable()方法。

在腾讯云的产品中,与蓝牙相关的服务和产品可能不直接提供。但是,腾讯云提供了丰富的云计算解决方案和产品,如云服务器、云数据库、云存储等,可用于构建和扩展各种应用程序。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于腾讯云的产品和服务。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Android BLE 基础框架全新改版

; 支持广播包解析; 支持自定义扫描过滤条件; 支持根据设备名称正则表达式过滤扫描设备; 支持根据设备信号最小值过滤扫描设备; 支持根据设备名称或 MAC 地址列表过滤扫描设备; 支持根据设备 UUID...过滤扫描设备; 支持根据指定设备名称或 MAC 地址搜索指定设备; 支持连接设备失败重试; 支持操作设备数据失败重试; 支持绑定数据收发通道,同一种能力可绑定多个通道; 支持注册和取消通知监听; 支持配置最大连接数...BluetoothLeDeviceStore 管理,而单个设备信息都统一放到BluetoothLeDevice中,其中包含了设备的所有信息,设备名称、设备地址、广播包解析信息等,设备的相关信息会在设备详情中进行介绍...设备连接 设备连接有三种方式,一种是根据设备信息直接进行连接,另外两种是在没扫描的情况下直接通过设备名称或设备 MAC 进行扫描连接。...ViseBle 中封装了几个常用的 API,:开始扫描与停止扫描、连接断开连接、清除资源等,该库提供的功能尽量简单易用,这也正是该项目的宗旨。

2K70

Android 低功耗蓝牙开发(扫描、连接

前言   之间我写过蓝牙开发的文章,只不过是针对于经典蓝牙,可以理解为普通蓝牙连接的对象是经典蓝牙,列手机蓝牙蓝牙耳机等设备。...四、显示扫描设备   下面将扫描结果渲染到列表,首先明确列表要显示扫描设备的那些信息,从item来看有设备名、Mac地址、信号强度。...五、连接设备   连接Ble设备其实也很简单,难的是连接之外的东西,先来构想一下连接功能的业务逻辑,点击设备列表中的设备,进行连接,先显示一个加载布局,表示现在正在连接,然后停止扫描,在根据设备mac...地址连接这个设备,然后在连接设备的回调中处理连接设备的结果。...有连接设备就自然有断开连接设备

2.6K40

Android 蓝牙开发(1)

通过它可以发现其他蓝牙设备,查询绑定(配对)设备的列表,使用已知的 Mac 地址实例化 BluetoothDevice 以及创建 BluetoothServerSocket 用来侦听来自其他设备的通信。...如果设备可以检测到,它将通过共享一些信息(例如设备名称、类及其唯一MAC地址)来响应发现请求。利用此信息,执行发现的设备可以选择发起到被发现设备连接。...在首次与远程设备建立连接后,将会自动向用户显示配对请求。设备完成配对后,将会保存关于该设备的基本信息( 设备名称、MAC 地址)。并且可以使用 Bluetooth API 读取这些信息。...利用远程设备的已知 Mac 地址可以随时向其发起连接,而不需执行发现操作(假定该设备处于有效范围内)。 被配对和被连接之间存在差别。...Mac 地址就可以了。

2.4K01

Native.js获取监听开关等操作Android蓝牙设备实例代码

(d.getAddress()); } } Native.js蓝牙连接票据打印机 测试机:佳博PT-280便携打印机 手机:华为低端 功能:扫描周围蓝牙设备加入列表,点击未配对设备,自动配对设备,点击已配对设备...已配对蓝牙设备 <ul id="list2" </ul </div </body </html Js文件 //address=""搜索蓝牙//address=设备mac地址,自动配对给出...mac地址设备 function searchDevices(address) { //注册类 var main = plus.android.runtimeMainActivity(); var IntentFilter...outputStream.write(bytes); outputStream.flush(); device = null //这里关键 bluetoothSocket.close(); //必须关闭蓝牙连接否则意外断开的话打印错误...} } 以上是针对Native.js对Android蓝牙设备的操作实例代码

3.3K20

微信硬件平台对接--蓝牙

设备授权 调用 设备授权新接口 ,获取deviceid和二维码,然后利用获取到的deviceid更新设备属性(mac地址,connect_protocol等)。...对蓝牙设备授权 Java版本对蓝牙设备授权绑定deviceid /** * deviceid更新到设备 */ public final static String DeviceUrl =...),不需要0X前缀,: 1234567890ABCDEF1234567890ABCDEF private String close_strategy; //断开策略,目前支持: 1:退出公众号页面时即断开连接...String manu_mac_pos; // 表示mac地址在厂商广播manufature data里含有mac地址的偏移,取值如下: -1:在尾部、 -2:表示不包含mac地址 其他:非法偏移...private String ser_mac_pos; //表示mac地址在厂商serial number里含有mac地址的偏移,取值如下: -1:表示在尾部 -2:表示不包含mac地址 其他:

4.1K120

Android 蓝牙库 FastBLE 的使用方法

☕ FastBle VS 原生Android蓝牙API 原生 Android蓝牙 API 使用有点麻烦,要先获取设备蓝牙适配器,接着注册广播来接受蓝牙设备信息,用完了还需要将广播给注销,相对来说有点麻烦...但是 FastLib 封装的就很技巧,基本能把一个操作的粒度控制在一行内,另外,代码也无需与线程、通知之类的打交道,库中已经帮我们把这些复杂的东西都做完了。..." /> 这里要注意一点,如果 Android 版本高于 6.0,用户还需要打开位置信息(不光要位置权限,还需要打开位置信息)才能通过蓝牙进行扫描。...(true, names) // 只扫描指定广播名的设备,可选 .setDeviceMac(mac) // 只扫描指定mac设备,可选 .setAutoConnect..., BleDevice bleDevice, BluetoothGatt gatt, int status) { // 连接中断,isActiveDisConnected表示是否是主动调用了断开连接方法

1.3K30

Android 应用开发】BluetoothDevice详解

该类简介 BluetoothDevice对象代表了一个远程的蓝牙设备, 通过这个类可以查询远程设备的物理地址, 名称, 连接状态等信息; 对这个类的操作, 会执行在远程蓝牙设备的硬件...., ACL连接通过Android蓝牙栈自动进行管理; String ACTION_ACL_CONNECTED : android.bluetooth.device.action.ACL_CONNECTED...: android.bluetooth.device.action.ACL_DISCONNECTED,与远程设备断开ACL连接后发出的广播, 包含EXTRA_DEVICE附加域, 需要BLUETOOTH..., 底层发出断开连接请求,ACL连接即将断开; 友好的断开连接时都会发出这个广播, 低级连接即将断开的时候, 应该马上中断高级连接; 需要BLUETOOTH权限; (2)远程设备的其它广播常量 String...() 作用 : 返回设备蓝牙地址, 这个蓝牙地址是17位的, 并且字母都是大写字母; (5)获取蓝牙类 public BluetoothClass getBluetoothClass () 作用

1.7K30

Manjaro20.0下蓝牙配对和连接

对于搜索到的新蓝牙设备,会显示出其 mac 地址和名称 [NEW] Device **:**:**:**:**:** XXX,其中 **:**:**:**:**:** 是蓝牙设备mac 地址,XXX...对于已经配对过的蓝牙设备,可以通过以下命令显示其详细信息:(**:**:**:**:**:** 为其 mac 地址。) info **:**:**:**:**:** 5....连接蓝牙设备 配对成功后,进一步在蓝牙适配器终端 [bluetooth]#通过以下命令连接蓝牙设备: connect **:**:**:**:**:** 其中 **:**:**:**:**:** 是蓝牙设备的...断开蓝牙设备 当需要断开连接时,在蓝牙适配器终端 [bluetooth]#通过以下命令断开蓝牙设备: disconnect 蓝牙适配器终端显示 Successful disconnected 则说明成功断开连接...* 是蓝牙设备mac 地址

1.3K10

微信小程序|API扫码及蓝牙的使用

. log(res) } }) 注:由于系统的问题,目前仅有少数的系统支持蓝牙得调配(MAC系统等)。...has founded' ) console . dir( devices ) }) 另外:开发者工具和 Android 获取到的deviceId为设备 MAC 地址,iOS则为设备 uuid...其次是获取所有已发现的蓝牙设备,包括已经和本机处于连接状态的设备 WX . getBluetoothDevices({ success : function (res) { console.log...(res ) } }) 3、总结 本篇中,主要是在蓝牙得使用方面,在此仅仅介绍了蓝牙功能中得几个基本方面,而在微信小程序中,蓝牙的调入使用设置是多种多样的,包括(根据 uuid 获取处于已连接状态的设备...,监听寻找到新设备的事件,断开与低功耗蓝牙设备连接)等功能,需要在使用更于完善的小程序中进行设置使用。

1.2K10

Deepin15.11下蓝牙配对和连接

对于搜索到的新蓝牙设备,会显示出其 mac 地址和名称 [NEW] Device **:**:**:**:**:** XXX,其中 **:**:**:**:**:** 是蓝牙设备mac 地址,XXX...对于已经配对过的蓝牙设备,可以通过以下命令显示其详细信息:(**:**:**:**:**:** 为其 mac 地址。) info **:**:**:**:**:** 5....连接蓝牙设备 配对成功后,进一步在蓝牙适配器终端 [bluetooth]#通过以下命令连接蓝牙设备: connect **:**:**:**:**:** 其中 **:**:**:**:**:** 是蓝牙设备的...断开蓝牙设备 当需要断开连接时,在蓝牙适配器终端 [bluetooth]# 通过以下命令断开蓝牙设备: disconnect 蓝牙适配器终端显示 Successful disconnected 则说明成功断开连接...* 是蓝牙设备mac 地址

2K10

Android蓝牙库FastBle的基础入门使用

前言 最近在做物联网课设,过程中需要用到Android蓝牙API,奈何原生的蓝牙API使用有点麻烦。于是上网搜索看有没有好用的Android蓝牙库,然后发现了这个宝贝,给大家分享一下。...FastBle VS 原生Android蓝牙API 原生Android蓝牙API使用有点麻烦,要先获取设备蓝牙适配器,接着注册广播来接受蓝牙设备信息,用完了还需要将广播给注销,相对来说有点麻烦。...)才能通过蓝牙进行扫描。..., names) // 只扫描指定广播名的设备,可选 .setDeviceMac(mac) // 只扫描指定mac设备,可选 .setAutoConnect(isAutoConnect) /...,isActiveDisConnected表示是否是主动调用了断开连接方法 } }); 当然,在官方文档中还有很多详细的说明,这里只是简单介绍了一下FastBle的基本使用,了解详情还请看官方文档。

2.4K20

物联网来了,你还不会蓝牙开发?

: 如果 android.hardware.bluetooth_le设置为false,可以安装在不支持的设备使用,判断是否支持蓝牙4.0用以下代码就可以了,: 对蓝牙的启动关闭操作: 1、利用系统默认开启蓝牙对话框...发送数据到蓝牙设备 这里可以通过调用BleManager中的sendData()方法即可,只需要传入指定的蓝牙设备地址以及需要发送的字节数组即可,返回值是发送成功或者失败的布尔值。...BleDevice: 该类的主要是来描述并记录蓝牙的属性和状态,记录蓝牙名称、蓝牙MAC地址蓝牙别名(即修改之后的名称)、蓝牙连接状态等。...BleManager: 该类提供了几乎所有你需要用到的方法,包括蓝牙扫描、连接断开蓝牙当前连接状态等等,管理了蓝牙操作的所有接口和方法。...当设备连接成功之后并不代表就可以在此时发送数据,因为此时只是连接成功,并没有获取到蓝牙服务。必须要先通过gatt对象去获取服务discoverServices()在可以。

96020

Android蓝牙开发—经典蓝牙和BLE(低功耗)蓝牙的区别

Android中的蓝牙 说到Android中的蓝牙,大家听到的可能有蓝牙1.0、蓝牙2.0、蓝牙3.0、蓝牙4.0之类的以数字结尾的蓝牙版本号,而实际,在最新的标准中,已经不再使用数字版本号作为蓝牙版本的区分了...——蓝牙小知识—— 在蓝牙设备中,存在着物理地址,我们也叫作蓝牙MAC地址,这个地址是唯一的,就像咱们网络的IP地址。同时还存在着一个叫做UUID的东西,可以把它理解为是IP地址中的端口号。...正如知道了IP地址和端口号,就知道了怎么链接到目标网络服务器位置,知道了蓝牙设备MAC地址和UUID也就能够确定到具体是哪一台蓝牙设备了,这两者合起来就是蓝牙的唯一身份标识。...为目标蓝牙设备MAC地址。...很多智能电视配的遥控器带有语音识别,需要用经典蓝牙才能传输声音 传大数据量的,用经典蓝牙某些工控场景,使用Android或Linux主控,外挂蓝牙遥控设备的,可以使用经典蓝牙里的SPP协议

4.5K20

一文学会iOS蓝牙开发

这里需要注意的是,iOS的蓝牙,没有办法直接获取蓝牙设备Mac地址,所以需要提供设备方将蓝牙Mac地址,放到advertisementData中提供,这里需要跟设备厂商确认好,获取逻辑,例如advertisementData...然后可以先获取到对应的data,再转为十六进制的hex string,再通过固定的规则取到Mac地址,然后根据Mac地址确定要链接的蓝牙设备。...当然也可以先通过简单的蓝牙名字过滤,然后再通过Mac地址进行进一步的确认唯一设备,找到要链接的设备后,再调用connectPeripheral:options:发起连接。...勾选上即可,如下图所示: 多台设备切换连接错乱 多台设备来回切换时发现有错乱的情况,即原来是连接蓝牙设备1,然后针对蓝牙设备2发送指令,结果指令操作到了蓝牙设备1,起初以为是没有调用断开连接的方法,...每次断开连接后,再次连接时,通过retrieveConnectedPeripheralsWithServices获取到的第一个设备仍是刚刚断开连接设备,所以再次连接时,就连接了错误的蓝牙设备

1.2K20

Android低功耗蓝牙BLE开发小结

UUID版本 V1:基于时间戳的MAC地址 使用MAC地址保证UUID的全球唯一性,但暴露了MAC地址和UUID的生成时间。...Android BLE相关类 BluetoothAdapter:Android设备蓝牙适配器,可执行基本的蓝牙任务,启动、停止设备发现,查询已配对设备,获取蓝牙适配器状态,使用MAC地址实例化蓝牙设备类...BluetoothGatt:该类提供了蓝牙的GATT功能,以实现与BLE设备的通信。连接、发现服务、读写特征、设置通知等。...连接BLE设备 使用上一步获取到的BluetoothDevice对象,或根据MAC地址,使用BluetoothAdapter对象的getRemoteDevice(String address)方法重构一个...也就是一个 BLE 外设同时只能被一个中心设备连接。一旦外设被连接,它就会马上停止广播,这样它就对其他设备不可见了。当设备断开,它又开始广播。 7.

5.6K561

Android BLE 快速上手指南

本文旨在提供一个方便没接触过Android低功耗蓝牙(Bluetooth Low Energy)的同学快速上手使用的简易教程,因此对其中的一些细节不做过分深入的探讨,此外,为了让没有Ble设备的同学也能模拟与设备的交互过程...-->获取服务,特征-->打开通知-->写特征-->读特征-->断开连接,通过这些步骤我们就能学会Android Ble 的基本方法的使用。...,MAC地址等条件过滤 List scanFilters=new ArrayList(); //如果你需要过滤扫描到的设备可以用下面的这种构造方法...注意坑来了: 我们在调用连接断开连接这两方法的时候最好放到主线程调用,否则可能会在一些手机上遇到奇怪的问题 获取服务,特征 当我们连接成功后,GATT客户端(手机A)可以通过发现方法检索GATT服务端...如果断开连接后没调用close方法,在多次重复连接-断开之后可能你就再也连不上设备了。

2.4K20

Android应用开发】Android 蓝牙低功耗 (BLE) ( 第一篇 . 概述 . 蓝牙低功耗文档 翻译)

这可以使 Android 应用可以与 BLE 设备进行交流, 这些设备需要很低的电量, 近距离传感器, 心率测量设备, 健康设备 等等. 2....一个 规范 (Profile) 就是 设备何在特定的应用中工作的详述.  -- 设备规范对应关系 : 此外, 一个设备可以实现多个规范, : 一个设备可以包含一个心率检测器, 和 电量检测器. (...设备运行的 Android APP 就是 GATT 客户端, BLE 外围设备 就是 GATT 服务器....连接到 GATT 服务 (1) 连接指定 BluetoothDevice 蓝牙设备 连接指定设备 :  -- 连接到 GATT 服务 : 与 BLE 设备交互的第一步是 连接到 BLE 设备中的 GATT...API 进行交流. -- BLE 蓝牙服务类 示例代码 :  // BLE 设备可以通过该服务 与 Android 的 BLE API 进行互动 public class BluetoothLeService

5.8K30
领券