iOS 10和iOS 9的断连进程不同。

⚠️
大家好. .谢谢你来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台,它将提供更好的功能,包含在主对话网站中。所有岗位和账户都已迁移。我们现在只接受新论坛的流量-请在上面发布任何新帖子//www.xmece.com/support。我们将在未来几天修复bug /优化搜索和标记。
2个帖子/ 0个新
最后发表
y-takamine
离线
最后看到:3年3个月前
加入:2015-07-10 09:03
iOS 10和iOS 9的断连进程不同。

1.从iOS发出连接请求(connection request)。
2.外设发出连接请求指示。
3.从外设发出一个断开连接的进程。
在ios9中,它将被识别为断开并立即断开。
然而,iOS 10将其识别为超时,并需要时间断开连接。
这是iOS的问题吗?
这是外围设备的问题吗?

Static int gapc_connection_req_ind_handler(ke_msg_id_t const msgid,
gapc_connection_req_ind const *param,
ke_task_id_t const dest_id,
ke_task_id_t const src_id)
{
uint8_t connection_idx = KE_IDX_GET(src_id);

//在iOS 9中,它将被识别为断开并立即断开。
//但是,ios10将其识别为timeout,需要时间断开连接。
app_easy_gap_disconnect (connection_idx);

返回(KE_MSG_CONSUMED);
}

设备:
MT_dialog
离线
最后看到:3个月1周前
工作人员
加入:2015-06-08 34
嗨y-takamine,

嗨y-takamine,

对不同的操作系统发出断开连接请求的580没有区别,断开连接命令对所有设备都是相同的。如果你正在经历你所提到的,那么这可能与另一边的操作系统有关,而不是580。我只能假设的原因是这种情况,IOS 10后连接尝试一些额外的请求和你是树叶发出后断开连接的请求从中央等待和断开请求从580年的等待,因此,中央不与外围设备通信,因此,断开连接的原因是超时。我假设,如果您试图在一段时间后发出一个断开连接,假设10秒后,设备将正确断开连接,您可以通过ke_timer测试这一点,并在10秒后发出一个断开连接请求。

由于MT_dialog