gpt4 book ai didi

Android 长期运行的 Wi-Fi 扫描服务

转载 作者:行者123 更新时间:2023-12-03 14:42:06 26 4
gpt4 key购买 nike

我一直在关注https://developer.android.com/guide/topics/connectivity/wifi-scan指南以创建 Wi-Fi 扫描仪。我正在使用带有处理程序的前台服务来调用 wifiMananger.startScan();每 30 秒(我尝试了 15 分钟)。
一切效果很好大约2小时然后突然WifiManager.EXTRA_RESULTS_UPDATED boolean 返回 false 和 wifiManager.getScanResults()没有得到更新。然后,一旦插入电话,它就会再次开始发送结果。 (不,电池电量不低)
我有电池优化关闭 .我有所有必需的允许的权限 . 位置功能已开启 启用 Wi-Fi 扫描 .我正在测试的设备是运行 的三星 S7 Edge安卓 8 .所以我知道这不是新的操作系统。 (我还使用运行 Android 10 的诺基亚 5.1 进行了测试,结果几乎相同)。
有谁知道为什么会这样,或者以前有人遇到过这个问题吗?
提前致谢。

最佳答案

更新 :如果您遇到问题,由于某些问题您正好使用了 30 秒,因此在 2 分钟内可能会超过 4 次,请将其设置为 35 秒并测试结果。
原答案:从此WifiManager startScan throttled in P Beta (Developer Preview 2) :
“调用限制 - 节流
我们正在进一步限制应用程序可以请求的扫描次数,以提高网络性能和延长电池生命周期。
WifiManager.startScan() 的使用仅限于:

  • 每个前台应用程序限制为每 2 分钟扫描 4 次。
  • 所有后台应用程序组合被限制为每 30 分钟扫描一次。”

  • 据说这个限制是因为电池耗电,所以在充电的时候解除限制是正常的。
    在官方 documentation 中阅读有关节流的更多信息.

    关于Android 长期运行的 Wi-Fi 扫描服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62952892/

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