diff options
| author | Irfan Sheriff <isheriff@google.com> | 2010-08-19 18:41:58 -0700 |
|---|---|---|
| committer | Irfan Sheriff <isheriff@google.com> | 2010-08-19 21:35:25 -0700 |
| commit | cdea9193f2745fd46e69858a7c5570d95f8182dc (patch) | |
| tree | 20e1861691cbd154cad6ab58f92566773dd02ea0 /wifi | |
| parent | 8e6c8c20249d51395afff1afa80799f6e95306c7 (diff) | |
| download | frameworks_base-cdea9193f2745fd46e69858a7c5570d95f8182dc.zip frameworks_base-cdea9193f2745fd46e69858a7c5570d95f8182dc.tar.gz frameworks_base-cdea9193f2745fd46e69858a7c5570d95f8182dc.tar.bz2 | |
update ssid in WifiInfo
Bug: 2876746
Change-Id: I58295e01f07f168e234ab344065fe50047902c76
Diffstat (limited to 'wifi')
| -rw-r--r-- | wifi/java/android/net/wifi/WifiStateMachine.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/wifi/java/android/net/wifi/WifiStateMachine.java b/wifi/java/android/net/wifi/WifiStateMachine.java index 6408666..19c4eb0 100644 --- a/wifi/java/android/net/wifi/WifiStateMachine.java +++ b/wifi/java/android/net/wifi/WifiStateMachine.java @@ -1156,6 +1156,23 @@ public class WifiStateMachine extends HierarchicalStateMachine { mScanResults = scanList; } + private String fetchSSID() { + String status = WifiNative.statusCommand(); + if (status == null) { + return null; + } + // extract ssid from a series of "name=value" + String[] lines = status.split("\n"); + for (String line : lines) { + String[] prop = line.split(" *= *"); + if (prop.length < 2) continue; + String name = prop[0]; + String value = prop[1]; + if (name.equalsIgnoreCase("ssid")) return value; + } + return null; + } + private void configureNetworkProperties() { try { mNetworkProperties.setInterface(NetworkInterface.getByName(mInterfaceName)); @@ -2924,6 +2941,8 @@ public class WifiStateMachine extends HierarchicalStateMachine { Log.d(TAG,"Network connection established"); stateChangeResult = (StateChangeResult) message.obj; + //TODO: make supplicant modification to push this in events + mWifiInfo.setSSID(fetchSSID()); mWifiInfo.setBSSID(mLastBssid = stateChangeResult.BSSID); mWifiInfo.setNetworkId(stateChangeResult.networkId); mLastNetworkId = stateChangeResult.networkId; @@ -3390,8 +3409,6 @@ public class WifiStateMachine extends HierarchicalStateMachine { setDetailedState(WifiInfo.getDetailedStateOf(supState)); mWifiInfo.setSupplicantState(supState); mWifiInfo.setNetworkId(stateChangeResult.networkId); - //TODO: Modify WifiMonitor to report SSID on events - //mWifiInfo.setSSID() return HANDLED; } |
