Android中蓝牙LE设备的最大绑定数量即"配对设备"是多少?

DJ *_*gan 6 android bluetooth ios

正在寻找这个问题的信息是我认为与此处寻求的信息相似(但不一样)......

" 我们可以通过BLE蓝牙与Android配对多少台设备? "

......所以让我们以不同的方式重新问一遍:

假设我们有一个用例,手机用户可能希望使用配对安全地连接(使用行业标准安全机制)蓝牙LE设备.当配对发生时,绑定信息存储在移动电话中 - - >设置 - - >无线 - - >蓝牙 - - >配对设备窗口(对话框).

无论是否维护活动连接,这些"配对设备"仍将保留在此列表中,对吗?

如果这个答案是正确的,那么在Android OS(或iPhone的iOS)开始引发性能问题之前,可以在此列表中累积数百或数千个以前的配对/绑定设备?

我的理解是...... Android操作系统或iPhone OS都没有提供编程能力来"清理"旧的配对/绑定设备列表.如果他们允许配对/保税设备列表失控,那些忽视手动移除这些设备的移动电话用户可能面临挑战.

思考?非常感谢,-DJ Regan


2018年11月12日更新...今日新消息:在使用Android分析许多BLE配对设备时 - >我的队友发现他们的蓝牙无线电在尝试配对到第102次后变得不可用(如无法使用)设备+今天.其他分析正在进行中.那么......也许这是一个用例,iOS或Android都不值得信赖支持?--DJ Regan

Mih*_*ail 4

从消息来源来看,我猜想 100 是正确的数字,指向您可以绑定的最大设备数。实践中也证明了。

 /* The number of security records for peer devices. */
    #ifndef BTM_SEC_MAX_DEVICE_RECORDS
    #define BTM_SEC_MAX_DEVICE_RECORDS  100
    #endif
Run Code Online (Sandbox Code Playgroud)

...

/************************************************************************************
    **  Local type definitions
    ************************************************************************************/
    typedef struct
    {
        uint32_t num_devices;
        bt_bdaddr_t devices[BTM_SEC_MAX_DEVICE_RECORDS];
    } btif_bonded_devices_t;
Run Code Online (Sandbox Code Playgroud)