安卓Ble低功耗蓝牙快速开发框架H-ble

H-Ble是一款适用于Android4.3及以上版本的蓝牙低功耗(BLE)快速开发框架。它通过简单的接口提供了搜索、连接、数据收发等功能,并且支持回调机制,简化了BLE开发流程。

转载请注明出处

http://blog.csdn.net/hansion3333/article/details/60741662
本文出自Hansion的博客

H-Ble

H-Ble是用于Android 4.3以上手机和BLE模块之间的连接与互发数据的快速开发框架

它基于回调,暴露搜索、连接、发送、接收、断开连接等接口,无需关心细节操作即可进行Ble通信

API

具体使用请参考Github中本项目提供的例子

获取BleController实例并进行初始化(初始化只需执行一次)

  • BleController.getInstance().init(this);

搜索设备,获取设备列表

  • BleController.getInstance().scanBle(int time,ScanCallback scanCallbak);

连接设备

  • BleController.getInstance().connect(int time,String deviceAdress,ConnectCallback connectCallback);

发送数据

  • BleController.getInstance().writeBuffer(byte[] buf,OnWriteCallback onWriteCallback);

注册接收数据的监听

  • BleController.getInstance().registReciveListener(String requestKey,OnReceiverCallback onReceiveCallback);

注销接收数据的监听

  • BleController.getInstance().unregistReciveListener(String requestKey);

断开连接

  • BleController.getInstance().closeBleConn();

必备操作

添加权限

<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

定位权限必须添加,否则Android 6.0以上的手机搜索不到设备

可以动态获取权限

指定UUID

  • 打开BleController.class
  • 修改以下成员变量的值为自己所要通信的BLE模块对应的UUID

    private static final String BLUETOOTH_S = "0000fff0-0000-1000-8000-00805f9b34fb";
    private static final String BLUETOOTH_NOTIFY_C = "0000fff7-0000-1000-8000-00805f9b34fb";
    private static final String BLUETOOTH_WRITE_C = "0000fff6-0000-1000-8000-00805f9b34fb";
    

变量名最后一位字母:

S 代表service的UUID;

C 代表characteristic的UUID;

如果硬件没有提供UUID,可以 下载Ble调试助手 进行查看

Github地址

如果觉得不错,欢迎Star

本库并未将常用Ble手表、心率计等设备的UUID加入其中自动匹配。所以有此需求可以使用其他支持的库。

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值