You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS开发如何取消待处理的peripheral本地连接请求

iOS取消待处理外设本地连接请求方案

不管是已经连接成功的外设,还是已经发起连接请求但还未完成连接的待处理状态外设,都统一使用CBCentralManager的cancelPeripheralConnection(_:)方法取消连接,不需要调用其他额外API,操作步骤如下:

  • 持有你之前调用connect(_:options:)方法时传入的同一个CBPeripheral实例,不要提前释放该实例
  • 将待取消连接的peripheral实例作为参数传入方法:
    centralManager.cancelPeripheralConnection(pendingPeripheral)
    
  • 调用后等待CBCentralManagerDelegate的回调:
    若待处理连接取消成功,你会收到centralManager(_:didDisconnectPeripheral:error:)回调,回调的error参数值为CBError.connectionCancelled即可确认待处理连接已主动取消。

注意事项

  • 不要在调用cancelPeripheralConnection(_:)之后立刻将peripheral实例置空,需要等待断开回调触发后再清理相关实例,避免回调无法正常触发
  • 如果你同时发起了多个外设的连接请求,只需要对每个待取消的peripheral分别调用一次取消方法即可,互不影响

内容的提问来源于stack exchange,提问作者Virat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 00:39:00