这个项目是什么

TPBluetooth 是一个用 Java 写的 Android 蓝牙 SDK,目标是把传统蓝牙(Classic)和低功耗蓝牙(BLE)放进同一套封装里处理。它不是只做"连上设备读数据"的客户端工具,按 README 的说法,两种模式都可以作为客户端或服务端来读写数据。

对于需要在两台 Android 设备之间直接传数据,或者让手机充当外设的场景,这类封装能省掉不少重复的蓝牙协议代码:扫描、配对、建立连接、收发数据,每一步单独写都不复杂,拼在一起却很容易乱。

能力范围

README 里明确提到的几点:

  • 支持 Classic 传统蓝牙与 BLE 低功耗蓝牙;
  • 既可以作为客户端读写数据,也可以作为服务端读写数据;
  • 传统蓝牙的服务端支持一对多,也就是一个服务端同时对接多个客户端。

最后一点是它和多数只做点对点连接的蓝牙封装不太一样的地方。一对多意味着服务端要为每条连接单独维护状态,收到数据时也要能区分来源,再决定回给谁。这部分逻辑通常比客户端复杂得多。

当前状态

README 写得很直接:目前还在开发,待完成。所以它更适合当作学习蓝牙连接流程的参考,或者在你愿意跟进代码变化的前提下使用。如果要用在正式项目里,建议先通读一遍源码,确认自己需要的功能是否已经实现,再决定是否接入。

使用方法

README 没有给出示例代码,也没有接入文档,所以这里没法贴出可靠的调用片段。想上手的话,可以从源码里的入口类看起,按 Classic / BLE、客户端 / 服务端这四种组合分别对照,理清各自的连接和数据读写流程。

仓库地址:tpnet/TPBluetooth