【发布时间】:2013-04-21 20:14:56
【问题描述】:
我们可以通过编程方式打开/关闭 WiFi/蓝牙。 但是有没有可能只要应用程序正在运行 关闭 WiFi/蓝牙,它们将保持关闭状态。 我的意思是说,如果用户打开 WiFi,那么应用程序会再次将其关闭?
【问题讨论】:
标签: android bluetooth android-wifi
我们可以通过编程方式打开/关闭 WiFi/蓝牙。 但是有没有可能只要应用程序正在运行 关闭 WiFi/蓝牙,它们将保持关闭状态。 我的意思是说,如果用户打开 WiFi,那么应用程序会再次将其关闭?
【问题讨论】:
标签: android bluetooth android-wifi
您可以在应用启动时添加意图过滤器并注册接收器
<intent-filter>
<action android:name="android.net.wifi.WIFI_STATE_CHANGED"/>
<action android:name="android.net.wifi.STATE_CHANGE"/>
</intent-filter>
在 onCreate 上注册接收器
IntentFilter filters = new IntentFilter();
filters.addAction("android.net.wifi.WIFI_STATE_CHANGED");
filters.addAction("android.net.wifi.STATE_CHANGE");
super.registerReceiver(wifiStateListener, filters);
尽管在您的情况下,我认为只有“android.net.wifi.WIFI_STATE_CHANGED”就足够了。每当 WIFI 的状态(启用、禁用、连接、断开连接)发生变化时,它都会被操作系统触发。
您需要添加读取/修改WIFI状态的权限。
希望这会有所帮助。
【讨论】: