App及小程序蓝牙开发的几个重要步骤
不管是基于IOS还是Android或者是小程序 蓝牙开发的过程都包含下面几个重要的步骤1.搜索设备设备搜索是一个扫描程序它会搜索本地附近启用了蓝牙的设备并从这些设备上获取一些信息这个过程有时简称为“发现中”、“查询中”或者“扫描中”。然而在本地区域范围内的蓝牙设备只有在它是允许被发现的模式下才会响应其它设备扫描发现的请求。如果一个设备是可被发现的状态模式它会通过共享一些信息来响应搜索发现的请求例如设备名字设备类型和它的MAC地址。使用这些信息执行扫描的设备才能创建一个连接连接上被发现的设备。a.获取适配器mBluetoothAdapter BluetoothAdapter.getDefaultAdapter();b.打开适配器Intent enableIntent new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);startActivityForResult(enableIntent, REQUEST_ENABLE_BT);c.搜索蓝牙设备获取已配对设备SetBluetoothDevice pairedDevices mBtAdapter.getBondedDevices();搜索周边设备mBtAdapter.startDiscovery();BluetoothDevice.ACTION_FOUND找到一个BluetoothAdapter.ACTION_DISCOVERY_FINISHED搜索结束。2.连接到蓝牙ConnectThread:服务端设备和客户端设备获取BluetoothSocket的方法不同。服务端设备将会在接受一个传入的连接请求时获得。客户端设备会在它打开与服务端设备的RFCOMM通道时获得。一种解决方案是自动将每一台设备作为服务端这样每一台设备都拥有一个server socket可以监听连接。之后每一台设备都可以启动一个与其它设备的连接并变成客户端设备。另外也可以明确一台设备作为服务端根据需要启动一个server socket其它设备只要简单的建立连接。a.根据地址获取设备BluetoothDevice device mBluetoothAdapter.getRemoteDevice(address)b.获取设备soceket:device.createRfcommSocketToServiceRecord(MY_UUID_SECURE);c.取消扫描设备连接soceket:端口mAdapter.cancelDiscovery();mmSocket.connect();3.数据信息交互ConnectedThread首先你需要为所有数据流的读写操作分派一个特定的线程。这是非常重要的因为read(byte[])和write(byte[])方法都是会阻塞的方法。read(byte[])方法在从数据流中读取到数据之前会一直阻塞。write(byte[])方法不会经常阻塞但是在远程设备没有及时调用read(byte[])方法并且中间缓冲区满的时候也会进行阻塞。因此你的线程中的主循环应该专门用来从InputStream中读取数据。线程中再指定一个公共方法将数据写入到OutputStream中。a.获取读写流tmpIn socket.getInputStream();tmpOut socket.getOutputStream();b.阻塞方法读取bytes mmInStream.read(buffer);c.发送消息mmOutStream.write(buffer);d.通过handler将文本添加到listview成为新的消息mConversationArrayAdapter.add(\\\\\\\Me: \\\\\\\ writeMessage);

相关新闻

AI项目从入门到上线23-代码一推送就自动训练模型?GitHub Actions + ML训练流水线

AI项目从入门到上线23-代码一推送就自动训练模型?GitHub Actions + ML训练流水线

你写完三行Python训练脚本,手动开GPU服务器,手动配环境,手动跑——跑完发现忘了记录超参数。你的"自动化"就是把手动改成双手操作。今天这篇,教你用GitHub Actions让每次git push自动触发训练、自动记录结果、自动发告警…

2026/7/29 22:43:34 阅读更多 →
解析房产中介APP开发的主要功能以优势

解析房产中介APP开发的主要功能以优势

在当下这移动互联网的时代,房产中介商应该如何实现转型,从而获得更大的用户群体呢?答案只有一个,那必须开发出自己专属的APP!因为现在互联网的趋势已经逐渐向移动端靠拢,大部分的流量都被APP锁占据&#xf…

2026/7/29 22:43:34 阅读更多 →
lx-music-custom-source配置文件详解:3分钟搞定本地缓存与音质优化

lx-music-custom-source配置文件详解:3分钟搞定本地缓存与音质优化

lx-music-custom-source配置文件详解:3分钟搞定本地缓存与音质优化 【免费下载链接】lx-source lx-music-custom-source 洛雪音乐自定义解析源 项目地址: https://gitcode.com/gh_mirrors/lx/lx-source lx-music-custom-source(洛雪音乐自定义解析…

2026/7/29 22:43:34 阅读更多 →

最新新闻

零基础教程:3步掌握WorkshopDL,解锁千款Steam游戏模组自由下载

零基础教程:3步掌握WorkshopDL,解锁千款Steam游戏模组自由下载

零基础教程:3步掌握WorkshopDL,解锁千款Steam游戏模组自由下载 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL WorkshopDL是一款革命性的Steam创意工坊下…

2026/7/29 23:12:53 阅读更多 →
3 个被忽略的合同到期漏洞,正让企业被动违约

3 个被忽略的合同到期漏洞,正让企业被动违约

合同到期为什么总被忘 多数企业的合同管理都止步于签完归档,到期之后谁来盯、怎么续,往往没有固定动作。合作一旦进入平稳期,没人会天天翻合同看截止日,等发现要续签时,对方可能已经按原条件继续履约,也可…

2026/7/29 23:12:53 阅读更多 →
mdx-util源码解析:探索MDX工具链的实现原理与架构设计

mdx-util源码解析:探索MDX工具链的实现原理与架构设计

mdx-util源码解析:探索MDX工具链的实现原理与架构设计 【免费下载链接】mdx-util Utilities for working with MDX 项目地址: https://gitcode.com/gh_mirrors/md/mdx-util mdx-util是GitHub加速计划中的一个MDX工具集项目,提供了一系列用于处理M…

2026/7/29 23:12:53 阅读更多 →
远程构建内核从未如此简单:virtme-ng跨主机编译教程

远程构建内核从未如此简单:virtme-ng跨主机编译教程

远程构建内核从未如此简单:virtme-ng跨主机编译教程 【免费下载链接】virtme-ng Quickly build and run kernels inside a virtualized snapshot of your live system 项目地址: https://gitcode.com/gh_mirrors/vi/virtme-ng 在Linux内核开发过程中&#xf…

2026/7/29 23:12:53 阅读更多 →
ArkTS 进阶之道(15):@BuilderParam 组件参数化边界——为啥 @Builder 能当参数传

ArkTS 进阶之道(15):@BuilderParam 组件参数化边界——为啥 @Builder 能当参数传

ArkTS 进阶之道(15):BuilderParam 组件参数化边界——为啥 Builder 能当参数传本文是「ArkTS 进阶之道」系列第 15 篇,续「ArkUI 组件设计」阶段。上一篇讲 Builder 绑渲染树节点复用(篇 63)——Builder 绑…

2026/7/29 23:12:53 阅读更多 →
RimWorld模组管理终极指南:RimSort让你的游戏体验飞升[特殊字符]

RimWorld模组管理终极指南:RimSort让你的游戏体验飞升[特殊字符]

RimWorld模组管理终极指南:RimSort让你的游戏体验飞升🚀 【免费下载链接】RimSort RimSort is an open source mod manager for the video game RimWorld. There is support for Linux, Mac, and Windows, built from the ground up to be a reliable, c…

2026/7/29 23:11:53 阅读更多 →

日新闻

【RT-DETR多模态创新改进】CVPR 2025 | 独家特征融合创新改进篇 | 引入RLAB残差线性注意力模块,有效融合并强调多尺度特征,多种改进点,适合红外与可见光融合目标检测任务,有效涨点

【RT-DETR多模态创新改进】CVPR 2025 | 独家特征融合创新改进篇 | 引入RLAB残差线性注意力模块,有效融合并强调多尺度特征,多种改进点,适合红外与可见光融合目标检测任务,有效涨点

一、本文介绍 🔥本文在RT-DETR多模态融合目标检测中引入RLAB残差线性注意力模块,可在不同模态特征交互阶段进行多次残差细化,使可见光、红外等特征在尺度、语义和空间位置上更好对齐;随后将细化特征与解码器输出拼接并生成Q、K、V,通过线性注意力自适应强化关键通道、目…

2026/7/29 0:00:23 阅读更多 →
AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础

AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础

AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础 在上一期「AI编程系列」中,我们学习了如何构建一个基础的 AI 问答系统,通过简单的输入输出让模型回应问题。但现实世界中的 AI 应用往往需要处理更复杂的场景:…

2026/7/29 0:00:23 阅读更多 →
AI智能体开发实战:从工具调用到企业级部署

AI智能体开发实战:从工具调用到企业级部署

1. 从被动问答到主动执行:AI Agent的范式转变过去两年,大语言模型最显著的应用形态是聊天机器人——用户提问,AI回答。但真正的生产力革命发生在2023年下半年:当AI学会主动调用工具完成任务时,生产力工具的历史被彻底改…

2026/7/29 0:00:23 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/29 22:18:20 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/29 15:00:03 阅读更多 →

月新闻