由于BLE的配对绑定在安卓IOS上是有弹窗提示的,因此一些应用上使用很麻烦,例如,在产品中整个蓝牙连接是在后台的,不需要用户去操作,这时候就需要丛机设备来做处理,具体如下:
从机没有配对绑定,没有密码,不限制连接;
连接后增加用户验证,app端发送验证信息,从机做判断,是否满足连接条件,如果不满足就直接断开连接;
具体实现:在蓝牙从机接收回调函数中,增加简单数据处理,即可实现;
static void simpleProfileChangeCB( uint8 paramID )
{
uint8 newValue;
uint8 newValueBuf[18];
switch( paramID )
{
case SIMPLEPROFILE_CHAR1:
SimpleProfile_GetParameter( SIMPLEPROFILE_CHAR1, newValueBuf );
if(strstr(newValueBuf, "123456789")) //USER_Verify
{
user_verify = 1;
}
else //断开蓝牙连接
{
user_verify = 0;
GAPRole_TerminateConnection();
}
break;
default:
// should not reach here!
break;
}
}