我们的SDK版本是:1.35,现在添加了配对加密功能,但每次手机连接时都会弹出输入密码的界面,客户体验不好。
我们希望手机端在连接蓝牙设备端时,不会弹出输入密码的界面,而是在手机端的APP中通过某种方式直接把“密码”传递过来,相当于把输入密码的过程变为隐性传递了。而其它APP(非我方实现)连接时因为没有传递密码,会被设备端认为配对无效。
请问这个功能是需要修改配对的方式吗?我现在的配置如下:
uint8_t pairMode = GAPBOND_PAIRING_MODE_INITIATE;
uint8_t mitm = TRUE;
uint8_t ioCap = GAPBOND_IO_CAP_DISPLAY_ONLY;
uint8_t bonding = FALSE;
我查看ioCap还可以有以下几中选择:
395 /** @defgroup GAPBondMgr_IO_Caps GAP Bond Manager I/O Capabilities
396 * @{
397 */
398 #define GAPBOND_IO_CAP_DISPLAY_ONLY 0x00 //!< Display Only Device399 #define GAPBOND_IO_CAP_DISPLAY_YES_NO 0x01 //!< Display and Yes and No Capable
400 #define GAPBOND_IO_CAP_KEYBOARD_ONLY 0x02 //!< Keyboard Only
401 #define GAPBOND_IO_CAP_NO_INPUT_NO_OUTPUT 0x03 //!< No Display or Input Device
402 #define GAPBOND_IO_CAP_KEYBOARD_DISPLAY 0x04 //!< Both Keyboard and Display Capable
403 /** @} End GAPBondMgr_IO_Caps */
是否要改为GAPBOND_IO_CAP_KEYBOARD_ONLY?
还有请有相关经验的各位大佬解答一下,谢谢!
Viki Shi:
改为#define GAPBOND_IO_CAP_DISPLAY_ONLY 0x00 //!< Display Only Device
使用just work的默认密码000000自动配对
糖油粑粑:
回复 Viki Shi:
viki,你好。我们不希望其它的APP能连接上我们的蓝牙设备,所以密码是有改为其它值的。