Skip to content

shuiYe-704265085/BluetoothCS

This branch is up to date with MickJson/BluetoothCS:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
几圈年轮
Sep 9, 2020
4fdf136 · Sep 9, 2020

History

4 Commits
Sep 9, 2020
Aug 12, 2020
Sep 9, 2020
Aug 12, 2020
Sep 9, 2020
Sep 9, 2020
Aug 12, 2020
Aug 12, 2020
Aug 12, 2020
Aug 12, 2020

Repository files navigation

BluetoothCS

经典蓝牙(Classic Bluetooth)

经典蓝牙适用于电池使用强度较大的操作,例如Android之间流式传输和通信等(音频/文件等大数据)。 从Android 4.3(API 18)才有API支持低功耗蓝牙(BLE)。

经典蓝牙API如下:

android.bluetooth

.BluetoothA2dp 音频分发配置文件,高质量音频通过蓝牙连接和流式传输

.BluetoothAdapter 本地蓝牙适配器,是所有蓝牙交互的入口,发现设备,查询配对设备,创建BluetoothServerSocket侦听其他设备

.BluetoothAssignedNumbers

.BluetoothClass 描述蓝牙设备的一般特征和功能,这是一组只读属性,设备类型提示

.BluetoothDevice 远程蓝牙设备,与某个远程设备建立连接,查询设备信息,名称,地址,类和配对状态

.BluetoothHeadset 提供蓝牙耳机支持,以便与手机配合使用,蓝牙耳机和免提配置文件

.BluetoothHealth 控制蓝牙服务的健康设备配置文件代理

.BluetoothHealthAppConfiguration 第三方蓝牙健康应用注册的应用配置,以便与远程蓝牙健康设备通信

.BluetoothHealthCallback 实现 BluetoothHealth 回调的抽象类

.BluetoothManager

.BluetoothProfile 蓝牙配置文件,蓝牙通信的无线接口规范

.BluetoothServerSocket 服务端监听,连接RFCOMM通道(类似TCP ServerSocket)

.BluetoothSocket 建立RFCOMM通道,蓝牙Socket接口(类似TCP Socket),通过InputStream和OutputStream与其他设备传输数据

Android经典蓝牙的开发步骤如下:

扫描其他蓝牙设备

查询本地蓝牙适配器的配对蓝牙设备

建立 RFCOMM 通道 (SPP协议)

通过服务发现连接到其他设备

与其他设备进行双向数据传输

管理多个连接

RFCOMM是蓝牙简单传输协议, 在两个蓝牙设备间的一条物理链上提供多个模拟串口进行传输数据, 可同时保持高达60路的通信连接。

SPP(Serial Port Profile)是通过蓝牙设备之间的串口进行数据传输协议,spp协议处于RFCOMM上层, 如果能使用RFCOMM传输数据,就不需要使用SPP(省去一些流程,速度更快),但还是推荐用SPP,兼容性有保证

博客地址:

Android蓝牙开发(一)蓝牙模块及核心API

Android蓝牙开发(二)经典蓝牙消息传输实现

About

Android 蓝牙消息传输实现

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%