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

Android蓝牙开发(二)之蓝牙配对和蓝牙连接

上篇文章:https://blog.csdn.net/huangliniqng/article/details/82185983 讲解了打开蓝牙设备和搜索蓝牙设备,这篇文章来讲解蓝牙配对和蓝牙连接 1....蓝牙配对    搜索到蓝牙设备后,将设备信息填充到listview中,点击listiew则请求配对   蓝牙配对有点击配对和自动配对,点击配对就是我们选择设备两个手机弹出配对确认框,点击确认后配对  ...同样的,如果我们想要配对的设备取消配对 只需要将creatBond改为removeBond 2.蓝牙连接:   配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行: 调用自己定义的...在这里我们需要注意的是,当连接成功时,我们要让被连接的那部手机也自动跳转到聊天页面,所以我们要开启蓝牙服务端等待设备的连接,当设备连接时,自动跳转页面,蓝牙服务端代码如下: /** * 开启服务端...下篇文章 蓝牙通信:https://blog.csdn.net/huangliniqng/article/details/82189735

4.4K20

Android蓝牙开发(二)之蓝牙配对和蓝牙连接

上篇文章:https://blog.csdn.net/huangliniqng/article/details/82185983 讲解了打开蓝牙设备和搜索蓝牙设备,这篇文章来讲解蓝牙配对和蓝牙连接 1....蓝牙配对 搜索到蓝牙设备后,将设备信息填充到listview中,点击listiew则请求配对 蓝牙配对有点击配对和自动配对,点击配对就是我们选择设备两个手机弹出配对确认框,点击确认后配对...自动配对就是搜索到蓝牙设备后自动配对不需要输入pin码,但在基本开发中都不采用这种方式,所以这里说的是第一种配对方式 点击配对,调用 BluetoothDevice.class.getMethod...中所以从list中取) 点击之后怎会弹出配对确认框,且必须被配对的手机也点击确认配对才可以配对成功如图: 同样的,如果我们想要配对的设备取消配对 只需要将creatBond改为removeBond 2.蓝牙连接...: 配对成功之后,就可以进行蓝牙连接了,蓝牙连接操作比较耗时,可以在一个线程中进行: 调用自己定义的 connect(listdevice.get(position)); 同样传递的参数也是设备device

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

    蓝牙协议详解(蓝牙是什么)

    蓝牙协议分析(1)基本概念  蓝牙4.1,是一个大杂烩:BR/EDR沿用旧的蓝牙规范;LE抄袭802.15.4;AMP直接使用802.11。...1.蓝牙技术的概述 1.1 两种蓝牙技术:经典蓝牙(检称 BT)和低功耗蓝牙(简称BLE)  蓝牙协议包括两种技术:经典蓝牙(简称BT)和低功耗蓝牙(简称BLE)。...因此在硬件模组上又有单模蓝牙和双模蓝牙的区别。在智能手机中的蓝牙就是双模蓝牙,它可以支持经典蓝牙和低功耗蓝牙。...双模蓝牙:支持低功耗蓝牙和经典蓝牙的所有功能 低功耗蓝牙:仅支持低功耗蓝牙不支持经典蓝牙 经典蓝牙: 仅支持经典蓝牙不支持低功耗蓝牙 1.1.1 经典蓝牙(BT): BR技术 、EDR技术 、AMP技术... 经典蓝牙是正宗的蓝牙技术。

    7.4K12

    Android蓝牙开发(三)之蓝牙通信

    上篇文章:https://blog.csdn.net/huangliniqng/article/details/82187966 上篇文章我们讲解了,蓝牙配对和蓝牙连接相关知识,还没有了解的朋友可先移步上篇文章...1.蓝牙通信简介   无论是做Java还是Android开发的朋友肯定都比较熟悉Socket的连接,在java中通信用的是Socket,同样的蓝牙之间通信(这里说的是经典蓝牙)方式也是Socket,只不过是...BluetoothSocket,同样的也要有Socket服务端和客户端 2.蓝牙通信消息接收端 设备连接后,跳转到通讯界面,首先我们要在通讯界面开启消息接收端服务,同样的我们要在一个线程中开启 得到bluetooth...文件保存成功")); } } } catch (IOException e) { e.printStackTrace(); } } 3.蓝牙通信发送文本消息...BltContant.SEND_TEXT_SUCCESS)); } catch (IOException e) { e.printStackTrace(); } } 4.蓝牙通信发送文件

    2.1K20

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

    最近在做蓝牙开发,刚接触时傻傻的分不清经典蓝牙和低功耗蓝牙的区别,一直用开发低功耗蓝牙的方法去连接经典蓝牙设备,最后当然是一直连接不上了。在此记录下经典蓝牙和低功耗蓝牙的区别和联系。...Android中的蓝牙 说到Android中的蓝牙,大家听到的可能有蓝牙1.0、蓝牙2.0、蓝牙3.0、蓝牙4.0之类的以数字结尾的蓝牙版本号,而实际上,在最新的标准中,已经不再使用数字版本号作为蓝牙版本的区分了...如表中所述,现在的蓝牙实际上分为了三类:单模、双模和经典。那么,最官方的蓝牙版本称呼就是,单模蓝牙、双模蓝牙和经典蓝牙。 在这其中,最前沿的当属单模蓝牙了,也就是低功耗蓝牙。...这个蓝牙标准和经典蓝牙区别极大,在最初甚至考虑过加入WIFI阵营,但是因为蓝牙阵营这边条件较为优厚(比如授权费用极低)才并入了蓝牙标准。 那么,低功耗蓝牙和经典蓝牙的区别究竟在哪里呢?...正如知道了IP地址和端口号,就知道了怎么链接到目标网络服务器位置,知道了蓝牙设备的MAC地址和UUID也就能够确定到具体是哪一台蓝牙设备了,这两者合起来就是蓝牙的唯一身份标识。

    4.7K21

    Android 蓝牙开发(2)——低功耗蓝牙

    低功耗蓝牙官方文档 本文章是参考官网,然后加入自己实践中的理解完成!没有看上一篇的读者,可以先阅读一下前一篇,这是一个系列。...(API 18 )引入了低功耗蓝牙,应用可以查询周围设备、查询设备的服务、传输信息。...GATT 服务器和 GATT 客户端。...确定了两个设备建立连接后如何进行相互通信 BLE 权限 应用在使用蓝牙设备的时候必须要声明蓝牙权限 BLUETOOTH 需要这个权限才可以进行蓝牙通信,例如:请求连接、接受连接、和传输数据。...读 BLE 属性 一旦我们的 Android 设备连接到了 GATT 服务器并发现了服务,我们就可以在支持的位置读取或者写入属性了。

    2.3K10

    Android蓝牙通信之搜索蓝牙设备

    一:注意事项 1:android6.0使用蓝牙时,需要开启gps定位权限,不然无法搜索其它蓝牙设备。 二:权限 1:权限配置 <!...android.bluetooth.BluetoothAdapter 是蓝牙开发用得比较多,并且比较重要的一个类,可以设备蓝牙名称,打开,关闭,搜索等常规操作。...1 蓝牙打开,以及搜索 蓝牙打开和关闭信息使用BluetoothAdapter.ACTION_STATE_CHANGED去接收广播 BluetoothAdapter mBluetoothAdapter...而是安卓6.0的bug,凡是遇到蓝牙适配问题的,请同时打开蓝牙和定位,再去配对,基本90%都没有问题了。...demo代码下载:github 总结 以上所述是小编给大家介绍的Android蓝牙通信之搜索蓝牙设备,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

    3.1K31

    Android蓝牙详析 | 经典蓝牙通讯架构

    连接设备 蓝牙通讯机制建立在socket上; 要在两台设备上创建连接,需要实现服务器端和客户端机制 一般通讯过程: 在服务端等待客户端的连接请求, 有连接请求后连接, 连接成功后有一个socket...(也即套接字), 通过socket套接字得到IO流, 往输入流中读数据, 或者往输出流中写数据, 即可以实现两台设备之间的通讯; 服务器设备和客户端设备分别获得需要的BluetoothSocket...; 上面说过, 要在两台设备上创建连接, 需要实现服务器端和客户端机制, 其中有一台需要开放服务端的套接字, 另外一台作为客户端, 需要通过蓝牙的Mac地址向服务端发送连接请求; 当我们的服务端和客户端在同一个频道上的话..., 就可以进行连接; 之后服务端会接收一个套接字, 这个套接字会作为服务端和客户端 进行通信的接口; 设置服务器端 设置服务器套接字 并 接受连接的基本过程: 通过调用listenUsingRfcommWithServiceRecord...)的连接; 首先要获取表示该远程设备的BluetoothDevice对象, 这个对象是通过蓝牙的Mac地址构造的; Mac地址是一个设备的全世界唯一的标识; 通过BluetoothDevice对象

    2.2K20

    Android 蓝牙开发(3)——蓝牙的详细介绍

    第一篇文章 Android 蓝牙开发(1) 主要是介绍了普通的蓝牙在 Android 开发中的运用。 第二篇文章 Android 蓝牙开发(2) 主要是介绍了低功耗蓝牙的开发。...这篇文章主要介绍的是蓝牙的历史和一些关于蓝牙的通用知识,还有广播包的知识。要想彻底了解蓝牙开发,这些基础的知识也是需要的,就像网络协议一样,这些都是基础的内容。...蓝牙的发展历史 蓝牙技术最初是由爱立信创制的。技术始于爱立信公司 1994 方案,它是研究在移动电话和其他配件间进行低功耗、低成本无线通信连接的方法。...、效益高、可以在短距离范围内随意无线连接的蓝牙技术标准。...蓝牙其实就是一种近距离无线通信技术。 ? 蓝牙历史版本.png 低功耗蓝牙 BLE 全称是 Bluetooth Low Energy 简称 BLE 。

    2.3K10

    Android蓝牙连接a2dp蓝牙耳机

    设备,蓝牙耳机设备 功能实现: 本应用提供以下功能: 第一:开启蓝牙 第二:查找过滤掉A2DP设备 第三:连接A2DP设备 第四:断开连接A2DP设备 第五:保存通过本应用连接的A2DP设备 第六...然而并非支持A2DP的耳机就是蓝牙立体声耳机,立体声实现的基本要求是双声道,所以单声道的蓝牙耳机是不能实现立体声的。声音能达到44.1kHz,一般的耳机只能达到8kHz。...如果手机支持蓝牙,只要装载A2DP协议,就能使用A2DP耳机了。...还有消费者看到技术参数提到蓝牙V1.0 V1.1 V1.2 V2.0——这些是指蓝牙的技术版本,是指通过蓝牙传输的速度,他们是否支持A2DP具体要看蓝牙产品制造商是否使用这个技术 代码介绍 代码结构如下...: 向系统发送请求,开启蓝牙,该过程会请求用户同意开启蓝牙 Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); 接下来开启蓝牙扫描

    3K00

    Android蓝牙开发教程(一)——搜索蓝牙设备

    Android蓝牙功能的开发一直是很多新手头疼的问题,网上虽然也有很多教程贴,但大多都写得不全面,不能让我们真正掌握蓝牙开发的基本知识。...本教程主要讲解搜索蓝牙设备、蓝牙设备之间的连接和蓝牙之间的通讯三个主要模块。掌握了这三个,基本就能进行简单的蓝牙开发了。 先上效果图 界面比较简单。主要有三个按钮,两个文本和一个列表。...开启蓝牙后,需要设置蓝牙为可发现状态,让其他设备能够搜索到。...i.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300); 搜索蓝牙设备 成功开启蓝牙设备后,调用蓝牙适配器的startDiscovery...方法就可以搜索附近可连接的蓝牙设备。

    5.9K40

    linux连接蓝牙键盘_双系统蓝牙键盘切换

    1.Ubuntu和Windows双系统蓝牙键盘配对——2014 2.Ubuntu和Windows双系统蓝牙设备共享配对——2018 3.WIN10和Ubuntu共享蓝牙4.0连接配对,鼠标键盘等,罗技M720...a.搜索蓝牙,添加蓝牙设备。...我的电脑自带蓝牙服务,上面三篇文章都有介绍在命令行删除和安装蓝牙的步骤,如果有需要可以参考(个人感觉是没必要删除重新安装的)。...但是我们一般不知道电脑蓝牙地址,可以直接打开到Bluetooth文件夹后输入ls,便可看到电脑的蓝牙地址。...5.重启蓝牙服务或重启系统 使修改生效的方法有三种: a.重启电脑; b.在终端输入service bluetooth restart; c.点击右上角蓝牙图标,关闭蓝牙

    10.7K30

    蓝牙BLE技术

    蓝牙BLE组成 BLE由三个主要构建模块组成:应用程序、主机和控制器。顾名思义,应用程序块是与蓝牙协议栈交互的用户应用程序。主机覆盖蓝牙协议栈的上层。控制器覆盖下层。...此配置的典型示例包括大多数智能手机,平板电脑和个人计算机,其中主机(和应用程序)运行在主CPU,而控制器位于通过UART或USB连接的单独硬件芯片中。...属性协议(ATT) 属性协议(ATT)是基于设备呈现的属性的简单客户端/服务器协议。客户端从服务器请求数据,然后服务器将数据发送给它的客户端。...客户端发送适当的写入或读取请求,服务器根据它们进行响应。 当客户端想要从服务器读取或写入属性值时,它会使用句柄向服务器发送读取或写入请求。然后,服务器使用属性值或确认响应进行响应。...通过ATT执行的操作集如下:错误处理,服务器配置,查找信息,读取操作,写入操作,排队写入,服务器启动 通用属性配置文件(GATT) 关贸总协定是ATT的基础。

    2.3K20

    闲叙蓝牙

    也就是说host只能有一个,但是controller可以有多个 而蓝牙的controller控制器共有三种: BR/EDR controller:在蓝牙芯片中只能作为主控制器 LE controller...那么根据控制器的类型以及组合规则可以看到,蓝牙核心系统有以下几种组合情况。 ? 从图片中可以看到共有七大类,那么平常所说的蓝牙属于传统蓝牙还是ble蓝牙是什么意思呢?...这说的就是蓝牙的规格,而蓝牙规格也是由主控制器PrimaryController决定的。从图中可以看出蓝牙主控制器共有三种选择,所以也就决定了蓝牙的核心规格有三种。...主控制器为BR/EDR Controller:那么蓝牙核心规格就是单模蓝牙模块,也就是我们经常说的传统蓝牙模块 主控制器为LE Controller:那么蓝牙核心规格也是单模蓝牙模块,是我们经常说的BLE...蓝牙模块 主控制器为BR/EDR和LE Controller结合成的controller:那么蓝牙核心规格就是双模蓝牙模块,是既支持传统蓝牙功能又支持BLE低功耗蓝牙功能

    77600

    BLE低功耗蓝牙与经典蓝牙(持续更新)

    低功耗蓝牙是不能兼容经典蓝牙的,需要兼容,只能选择双模蓝牙。一个蓝牙主端设备,可同时与7个蓝牙从端设备进行通讯。...(每次最大传输20bit字节) 经典蓝牙(BT):经典蓝牙,泛指蓝牙4.0以下的都是经典蓝牙,你还怀念通过蓝牙让音箱播放手机的音乐么?经典蓝牙常用在语音、音乐等较高数据量传输的应用场景上。...经典蓝牙模块可再细分为:传统蓝牙模块和高速蓝牙模块。 传统蓝牙模块在2004年推出,主要代表是支持蓝牙2.1协议的模块,在智能手机爆发的时期得到广泛支持。...高速蓝牙模块在2009年推出,速率提高到约24Mbps,是传统蓝牙模块的八倍。...蓝牙堆栈可提供实现蓝牙低功耗 (BLE) 的功能,在 Android 8.0 中,原生蓝牙堆栈完全符合蓝牙 5.0 的要求。

    8.6K11
    领券