首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    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

    5.3K20编辑于 2022-09-07
  • 来自专栏代码男人

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

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

    5.6K20发布于 2019-01-10
  • 来自专栏JETSON NANO AI

    nRF5x系列蓝牙模块DFU升级服务移植 -- 5 boot修改

    在对boot进行修改时,请先掌握以下内容: 《nRF5x系列蓝牙模块DFU升级服务移植 -- 1 工具安装》 《nRF5x系列蓝牙模块DFU升级服务移植 -- 2 文件生成》 《nRF5x系列蓝牙模块DFU 升级服务移植 -- 3 烧写升级》 《nRF5x系列蓝牙模块DFU升级服务移植 -- 4 应用移植》 由于车位锁项目中使用自制底板,和标准开发板存在差异,所以需要按照以下步骤对bootloader程序进行修改 = 0x3;     m_enc_advdata[4] = BLE_GAP_AD_TYPE_16BIT_SERVICE_UUID_MORE_AVAILABLE;     m_enc_advdata[5] 5.2.2  宏的声明 在Keil工程设置选项下的C/C++选项下的Define中删除CONFIG_GPIO_AS_PINRESET宏定义,如下图所示: image.png 操作完成后,按照《nRF5x 系列蓝牙模块DFU升级服务移植 -- 2 文件生成》、《nRF5x系列蓝牙模块DFU升级服务移植 -- 3 烧写升级》编译生成引导hex文件。

    1.2K31发布于 2020-07-02
  • 来自专栏全栈程序员必看

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

    蓝牙协议分析(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技术  经典蓝牙是正宗的蓝牙技术。  

    9.1K12编辑于 2022-07-25
  • 来自专栏FreeBuf

    Sniffle: 蓝牙5和4.x LE嗅探器

    Sniffle是一个基于使用TI CC1352/CC26x2硬件的蓝牙5和4.x LE嗅探器。 Sniffle具有许多有用的功能,包括: 支持BT5/4.2扩展长度广播和数据包 支持BT5 Channel选择算法#1 和 #2 支持所有BT5 PHY模式(常规1M,2M和编码模式) 支持仅嗅探广播和忽略连接 支持channel map,连接参数和PHY更改操作 支持通过MAC地址和RSSI进行广播过滤 支持BT5扩展广播(非定期) 支持使用单个嗅探器在所有三个主广播信道上从目标MAC捕获广播。 要在Bluetooth 5扩展广告中启用以下辅助指针,请启用-e选项。为了提高扩展广播捕获的性能和可靠性,即使设置了MAC过滤器,此选项也可以在主广播信道上禁用跳频。 /sniff_receiver.py -m top -r -40 -o data2.pcap 嗅探来自附近(RSSI> = -55)设备的BT5扩展广播和连接。 .

    2.3K10发布于 2019-11-28
  • 来自专栏知识分享

    HTML5中调用手机蓝牙功能方案讨论

    对象来请求访问并控制蓝牙设备。 这些插件可以在应用的原生层实现蓝牙功能,并通过JavaScript API暴露给开发者。例如,在Cordova中,你可以使用cordova-plugin-ble-central插件来访问蓝牙设备。 方案三:使用WebUSB API(对于USB蓝牙适配器):如果你的设备是通过USB蓝牙适配器连接到手机的,并且你的浏览器支持WebUSB API,你可以尝试使用WebUSB API来访问这个适配器。 但请注意,WebUSB API主要用于访问USB设备,而不是直接访问蓝牙设备。方案四:使用原生应用作为中介:如果你不能直接在网页上实现蓝牙通信,你可以考虑开发一个原生应用作为中介。 方案六:有些第三方服务可能提供了在网页上访问蓝牙设备的功能。这些服务通常是通过一个中间服务器来实现的,你的网页与这个服务器通信,服务器再与用户的蓝牙设备通信。

    3.8K10编辑于 2024-08-02
  • 来自专栏代码男人

    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.蓝牙通信发送文件

    3K20发布于 2019-01-10
  • 来自专栏全栈程序员必看

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

    最近在做蓝牙开发,刚接触时傻傻的分不清经典蓝牙和低功耗蓝牙的区别,一直用开发低功耗蓝牙的方法去连接经典蓝牙设备,最后当然是一直连接不上了。在此记录下经典蓝牙和低功耗蓝牙的区别和联系。 Android中的蓝牙 说到Android中的蓝牙,大家听到的可能有蓝牙1.0、蓝牙2.0、蓝牙3.0、蓝牙4.0之类的以数字结尾的蓝牙版本号,而实际上,在最新的标准中,已经不再使用数字版本号作为蓝牙版本的区分了 如表中所述,现在的蓝牙实际上分为了三类:单模、双模和经典。那么,最官方的蓝牙版本称呼就是,单模蓝牙、双模蓝牙和经典蓝牙。 在这其中,最前沿的当属单模蓝牙了,也就是低功耗蓝牙。 这个蓝牙标准和经典蓝牙区别极大,在最初甚至考虑过加入WIFI阵营,但是因为蓝牙阵营这边条件较为优厚(比如授权费用极低)才并入了蓝牙标准。 那么,低功耗蓝牙和经典蓝牙的区别究竟在哪里呢? 直线距离约50米,一节5号电池能用一年,传输模组成本10块钱,远比WIFI、4G等大数据量的通信协议更实用。

    6.8K21编辑于 2022-07-05
  • 来自专栏Android开发者家园

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

    低功耗蓝牙官方文档 本文章是参考官网,然后加入自己实践中的理解完成!没有看上一篇的读者,可以先阅读一下前一篇,这是一个系列。 (API 18 )引入了低功耗蓝牙,应用可以查询周围设备、查询设备的服务、传输信息。 目前所有低功耗应用配置文件基本都是基于 GATT Bluetooth SIG (蓝牙技术联盟) 是为低功耗设备定义了许多配置文件。配置文件是设备在特定应用程序中的工作方式的规范。 确定了两个设备建立连接后如何进行相互通信 BLE 权限 应用在使用蓝牙设备的时候必须要声明蓝牙权限 BLUETOOTH 需要这个权限才可以进行蓝牙通信,例如:请求连接、接受连接、和传输数据。 如果还需要发现或者操作蓝牙设置,则需要声明 BLUETOOTH_ADMIN 权限。使用这个权限的前提是要有 BLUETOOTH 权限。

    3.5K10发布于 2019-12-26
  • 来自专栏caoqi95的记录日志

    Arduino 入门项目系列 (5) - Android 手机通过蓝牙语音控制 LED

    今天还是继续学习蓝牙模块的使用。实现通过蓝牙模块,在手机端语音控制 LED 的功能。这种思路后续再扩宽的话,加上动手能力强的话,完全自己搭建智能家居系统。 本文章主要参考的是这篇:Android 通过蓝牙语音控制 Arduino,非常感谢作者的教程! 设置蓝牙 本人使用的蓝牙模块是 HC-05,由实验室的小伙伴友情提供。 设置蓝牙为任意设备连接模式 AT+PSWD=1234 # 设置蓝牙匹配密码为1234 硬件准备 Arduino UNO 一个 蓝牙模块 HC-05 一个 红色和黄色 LED 各一个 Android :VCC ——> 5V,GND ——> GND,RXD ——> TXD,TXD ——> RXD,这里需要注意蓝牙的 RXD 要与 Arduino 的 TXD 连接,TXD 要与 Arduino 的 RXD Android 通过蓝牙语音控制 Arduino [2]. Arduino使用HC05蓝牙模块与手机连接

    3.3K50发布于 2019-03-28
  • 来自专栏全栈程序员必看

    Android 蓝牙开发(一)蓝牙通信「建议收藏」

    1 蓝牙基本操作 随着可穿戴设备的流行,研究蓝牙是必不可少的一门技术了。 总结了下蓝牙开发使用的一些东西分享一下。 蓝牙权限 首先需要AndroidManifest.xml文件中添加操作蓝牙的权限。 // mBluetoothAdapter.enable(); } 获取本地蓝牙信息 //获取本机蓝牙名称 String name = mBluetoothAdapter.getName(); //获取本机蓝牙地址 该demo中是连接指定名称的蓝牙设备,BLUETOOTH_NAME为”Galaxy Nexus“,如果扫描不到,记得改这个蓝牙名称。 先扫描周围的蓝牙设备,如果扫描到指定设备则进行连接。

    6.8K52编辑于 2022-09-14
  • 来自专栏编程思想之路

    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); 接下来开启蓝牙扫描

    3.9K00发布于 2019-07-11
  • 来自专栏Android开发者家园

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

    第一篇文章 Android 蓝牙开发(1) 主要是介绍了普通的蓝牙在 Android 开发中的运用。 第二篇文章 Android 蓝牙开发(2) 主要是介绍了低功耗蓝牙的开发。 这篇文章主要介绍的是蓝牙的历史和一些关于蓝牙的通用知识,还有广播包的知识。要想彻底了解蓝牙开发,这些基础的知识也是需要的,就像网络协议一样,这些都是基础的内容。 蓝牙的发展历史 蓝牙技术最初是由爱立信创制的。技术始于爱立信公司 1994 方案,它是研究在移动电话和其他配件间进行低功耗、低成本无线通信连接的方法。 1998 年 5 月 20 日,索尼以立信、国际商业机器、英特尔、诺基亚及东芝公司等业界龙头创立“特别兴趣小组”(Special Interest Group SIG),即蓝牙技术联盟的前身,目标是开发一个成本低 蓝牙其实就是一种近距离无线通信技术。 ? 蓝牙历史版本.png 低功耗蓝牙 BLE 全称是 Bluetooth Low Energy 简称 BLE 。

    3.4K10发布于 2019-12-26
  • 来自专栏李蔚蓬的专栏

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

    连接设备 蓝牙通讯机制建立在socket上; 要在两台设备上创建连接,需要实现服务器端和客户端机制 一般通讯过程: 在服务端等待客户端的连接请求, 有连接请求后连接, 连接成功后有一个socket 服务器设备和客户端设备分别获得需要的BluetoothSocket; 上面说过, 要在两台设备上创建连接, 需要实现服务器端和客户端机制, 其中有一台需要开放服务端的套接字, 另外一台作为客户端, 需要通过蓝牙的 除非要接受更多连接,否则调用close()结束该次通信; 设置客户端 发起与远程设备(保持开放的服务器套接字的设备)的连接; 首先要获取表示该远程设备的BluetoothDevice对象, 这个对象是通过蓝牙

    2.9K20发布于 2019-05-19
  • 来自专栏移动开发专栏

    Android 蓝牙开发,蓝牙连打印机。

    目录 效果: 开发环境 涉及知识点 集成配置 蓝牙连接 蓝牙打印 GitHub 效果: 特别声明:较之前的版本有很大的调整,之前的版本是未适配8.0的,现在是适配了的,接入方式也不一样,包括代码逻辑都有调整 基本大的流程分为两部分,一是蓝牙连接,二是打印,下面开始一一介绍。 蓝牙连接 分为几个小步骤 1.因为蓝牙涉及到隐私权限,所以先检查、请求权限 private void checkPermission() { for (String permission 、是否开启,显示已配对和未配对的蓝牙设备列表 /** * 初始化蓝牙 */ private void initBluetooth() { // 获取蓝牙适配器 setResult(Activity.RESULT_OK, intent); finish(); } } }; 5.

    3.9K20编辑于 2022-06-10
  • 来自专栏全栈程序员必看

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

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

    8.2K40编辑于 2022-09-13
  • 来自专栏全栈程序员必看

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

    1.Ubuntu和Windows双系统蓝牙键盘配对——2014 2.Ubuntu和Windows双系统蓝牙设备共享配对——2018 3.WIN10和Ubuntu共享蓝牙4.0连接配对,鼠标键盘等,罗技M720 a.搜索蓝牙,添加蓝牙设备。 c.记录蓝牙键盘的地址 连接好蓝牙后,可以看到键盘的地址(图中的34:88:5D:A1:29:B7)。记住这个地址,后面需要用到。 但是我们一般不知道电脑蓝牙地址,可以直接打开到Bluetooth文件夹后输入ls,便可看到电脑的蓝牙地址。 5.重启蓝牙服务或重启系统 使修改生效的方法有三种: a.重启电脑; b.在终端输入service bluetooth restart; c.点击右上角蓝牙图标,关闭蓝牙

    13.2K30编辑于 2022-11-19
  • 来自专栏全栈程序员必看

    微信小程序蓝牙通讯蓝牙模块demo

    公司项目用到蓝牙和硬件通讯,APP正在开发,弄一个微信小程序蓝牙通讯的demo,可能后期会有微信蓝牙的项目,第一次搞,遇到2个坑: 1.安卓和苹果获取的硬件服务UUID顺序不同 2.目前用的这一版 “启用低功耗蓝牙设备特征值变化时的 </button> <button type="primary" class="button" bindtap="lanya2">2本机蓝牙适配状态</button> <button type= button" bindtap="lanya4">4获取设备后在列表中连接</button> <button type="primary" class="button" bindtap="lanya<em>5</em>" >5停止搜索周边设备</button> <button type="primary" class="button" bindtap="lanya6">6获取连接设备所有service</button , }) }) } }) }, //停止搜索周边设备 lanya5:

    4.5K20编辑于 2022-08-15
  • 【消息序列】详解(5):深入探究蓝牙节能技术--SNIFF与HOLD模式

    这两种模式的应用,不仅提高了蓝牙设备的节能性能,还使其能够更灵活地适应不同的应用场景。通过合理选择和配置这两种模式,蓝牙设备可以在保证连接稳定性的同时,实现更高效的能耗管理。 一、概述 1.1. 模式切换:蓝牙控制器接收到命令后,将设备从Sniff模式切换回正常的通信模式。 例如,以蓝牙耳机与手机的蓝牙连接为例。 这些操作码可以在蓝牙核心规范中找到。 连接句柄:connection_handle是蓝牙连接的唯一标识符,需要根据实际连接情况设置。 Sniff模式是蓝牙技术中一种重要的节能模式。 保持模式:更适合于那些在一段时间内不需要进行数据传输,但又需要快速响应主设备唤醒操作的设备,如蓝牙鼠标、蓝牙手环等具有间歇性操作特点的设备。

    47321编辑于 2026-01-20
  • 来自专栏木溪知识加油站

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

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

    10.3K11发布于 2020-03-20
领券