gpt4 book ai didi

android - WifiManager.getScanResults() - 说明(自动扫描、 sleep 等)

转载 作者:行者123 更新时间:2023-11-30 03:38:57 25 4
gpt4 key购买 nike

我想澄清一下 WifiManager.getScanResults() 的行为,即:

启用无线时

  1. android 是否按固定时间间隔扫描接入点?可以查询/更改间隔吗?可以查询上次扫描的时间吗?有关讨论,请参阅此 answer
  2. radio 关闭(休眠)时会发生什么情况 - 而 wifi 仍处于启用状态 - getScanResults() 会继续返回上次扫描结果吗?如何知道是否到了 startScan() 的时间?

禁用无线时

  1. getScanResults() 会返回最后的扫描结果吗?还是空列表?或者 null(它有时会返回 null,并且 SO 中发布的 90% 的代码 fragment 都没有处理这个问题)?
  2. 即使在重启后(手机在 wifi 关闭的情况下启动),问题 1 的答案也是正确的?

我问的原因是我需要定期获取可用接入点的列表,我宁愿立即调用 getScanResults(),而不是 WifiManager.startScan() 然后 getScanResults() 如果我真的不需要 - 因为这涉及获取 wifi 锁等,而且相当微妙。我也不确定 API 级别和手机硬件在多大程度上发挥了作用。

有关困难的详细讨论,请参阅 answer

最佳答案

禁用无线时

  1. getScanResults() 将返回 null...
  2. ...即使在重新启动之后(这是可以预料的 - 如果它一开始没有返回 null,这将是有争议的)

启用无线时

2. 令人惊讶的是 getScanResults() 会在一段时间后返回 null(在 Nexus One、Android 2.3.7、Cyanogen mod 上——但我怀疑这不是真的很相关)。所以是的,显然无论无线状态如何都必须启动扫描

我猜如果状态是 WIFI_STATE_DISABLING

也是如此

我仍然对无线启用情况下的答案感兴趣 - 特别是问题 2,如果设备处于 sleep 状态。 Google 群组不允许我发帖(提示)

关于android - WifiManager.getScanResults() - 说明(自动扫描、 sleep 等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16137268/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com