Java 如何获取Wi-Fi出现的事件?
我需要做一个Android应用程序,它应该每天晚上向我的服务器发送一些数据。如果没有wi-fi连接,应用程序应在连接自动可用时发送数据。为什么我可以获得有关wi-fi可用性的活动?我应该使用广播接收器吗?请给我一个例子或想法。谢谢你Android完全支持WiFi连接。主要组件是WiFiManager提供的系统。通常,我们通过调用当前上下文来获取它 一旦我们有了WiFiManager,我们就可以以WiFiInfo对象的形式要求它提供当前的WIFi连接。我们还可以通过Java 如何获取Wi-Fi出现的事件?,java,android,Java,Android,我需要做一个Android应用程序,它应该每天晚上向我的服务器发送一些数据。如果没有wi-fi连接,应用程序应在连接自动可用时发送数据。为什么我可以获得有关wi-fi可用性的活动?我应该使用广播接收器吗?请给我一个例子或想法。谢谢你Android完全支持WiFi连接。主要组件是WiFiManager提供的系统。通常,我们通过调用当前上下文来获取它 一旦我们有了WiFiManager,我们就可以以WiFiInfo对象的形式要求它提供当前的WIFi连接。我们还可以通过getConfiguredNet
getConfiguredNetworks()
请求所有当前可用的网络。这为我们提供了wific配置列表
// Setup WiFi
wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
// Get WiFi status
WifiInfo info = wifi.getConnectionInfo();
// info.toString()
// List available networks
List<WifiConfiguration> configs = wifi.getConfiguredNetworks();
for (WifiConfiguration config : configs) {
// config.toString()
}
//设置WiFi
wifi=(WifiManager)getSystemService(Context.wifi\u服务);
//获取WiFi状态
WifiInfo=wifi.getConnectionInfo();
//info.toString()
//列出可用网络
List configs=wifi.getConfiguredNetworks();
用于(WifiConfiguration config:configs){
//config.toString()
}
请参阅检查wifi状态的AndroidManifest.xml
BroadcastReceiver注册,如:
<receiver
android:name=".receivers.WifiStatusReceiver"
android:label="NetworkChangeReceiver">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
<action android:name="android.net.wifi.WIFI_STATE_CHANGED" />
</intent-filter>
</receiver>
然后实现您自己的BroadcastReceiver
,它将在wi-fi可用时处理事件,这样您就可以开始上传/下载了我知道。我不知道如何获得有关可用wi-fi的通知?例如,现在wi-fi不可用,我想知道它何时可用。有什么广播吗?