Android 蓝牙BLE广播详解 - 史上最详细

android-蓝牙A2dp-avrcp-hfp-opp-配对流程-ble-rfcomm源码流程

Android 蓝牙低功耗ble 广播、扫描、连接、数据读写源码流程分析大全 - 点击下载

一、概述

什么是蓝牙广播?
    蓝牙广播是蓝牙通信的基础,蓝牙通信是点对点,想要被对方连接,就要发送广播,意思是说我现在在运行中,你们可以来连接我,我的地址是多少多少。
    广播是一种单向的发送机制,每一个固定的时间,发送一次广播数据,当从机为已广播状态时,才能被主机发现,从而进行连接,广播包会在37、38、39三个信道上广播。
    广播这一个阶段是由GAP这个协议定义的。
    GAP是Generic Access Profile的缩写,GAP可以让你的设备对外界可见,他定义了peripheral以及central两个角色。
主机:发起对从机的连接者(手机)
从机:广播并等待被连接(手表、耳机)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在 Android 设备上发送蓝牙低功耗(BLE广播,你需要执行以下步骤: 1. 获取 BluetoothAdapter 对象并检查是否支持 BLE。可以使用以下代码获取 BluetoothAdapter 对象: ``` BluetoothManager bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE); BluetoothAdapter bluetoothAdapter = bluetoothManager.getAdapter(); ``` 2. 创建一个 AdvertiseSettings 对象,用于配置广播的参数。你可以使用以下代码创建 AdvertiseSettings 对象: ``` AdvertiseSettings settings = new AdvertiseSettings.Builder() .setAdvertiseMode(AdvertiseSettings.ADVERTISE_MODE_BALANCED) .setConnectable(false) .setTimeout(0) .setTxPowerLevel(AdvertiseSettings.ADVERTISE_TX_POWER_MEDIUM) .build(); ``` 在这个示例中,我们将广播模式设置为平衡模式,使广播更加稳定。我们还将广播设置为不可连接,并将超时设置为 0。 3. 创建一个 AdvertiseData 对象,用于在广播中包含数据。你可以使用以下代码创建 AdvertiseData 对象: ``` AdvertiseData data = new AdvertiseData.Builder() .setIncludeDeviceName(true) .setIncludeTxPowerLevel(false) .addManufacturerData(0x1234, new byte[] { 0x01, 0x02, 0x03 }) .build(); ``` 在这个示例中,我们将设备名称包含在广播中,并添加了一个制造商数据字段。 4. 开始广播。你可以使用以下代码开始广播: ``` bluetoothAdapter.getBluetoothLeAdvertiser().startAdvertising(settings, data, advertisingCallback); ``` 在这个示例中,我们将 AdvertiseSettings 和 AdvertiseData 对象传递给 startAdvertising() 方法,并提供了一个广告回调函数 advertisingCallback。 这些步骤将使你的 Android 设备开始发送 BLE 广播

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知识分享小达人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值