gpt4 book ai didi

android - 可以破解 Android 中的 BLE 外设模式支持吗?

转载 作者:行者123 更新时间:2023-11-29 00:24:43 27 4
gpt4 key购买 nike

blog post来自 radius networks 的文章讨论了如何将 Android 设备用作 iBeacon(又名:BLE 外设模式),即使设备的硬件支持 BLE,因为 Android 没有用于 BLE 外设模式的 API。

注意:BLE 表示低功耗蓝牙

读完这一节后,我要提出一些愚蠢的建议

Because their SDK only supports the central role, “advertising” a service as a central server means sitting their quietly, only revealing (or “advertising”) its service characteristics to another device in peripheral mode after a connection is already established. This connection establishment requires another device to do the actual radio advertising first. Samsung’s SDK isn’t going to do it.

是否有可能欺骗处于中央模式的设备(三星手机)认为另一台处于外围模式的设备已与其建立连接,然后让中央模式“发布广告”。您可以通过在软件中伪造连接来欺骗手机吗?

可能是个愚蠢的想法,可能在中央模式下欺骗设备,但“广告”不是 BLE 外设模式广告,也不像外设模式下的 iBeacon。

我非常需要 Android 对 BLE 外设模式的支持,目前我可以接受破解一些东西,希望 Android 最终会支持这个功能集,BTW 已经是 feature request

最佳答案

我认为这种技术不会奏效,即使它可以“欺骗”Android,使其认为它与另一个 BLE 设备建立了连接。虽然这个问题是关于三星 BLE SDK,但我认为同样的答案适用于从 Android 4.3 开始提供的专用 Android BLE API (android.bluetooth.BluetoothAdapter)。

让我们暂时搁置欺骗部分——即使 Android 实际上确实连接到另一个 BLE 设备,你能让它做广告吗?如果您所说的“广告”是指向其他设备展示其服务,那么答案是肯定的。但是这种 radio 传输是通过两个设备之间的专用信道进行的,并且无法像 iBeacon 广告那样被 BLE 扫描接收到。它真的根本不是广告——这就是为什么我在博文中说三星文档具有误导性。因此,如果您不能通过真实连接执行此操作,那么欺骗连接也将不起作用。

我对蓝牙堆栈的了解有限,但我认为扫描可以接收到的实际 radio 广播广告是由硬件 BLE 芯片组控制的,这意味着您必须能够访问蓝牙堆栈的部分,这些部分告诉实现这一目标的硬件。我认为三星 BLE SDK 或 Android SDK 中没有任何内容故意允许这样做。

另一种方法是直接对 BlueDroid 堆栈进行 JNI 调用。我不确定 Android 权限是否允许这样做,或者是否在 BlueDroid 堆栈中实现了广告。

更新:现在可以在 Android 4.4.3 和 Android L 中作为外围设备传输。See here.

关于android - 可以破解 Android 中的 BLE 外设模式支持吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20644907/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com