2012-01-14 92 views
86

按下“关闭屏幕”按钮后,我需要关闭WiFi。我的平板电脑需要这个应用程序,因为有时我忘了关闭WiFi,这会使电池放电速度非常快。它比没有WiFi的情况下寿命少10倍以上。 有没有解决方案可用.apk?我可以跟踪屏幕关闭并过了5分钟吗?我可以以编程方式关闭Android设备上的WiFi吗?怎么样?如何以编程方式关闭Android设备上的WiFi?

+2

如果只是给你,那么Android在“WiFi设置” - >“高级”下获得了“WiFi睡眠策略”设置。您启用15分钟后关闭WiFi。 – 2012-01-14 16:25:40

+0

我没有这个功能,在我的WiFi的高级设置我只有协议配置(DNS,静态IP,MAC等) – 2012-01-14 17:24:37

回答

193

您需要下列权限在manifest文件:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> 
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> 

然后你可以用下面您的活动类:

WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 
wifiManager.setWifiEnabled(true); 
wifiManager.setWifiEnabled(false); 

使用以下方法来检查它是否启用与否

boolean wifiEnabled = wifiManager.isWifiEnabled() 

你会在这个问题上找到一个很好的教程this网站。

+11

为什么这是必要的唤醒锁? – benbeel 2012-04-12 21:45:05

+0

是的,它没有WAKLE_LOCK和UPDATE_DEVICE_STATS,为什么他们包括在内? – powder366 2013-05-23 09:06:31

+2

好吧,我假设额外的权限只是直接从他提供的链接复制代码的结果,但即便如此,UPDATE_DEVICE_STATS仅用于系统应用程序,应用程序甚至不会使用该权限编译。 – 2013-05-25 18:05:13

相关问题