flutter_spp_bluetooth_serial 0.1.5 copy "flutter_spp_bluetooth_serial: ^0.1.5" to clipboard
flutter_spp_bluetooth_serial: ^0.1.5 copied to clipboard

PlatformAndroid

Flutter basic implementation for Classical Bluetooth (only RFCOMM for now). Forked and republished as flutter_spp_bluetooth_serial.

项目:flutter_spp_bluetooth_serial #

  • Android 原生包名(package name):com.aiyin.flutterbluetoothserial
  • Flutter 包/项目名(pub 包名 / project name):flutter_spp_bluetooth_serial

本仓库为基于经典蓝牙(RFCOMM / Serial Port Profile)的 Flutter 插件示例与实现(当前仅支持 Android)。

内容概览

  • 功能:适配器状态、开关、系统蓝牙设置、设备发现、配对、列举已配对设备、与多个设备并发连接、发送/接收数据等。
  • 适用平台:Android(目前)。
  • 适用场景:与 Arduino HC-05、Raspberry Pi 等通过 RFCOMM 提供串口服务的设备互联。

重要提示

  • 本项目的 Android 原生包名为 com.aiyin.flutterbluetoothserial(在 android/build.gradleandroid/appandroid/src 下的配置中使用)。
  • Flutter 的包名 / 项目名(用于在 pubspec.yaml 中声明依赖)为 flutter_spp_bluetooth_serial

功能一览

  • 监测蓝牙适配器状态(已开启/已关闭)
  • 打开或关闭系统蓝牙适配器(受系统权限与政策限制)
  • 打开系统蓝牙设置页面
  • 扫描(发现)附近蓝牙设备,并可请求设备可被发现
  • 列出已绑定(配对)的设备并支持发起配对流程
  • 支持与多个设备同时建立连接
  • 支持发送与接收数据(基于 RFCOMM 串口)

使用说明(快速上手)

  1. 在你的 Flutter 项目的 pubspec.yaml 中添加依赖:
dependencies:
  flutter_spp_bluetooth_serial: any
  1. 安装依赖:
flutter pub get
  1. 在 Dart 代码中导入:
import 'package:flutter_spp_bluetooth_serial/flutter_bluetooth_serial.dart';

说明:上述导入假设主库导出文件名为 flutter_bluetooth_serial.dart。如果你的库导出文件名不同,请将路径中的文件名替换为正确的导出文件名。

  1. 简要使用流程(示例概要):
  • 使用类似 BluetoothConnection.toAddress(address) 建立连接(异步)。
  • 通过 connection.input 监听接收数据流,并在回调中处理收到的数据。
  • 使用 connection.output.add(bytes) 发送数据到远端设备。
  • 使用 connection.finish() 或关闭连接的方式结束会话。

示例说明

  • 请参考仓库中的 example/ 目录,其中包含一个示例应用,展示了设备发现、连接与简单的聊天交互界面(与 Arduino HC-05 等兼容的串口设备)。
  • 示例界面截图(仅演示用途):
主界面与选项 扫描与连接 简单聊天 后台连接

常见问题提示

  • Android 12+(以及更高)对蓝牙权限与后台访问有更严格的限制,运行前请确保已在 AndroidManifest.xml 中添加必要的权限声明并在运行时请求授权。
  • 部分设备对于并发 RFCOMM 连接数有限制(通常最多 7 个连接),实际可用连接数依设备而异。

开发与扩展(待办事项)

  • 提供更高层次的 BluetoothConnection 辅助工具,简化连接/重连逻辑。
  • 支持指定连接 UUID 或协议类型以兼容更多服务发现方案。
  • 增加监听/服务器模式(在设备上作为 RFCOMM server 接收连接)。
  • 识别并显示远端设备的 BluetoothClass 信息以提供更友好的设备描述。
  • 考虑与 flutter_blue 等生态系统的整合方案。

版权与许可证

请查阅仓库根目录中的 LICENSE 文件以获取许可证信息。

2
likes
130
points
119
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Flutter basic implementation for Classical Bluetooth (only RFCOMM for now). Forked and republished as flutter_spp_bluetooth_serial.

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flutter_spp_bluetooth_serial

Packages that implement flutter_spp_bluetooth_serial