Android低功耗蓝牙通讯

  • 第二个权限是允许程序发现和配对蓝牙设备。

  • 因为只有在API18(Android4.3)以上的手机才支持ble开发,所以还要声明一个feature。

<uses-feature

android:name=“android.hardware.bluetooth_le”

android:required=“true” />

  • required为true时,应用只能在支持BLE的Android设备上安装运行

  • required为false时,Android设备均可正常安装运行,需要在代码运行时判断设备是否支持BLE。

  • **注意:**还得写上定位权限,要不然有的机型扫描不到ble设备。

step2、获取蓝牙适配器

BluetoothManager mBluetoothManager =(BluetoothManager)context.getSystemService(Context.BLUETOOTH_SERVICE);

BluetoothAdapter mBluetoothAdapter = mBluetoothManager.getAdapter();

  • 如果mBluetoothAdapter为空,是因为手机蓝牙不支持与ble设备通讯,换句话说就是安卓手机系统在4.3以下了。

step3、判断手机蓝牙是否被打开

mBluetoothAdapter.isEnabled()

  • 如果返回true,这个时候就可以扫描了

  • 如果返回false,这时候需要打开手机蓝牙。 可以调用系统方法让用户打开蓝牙。

Intent enable = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);

startActivity(enable);

2、搜索蓝牙

step1、开始扫描

//10s后停止搜索

new Handler().postDelayed(new Runnable() {

@Override

public void run() {

mBluetoothAdapter.stopLeScan(mLeScanCallback);

}

}, 1000 * 10);

UUID[] serviceUuids = {UUID.fromString(service_uuid)};

mBluetoothAdapter.startLeScan(serviceUuids, mLeScanCallback);

  • startLeScan中,第一个参数是只扫描UUID是同一类的ble设备,第二个参数是扫描到设备后的回调。

  • 因为蓝牙扫描比较耗电,建议设置扫描时间,一定时间后停止扫描。

  • 如果不需要过滤扫描到的蓝牙设备,可用mBluetoothAdapter.startLeScan(mLeScanCallback);进行扫描。

<

BLE4.0低功耗蓝牙协议总结 目 录 版本控制..................................................................................................i 第一章 协议组成图 ...............................................................................1 1.1、协议由 HOST 层和 CONTROLLER 层组成 .......................................................................1 1.1.1、 CONTROLLER 组成 ................................................................................................1 1.1.2、 HOST 组成.............................................................................................................2 第二章 控制器 .......................................................................................2 2.1、 PHY 物理层 ......................................................................................................................2 2.1.1、频段.......................................................................................................................2 2.1.2、调制.......................................................................................................................2 2.1.3、射频信道...............................................................................................................3 2.1.4、发射功率...............................................................................................................3 2.2、链路层描述......................................................................................................................4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值