问题描述
我目前正在开发一个使用 Google Nearby Connections API 的应用程序。我很好奇是否有一种方法可以更改 onEndpointLost(EndpointdiscoveryCallback 类的方法)和 onFailure(OnFailureListener 接口的方法)的超时时间。
根据我的理解,这些方法(回调)在预定义的时间结束时被调用,我们会收到这些失败调用。我想降低这个延迟,因为在发现的端点消失后, onEndpointLost 方法被调用太晚了。当设备尝试与不再通告的端点建立连接时,同样适用,从而导致 onFailure 回调。
(如果你能抽出一些时间来帮助我,我会很高兴的(:)
提前致谢!
解决方法
没有办法手动调整这些超时,我们也不打算公开任何方法。这是因为我们结合了不同的扫描(例如 BT + BLE + WiFi),并且每次扫描都有自己的广告/扫描间隔。没有一个万能的数字可以适用于所有情况,而且我们不会自己控制每种媒体的超时时间(尽管我们对某些媒体进行了控制)。
至于一些好消息,我们正在优化 onEndpointLost 超时以缩短 BLE 的时间。这是目前我们最大的超时(15 秒),我们正在探索将其降低(至 3 秒)。这不会将总超时时间降低到 3 秒,但应该会显着降低。
对于 onFailure 事件,我需要知道您指的是哪一个。如果是连接请求,可以通过调用 disconnectFromEndpoint 来中断请求。这样,您就可以拥有自己想要的任何值的超时时间。