java - Android 3.2 和 WifiManager.setWifiEnabled

标签 java android wifi android-wifi

我更新到了 Android 3.2,现在当我调用 WifiManager.setWifiEnabled 时,我在日志中收到一条错误消息,指出需要 WRITE_SECURE_SETTINGS 权限。

这在 3.2 中有所改变吗? (此更改是否记录在某处?)

我希望能够从我的应用程序中禁用 Wifi(大多数时候),因为不需要它,并且只会使用比必要的更多的电池。 有没有办法从 3.2 开始禁用 Wifi?

问候 杰瑞

最佳答案

WiFi 电源管理是系统范围的设置,而不是您的应用程序的责任。只要你不捕获明确的 WifiLock或耗电的 WakeLock(例如 FULL_WAKE_LOCK ),那么 Android 将尊重用户的电源管理选择,您也应该如此。

如果您仍想打开和关闭 WiFi,则需要确保您拥有 CHANGE_WIFI_STATE许可。

我不确定日志为何提到 WRITE_SECURE_SETTINGS,但除非您明确捕获 setWifiEnabled 抛出的提示该异常的异常,否则该消息不适合您。

关于java - Android 3.2 和 WifiManager.setWifiEnabled,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9720135/

相关文章:

从 Activity 实例化 IntentService 时 Android 中的 Java 空指针异常

java - Java曾经没有一个Pair类吗?

java - 像这样初始化后,我可以避免双重检查锁定中的 volatile 读取吗?

android - 保存开关状态android

java - 如何杀死所有未跟踪Android的警报管理器

objective-c - 如何强制 iPad 启动 wifi 连接?

java.lang.RuntimeException : RESTEASY003325: Failed to construct public api

java - Android:将位图保存到手机存储

iphone - 如何使用 WiFi 以编程方式将 iPhone 连接到另一部 iPhone 或 iPad?

google-maps - Google map V6 室内导航