Index: net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
diff --git a/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java b/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
index 96a9320a81f431929b838d4f33557bff59a21ed4..0bc19588e4d78fdbee64c095b201da351c40ca48 100644 |
--- a/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
+++ b/net/android/java/src/org/chromium/net/AndroidNetworkLibrary.java |
@@ -9,6 +9,8 @@ import android.content.Context; |
import android.content.Intent; |
import android.net.ConnectivityManager; |
import android.net.NetworkInfo; |
+import android.net.wifi.WifiInfo; |
+import android.net.wifi.WifiManager; |
import android.security.KeyChain; |
import android.telephony.TelephonyManager; |
import android.util.Log; |
@@ -228,4 +230,34 @@ class AndroidNetworkLibrary { |
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); |
return networkInfo.isRoaming(); |
} |
+ |
+ /* |
+ * Returns the current SSID if the device is connected to a Wi-Fi network. |
+ */ |
+ @CalledByNative |
+ private static String getWifiSSID(Context context) { |
+ WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); |
+ WifiInfo wifiInfo = wifiManager.getConnectionInfo(); |
+ |
+ if (wifiInfo == null) { |
+ return ""; |
+ } |
+ |
+ String ssid = wifiInfo.getSSID(); |
+ |
+ if (ssid == null || "<unknown ssid>".equals(ssid)) { |
+ return ""; |
+ } |
+ |
+ return removeSurroundingQuotes(ssid); |
+ } |
+ |
+ private static String removeSurroundingQuotes(String string) { |
+ if (string.length() > 2 && string.charAt(0) == '\"' |
+ && string.charAt(string.length() - 1) == '\"') { |
+ return string.substring(1, string.length() - 1); |
+ } |
+ |
+ return string; |
+ } |
} |