Android开发指南


概览

OP-BTS/OP-BT 蓝牙光电头支持蓝牙5.0 BLE/SPP 双模,支持Windows、Android、iOS等平台。然而,在不同平台下,连接方式会有所不同。对于新用户来说,可能会感到很疑惑。

Windows

如果您已经有读表专用程序,且已经使用过USB(如OP-USB)光电头读表。那么, 您只需成功完成蓝牙配对,并给新配对的OP-BTS指定一个虚拟串口,然后在您的应用程序中选择对应的串口,即可正常使用。

iOS/Android 等掌上设备操作系统

如果您打算使用Android/iOS下的读表应用程序,那么事情可能没那么简单。由于iOS/Android 没有类似Windows上的虚拟串口,导致 iOS/Android 上通过有线USB串口连接读表光电头的软件无法给蓝牙光电头指定一个虚拟串口。

要想解决这个问题,必须修改您的读表应用程序,通过蓝牙专用API连接方式才能成功连接上 OP-BTS/BT 蓝牙光电头。

两种蓝牙连接类型:

  • 蓝牙经典(BR/EDR):也就是常说的SPP(Serial Port Profile)方式,适用于Windows和Android平台。使用SPP蓝牙,您需要输入配对码来跟设备配对。
  • 低功耗蓝牙(BLE):使用GATT协议进行特征(Characteristic)的读写、订阅通知等,适用于Windows、Android和iOS平台。往往在应用程序中直接选取设备,不需要配对。

最新版本的Android系统同时支持SPP和BLE。然而,iOS系统只支持BLE方式的蓝牙连接。因此,为了减少开发工作量以及兼容性的考虑,我们建议使用BLE方式进行配对、连接和通讯。

BLE开发准备工作

硬件环境

  • 智能手机(Android或iOS设备)
  • 开发用电脑(Windows/Mac)
  • OP-BTS 或 OP-BT蓝牙光电头
  • 测试用设备(如电表、水表等)

软件环境

  • 开发环境:Android Studio、Xcode
  • 开发框架:为了加少重复的开发工作量,我们推荐使用Flutter,一次开发,同时兼容Android 和 iOS。
  • 开发语言
    • Dart(Flutter)
    • Java/Kotlin(Android原生)
    • Swift(iOS原生)
  • SDK配置:Flutter SDK、Android SDK、iOS SDK

技术要求

想要完成整个应用程序的开发工作,您应当具备以下技术能力:

  • 基本的移动应用开发知识
  • 蓝牙通信基础概念
  • 异步编程和UI交互设计能力

开发步骤

  1. 创建项目
  2. 添加蓝牙功能
    • 添加蓝牙权限
    • 实现设备扫描
    • 实现设备连接
    • 实现数据收发
  3. 业务功能开发
    • 实现读表功能
    • 数据解析与显示
    • 用户界面优化
  4. 测试与调试
    • 连接稳定性测试
    • 数据准确性验证
    • 不同设备兼容性测试

开发文档(即将到来)

  • 技术文档
    • 详细的通信协议文档
    • 蓝牙服务和特征值说明
    • 常见问题解答
  • 示例代码
    • Flutter示例项目
    • 关键功能实现参考

除此以外,我们还会为您的开发工作提供技术支持:

  • 开发环境搭建指导
  • 蓝牙连接问题排查
  • 代码实现问题的咨询

常见问题

  • iOS和Android的开发区别:iOS只支持BLE,权限处理和API调用方式与Android有所不同
  • 蓝牙连接稳定性:提供断线重连、超时处理等解决方案
  • 数据传输效率:BLE传输速率有限,需要合理设计数据包格式和传输策略
  • 电量消耗:提供低功耗设计建议,延长设备使用时间

联系我们

如有更多技术问题或需要支持,请通过以下方式联系我们: