android - Android 中蓝牙 LE 设备的最大绑定(bind)数是多少,即 'Paired Devices'?

标签 android ios bluetooth

我认为这个问题所寻求的信息与此处所寻求的信息相似(但不相同)...

"How many devices we can pair via Bluetooth of BLE to Android? "

...所以让我们用不同的方式重新提问:

假设我们有一个用例,其中拥有手机的人可能希望通过配对安全地(使用行业标准安全机制)连接到蓝牙 LE 设备。配对发生时,绑定(bind)信息存储在手机->设置->无线->蓝牙->配对设备窗口(对话框)。

无论是否保持 Activity 连接,这些“配对设备”都将保留在此列表中,对吗?

如果这个答案是正确的,那么在 Android 操作系统(或 iPhone 的 iOS)开始出现性能问题之前,这个列表中可以累积多少成百上千个以前配对/绑定(bind)的设备?

我的理解是...Android 操作系统或 iPhone 操作系统都没有提供编程功能来“清除”旧的配对/绑定(bind)设备列表。忽略手动移除这些设备的手机用户可能面临一项具有挑战性的任务,如果他们允许配对/绑定(bind)设备列表失控的话。

想法?提前致谢,--DJ Regan


2018 年 11 月 12 日更新...今天的新消息:在分析许多与 Android 配对的 BLE 设备时 - -> 我的一个队友发现他们的蓝牙 radio 在尝试配对后变得不可用(如无法使用)今天到第 102 台设备+。其他分析正在进行中。所以...也许这是一个 iOS 或 Android 都不应该信任支持的用例? --DJ里根

最佳答案

根据消息来源,我猜 100 是指向您可以绑定(bind)的最大设备数的正确数字。也在实践中证明。

 /* The number of security records for peer devices. */
    #ifndef BTM_SEC_MAX_DEVICE_RECORDS
    #define BTM_SEC_MAX_DEVICE_RECORDS  100
    #endif

...

/************************************************************************************
    **  Local type definitions
    ************************************************************************************/
    typedef struct
    {
        uint32_t num_devices;
        bt_bdaddr_t devices[BTM_SEC_MAX_DEVICE_RECORDS];
    } btif_bonded_devices_t;

关于android - Android 中蓝牙 LE 设备的最大绑定(bind)数是多少,即 'Paired Devices'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53050885/

相关文章:

android - 塔在 Android 中的位置

android - 在 Android 5.0 中设置弹出菜单的样式

java - Google 自定义搜索 API 按图像搜索图像

ios - 如何在另一个自定义表格 View 中快速创建自定义表格 View

android - 适用于 Android 的蓝牙打印机的步骤

android - 尝试删除 Android Firebase 中的项目时出现空指针异常

iphone - 如何知道 StoreKit In App Purchases 导致了 applicationWillResignActive?

javascript - 有没有办法在浏览器中访问蓝牙连接的设备?

c# - 无法从后台运行的进程中读取 STDOut

ios - 操作不适用于 UISwitch