diff --git a/app/src/full/java/org/fdroid/fdroid/net/WifiStateChangeService.java b/app/src/full/java/org/fdroid/fdroid/net/WifiStateChangeService.java index db068494e..4bf85b381 100644 --- a/app/src/full/java/org/fdroid/fdroid/net/WifiStateChangeService.java +++ b/app/src/full/java/org/fdroid/fdroid/net/WifiStateChangeService.java @@ -127,6 +127,7 @@ public class WifiStateChangeService extends IntentService { if (wifiState == WifiManager.WIFI_STATE_ENABLED) { wifiInfo = wifiManager.getConnectionInfo(); FDroidApp.ipAddressString = formatIpAddress(wifiInfo.getIpAddress()); + setSsidFromWifiInfo(wifiInfo); DhcpInfo dhcpInfo = wifiManager.getDhcpInfo(); if (dhcpInfo != null) { String netmask = formatIpAddress(dhcpInfo.netmask); @@ -168,17 +169,7 @@ public class WifiStateChangeService extends IntentService { return; } - if (wifiInfo != null) { - String ssid = wifiInfo.getSSID(); - Utils.debugLog(TAG, "Have wifi info, connected to " + ssid); - if (ssid != null) { - FDroidApp.ssid = ssid.replaceAll("^\"(.*)\"$", "$1"); - } - String bssid = wifiInfo.getBSSID(); - if (bssid != null) { - FDroidApp.bssid = bssid; - } - } + setSsidFromWifiInfo(wifiInfo); String scheme; if (Preferences.get().isLocalRepoHttpsEnabled()) { @@ -232,6 +223,20 @@ public class WifiStateChangeService extends IntentService { } } + private void setSsidFromWifiInfo(WifiInfo wifiInfo) { + if (wifiInfo != null) { + String ssid = wifiInfo.getSSID(); + Utils.debugLog(TAG, "Have wifi info, connected to " + ssid); + if (ssid != null) { + FDroidApp.ssid = ssid.replaceAll("^\"(.*)\"$", "$1"); + } + String bssid = wifiInfo.getBSSID(); + if (bssid != null) { + FDroidApp.bssid = bssid; + } + } + } + /** * Search for known Wi-Fi, Hotspot, and local network interfaces and get * the IP Address info from it. This is necessary because network