【Android -- 蓝牙】蓝牙配对和蓝牙连接
文章目录
- 一、蓝牙配对
- 二、蓝牙连接
一、蓝牙配对
搜索到蓝牙设备后,将设备信息填充到listview中,点击listiew则请求配对
蓝牙配对有点击配对和自动配对,点击配对就是我们选择设备两个手机弹出配对确认框,点击确认后配对
自动配对就是搜索到蓝牙设备后自动配对不需要输入pin码,但在基本开发中都不采用这种方式,所以这里说的是第一种配对方式
点击配对,调用
BluetoothDevice.class.getMethod
进行配对,代码如下:
Method method = BluetoothDevice.class.getMethod("createBond");
Log.e(getPackageName(), "开始配对");
method.invoke(listdevice.get(position));
同样的,如果我们想要配对的设备取消配对
只需要将 creatBond 改为 removeBond
二、蓝牙连接
配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行:
1. 调用自己定义的
connect(listdevice.get(position));
同样传递的参数也是设备device
首先声明蓝牙套接字:
private BluetoothSocket mBluetoothSocket;
...
mBluetoothSocket = bluetoothDevice.createRfcommSocketToServiceRecord(BltContant.SPP_UUID);
BltContant.SPP_UUID 是一个 UUID 常量,至于 UUID 是什么,大家可以自行百度,因为详细的文章已经很多了。
连接的时候要先判断蓝牙是否在扫描,如果在扫描就停止扫描,并且没有连接才进行连接,代码如下:
if (bluetoothadapter.isDiscovering()) {bluetoothadapter.cancelDiscovery();
}
if (!mBluetoothSocket.isConnected()) {mBluetoothSocket.connect();
}
当连接成功时,我们要让被连接的那部手机也自动跳转到聊天页面,所以我们要开启蓝牙服务端等待设备的连接,当设备连接时,自动跳转页面,蓝牙服务端代码如下:
/*** 开启服务端*/
public void startBluService() {while (true) {try {if (getBluetoothServerSocket() == null){Log.e("在这里获取的为空","在这里获取的为空");}bluetoothSocket = getBluetoothServerSocket().accept();if (bluetoothSocket != null) {APP.bluetoothSocket = bluetoothSocket;EventBus.getDefault().post(new BluRxBean(SERVER_ACCEPT, bluetoothSocket.getRemoteDevice()));//如果你的蓝牙设备只是一对一的连接,则执行以下代码getBluetoothServerSocket().close();//如果你的蓝牙设备是一对多的,则应该调用break;跳出循环//break;}} catch (IOException e) {e.printStackTrace();}}
}
【Android -- 蓝牙】蓝牙配对和蓝牙连接相关推荐
- Win10 蓝牙已配对但无法连接的问题
Win10 蓝牙已配对但无法连接的问题 今天打开笔记本,发现ikbc的dc87键盘的蓝牙怎么也连不上,尝试了在蓝牙设置和设备管理器里删除该设备,后再重新配对,然而无法解决. sigh- 好吧,决定开始 ...
- win10蓝牙已配对连接不上_图文解读win10系统显示蓝牙已配对但未连接的解决教程...
图文解读win10系统显示蓝牙已配对但未连接的解决教程 更新日期:2020-05-06 12:12:02 作者:win10蓝牙 来源:本站整理 我们在操作win10系统电脑的时候,常常会遇到win10 ...
- win10蓝牙已配对连接不上_win10系统蓝牙已配对但未连接的解决方法
很多小伙伴都遇到过win10系统蓝牙已配对但未连接的困惑吧,一些朋友看过网上零散的win10系统蓝牙已配对但未连接的处理方法,并没有完完全全明白win10系统蓝牙已配对但未连接是如何解决的,今天小编准 ...
- win10蓝牙已配对连接不上_手把手帮您win10系统显示蓝牙已配对但未连接的设置教程...
许多win10系统用户在工作中经常会遇到win10系统显示蓝牙已配对但未连接的情况,想必大家都遇到过win10系统显示蓝牙已配对但未连接的情况吧,那么应该怎么处理win10系统显示蓝牙已配对但未连接呢 ...
- win10蓝牙已配对连接不上_Win10系统显示蓝牙已配对但未连接的解决方法
最近有win10系统用户反映说碰到这样一个情况,就是在使用蓝牙的时候,明明已经显示蓝牙已配对了,但是却一直未连接,导致无法使用蓝牙功能,遇到这样的问题该如何处理呢?本文就给大家讲解一下Win10系统显 ...
- win10蓝牙已配对连接不上_Win10系统显示蓝牙已配对但未连接咋办?
电脑的蓝牙设备是我们在Win10系统中电脑传输,接收文件有的小伙伴在使用的方式,安全快捷,今天看到有小伙伴在使用蓝牙的时候初选了问题,系统显示蓝牙已配对了的,但是一直不能成功连接的情况,遇到这个问题我 ...
- w10添加蓝牙显示无法连接服务器失败,技术解答Win10系统下显示蓝牙已配对但未连接的修复方式...
电脑已经成为了大家生活中不可或缺的东西,而且基本上所有的用户电脑都安装了windows系统,操作系统的过程中往往会遇到一些问题,就比如Win10系统下显示蓝牙已配对但未连接的情况,如果你的电脑技术不够 ...
- win10蓝牙已配对连接不上_教你win10系统显示蓝牙已配对但未连接失败如何解决...
win10系统自带有蓝牙功能,但有时候会碰到一些情况,比如最近有用户在使用蓝牙的时候,系统显示蓝牙已经配对了,但一直不能成功连接,就此问题,接下来小编教你win10系统显示蓝牙已配对但未连接失败如何解 ...
- HC05蓝牙主机配对BT06蓝牙从机教程
HC05蓝牙主机配对BT06从机教程 第一步:检查你买的模块买的是什么型号 第二步:先配置BT06从机 第三步:配置HC05主机 最后一步 相信各位看到这篇文章的时候,也都是和我一样,需要配置两个蓝牙 ...
- android获取已配对的蓝牙列表和已连接蓝牙设备
private void getPairBLEAndConnectBLE() {BluetoothAdapter defaultAdapter = BluetoothAdapter.getDefaul ...
最新文章
- 我的python学习笔记
- 使用Silverlight4无边窗口
- linux kernel中的进程栈
- 最简单的方式实现一棵二叉树
- Transformation available that removes all elements from form message type
- webform数据导出
- awstats 网站访问统计工具安装
- 解决UBUNTU NVIDIA驱动安装后循环登录问题:关闭UEFI Secure Boot选项
- 科研英文论文翻译工具——Copytranslator
- 无需教师端极域电子教室的反控制实现
- php验证码图片不显示怎么办,php 验证码图片无法显示怎么办
- matlab 复制 模块,想把m文件在simulink 中的调用,我用的是matlab function 模块。
- php Allowed memory size of 134217728 bytes exhausted
- bi数据分析工具有哪些?
- 噪声特性及matlab函数
- SQLServer uniqueidentifier 类型
- 【选址优化】基于粒子群算法求解配电网抢修选址优化问题含Matlab源码
- 罗尔定理_高数_1元微积分
- Tomcat 7 相关参数优化说明及配置最佳案例
- 手机归属地查询API接口,免费好用