From 5d45a95261c0152059dfdb7105307aebe2e2f10c Mon Sep 17 00:00:00 2001 From: "David T.H. Kao" Date: Mon, 17 Jul 2017 14:26:43 -0700 Subject: Check for current network activity before deciding it is already connected. (#70) --- .../google/android/mobly/snippet/bundled/WifiManagerSnippet.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/google/android/mobly/snippet/bundled/WifiManagerSnippet.java b/src/main/java/com/google/android/mobly/snippet/bundled/WifiManagerSnippet.java index 13a39cd..32f6a8d 100644 --- a/src/main/java/com/google/android/mobly/snippet/bundled/WifiManagerSnippet.java +++ b/src/main/java/com/google/android/mobly/snippet/bundled/WifiManagerSnippet.java @@ -22,6 +22,7 @@ import android.content.Intent; import android.content.IntentFilter; import android.net.wifi.ScanResult; import android.net.wifi.WifiConfiguration; +import android.net.wifi.WifiInfo; import android.net.wifi.WifiManager; import android.os.Build; import android.support.annotation.Nullable; @@ -193,9 +194,10 @@ public class WifiManagerSnippet implements Snippet { Log.d("Got network config: " + wifiNetworkConfig); WifiConfiguration wifiConfig = JsonDeserializer.jsonToWifiConfig(wifiNetworkConfig); // Return directly if network is already connected. - String connectedSsid = mWifiManager.getConnectionInfo().getSSID(); - if (connectedSsid.equals(wifiConfig.SSID)) { - Log.d("Network " + connectedSsid + " is already connected."); + WifiInfo connectionInfo = mWifiManager.getConnectionInfo(); + if (connectionInfo.getNetworkId() != -1 && connectionInfo.getSSID().equals(wifiConfig.SSID)) + { + Log.d("Network " + connectionInfo.getSSID() + " is already connected."); return; } // If the network is already added but not connected, update the configuration first. -- cgit v1.2.3