1
Wi-Fiの切断を監視するために使用している、登録済みのBroadcastReceiverがあります。デバイスがWiFiをスキャンするたびに切断ブロードキャストを受信します。ブロードキャストがWiFiをスキャンした結果であるのか、実際にはネットワークから切断されたのかを判断する方法が必要です。WiFiを切断する理由を入手するにはどうすればいいですか
public class WifiReceiver extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
if(!intent.getAction().equals("android.net.wifi.STATE_CHANGE"))
return;
NetworkInfo networkInfo = intent.getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
if (networkInfo != null) {
if (networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
if(networkInfo.getDetailedState() == CONNECTED || networkInfo.getDetailedState() == DISCONNECTED)
PresenceData.loadData(context);
if(networkInfo.getDetailedState() == CONNECTED) {
System.out.println("Wifi connected");
PresenceData.sendNotification("Wifi Connected", "You are now connected to " + PresenceData.getCurrentWifiSSID(context), context);
PresenceData.submitChanges(context);
} else if(networkInfo.getDetailedState() == DISCONNECTED) {
System.out.println("Wifi Disconnected");
PresenceData.sendNotification("Wifi Disconnected", "Your wifi has disconnected", context);
UpdaterService.scheduleUpdate(context);
}
}
}
}
}
ちょうど –
を持っているもののコードたちを表示します私はすでにそれを使用していますが、私の問題は、スキャンした後に切断されたと言うことです。私はWiFiが最近切断されたかどうか、またはそれがちょうどスキャンされたかどうかを判断しようとしています –