我从来没有打开WiFi,因为我有无限的数据计划。我最近注意到它是随机自动启用的。
如何找到导致WiFi开启的罪魁祸首?有什么方法可以捕获启动WiFi启用Intent的应用程序?
到目前为止,我一直在进行盲目搜索,但我仍然注意到我的WiFi已打开。提前致谢!我有运行Android 4.4的Nexus 4
我从来没有打开WiFi,因为我有无限的数据计划。我最近注意到它是随机自动启用的。
如何找到导致WiFi开启的罪魁祸首?有什么方法可以捕获启动WiFi启用Intent的应用程序?
到目前为止,我一直在进行盲目搜索,但我仍然注意到我的WiFi已打开。提前致谢!我有运行Android 4.4的Nexus 4
Answers:
KitKat具有一项功能,当Wi-Fi关闭时,它会定期扫描网络以允许基于Wi-Fi的位置检测正常工作。要关闭此功能:-
即使应用程序完全打开了Wi-Fi,这也并非出于故意。而是通过调用method来完成的WifiManager.setWifiEnabled
。只有具有“ 连接和断开与Wi-Fi的连接 ” 权限的应用程序才能执行此操作。
如果不是KitKat的功能Dan提到的,则间隔时间相当短(因此,例如,您晚上睡觉时至少发生一次):
adb logcat | tee wifi.log
wifi.log
它是什么时候触发的(希望是由谁触发的)这至少应该有助于缩小范围。即使它没有明确声明“ App X触发WiFi”,您也可以检查模式,例如“每次WiFi打开时,我发现App X的事件Z在前面提到了几行”。好的指示符可能与X有关。因此,请检查X是否已请求(并授予)某些网络(或“粗略位置”)权限,好像没有,则不太可能成为您的候选人。否则,请尝试禁用/冻结/卸载它,然后查看问题是否消失。如果是这样,那么您找到了–如果没有,请重复下一个。
我的设备也遇到了同样的问题(注3)。T-Mobile的电话系列似乎没有“连接优化器”功能。在T-mo的情况下,需要禁用的功能是“ Wi-Fi管理器”。
要禁用此功能,您需要执行以下操作:
而已...
我与T-mobile技术支持人员讨论了一个不相关的问题,并毫不客气地提到了这个问题。代表告知我这是一个已知问题,并指出此问题已得到解决。同时,禁用“ Wi-Fi管理器”是解决此问题的临时解决方法。这是禁用Wi-Fi管理器的简便方法:
T-Mobile我的帐户->菜单->选项->“显示Wi-Fi管理器通知”(取消选中)->“打开Wi-Fi管理器”(在“连接助手”下)->(取消选中)“管理Wi-Fi连接”。