diff options
author | Vinit Deshpande <vinitd@google.com> | 2015-03-12 17:04:35 -0700 |
---|---|---|
committer | Vinit Deshpande <vinitd@google.com> | 2015-03-17 17:11:06 -0700 |
commit | 2522c830a3ad3ae2ca7f675f13fafab8835d4f0c (patch) | |
tree | e92e5cbcff2285627bcf6db53ffdacc03be0c27e /wifi | |
parent | 04444427d0f3421fc9791842bdce834ffed448cc (diff) | |
download | frameworks_base-2522c830a3ad3ae2ca7f675f13fafab8835d4f0c.zip frameworks_base-2522c830a3ad3ae2ca7f675f13fafab8835d4f0c.tar.gz frameworks_base-2522c830a3ad3ae2ca7f675f13fafab8835d4f0c.tar.bz2 |
Fix scan results to hold passpoint data
Change-Id: I8ab75ec49226a59b04de6463de596cc9f5f6d800
Diffstat (limited to 'wifi')
-rw-r--r-- | wifi/java/android/net/wifi/ScanResult.java | 43 | ||||
-rw-r--r-- | wifi/java/android/net/wifi/WifiConfiguration.java | 11 | ||||
-rw-r--r-- | wifi/java/android/net/wifi/passpoint/WifiPasspointManager.java | 2 |
3 files changed, 38 insertions, 18 deletions
diff --git a/wifi/java/android/net/wifi/ScanResult.java b/wifi/java/android/net/wifi/ScanResult.java index b4f4927..e8a51e3 100644 --- a/wifi/java/android/net/wifi/ScanResult.java +++ b/wifi/java/android/net/wifi/ScanResult.java @@ -16,8 +16,6 @@ package android.net.wifi; -import android.net.wifi.passpoint.WifiPasspointInfo; -import android.net.wifi.passpoint.WifiPasspointManager; import android.os.Parcel; import android.os.Parcelable; @@ -215,11 +213,19 @@ public class ScanResult implements Parcelable { public int distanceSdCm; /** - * Passpoint ANQP information. This is not fetched automatically. - * Use {@link WifiPasspointManager#requestAnqpInfo} to request ANQP info. - * {@hide} + * Indicates if the scan result represents a passpoint AP + */ + public boolean passpointNetwork; + + /** + * Indicates if venue name + */ + public String venueName; + + /** + * Indicates operator name */ - public WifiPasspointInfo passpoint; + public String operatorFriendlyName; /** * {@hide} @@ -292,6 +298,7 @@ public class ScanResult implements Parcelable { this.centerFreq0 = UNSPECIFIED; this.centerFreq1 = UNSPECIFIED; this.is80211McRTTResponder = false; + this.passpointNetwork = false; } /** {@hide} */ @@ -310,6 +317,7 @@ public class ScanResult implements Parcelable { this.centerFreq0 = UNSPECIFIED; this.centerFreq1 = UNSPECIFIED; this.is80211McRTTResponder = false; + this.passpointNetwork = false; } /** {@hide} */ @@ -329,6 +337,7 @@ public class ScanResult implements Parcelable { this.centerFreq0 = centerFreq0; this.centerFreq1 = centerFreq1; this.is80211McRTTResponder = is80211McRTTResponder; + this.passpointNetwork = false; } /** copy constructor {@hide} */ @@ -348,13 +357,15 @@ public class ScanResult implements Parcelable { distanceCm = source.distanceCm; distanceSdCm = source.distanceSdCm; seen = source.seen; - passpoint = source.passpoint; autoJoinStatus = source.autoJoinStatus; untrusted = source.untrusted; numConnection = source.numConnection; numUsage = source.numUsage; numIpConfigFailures = source.numIpConfigFailures; isAutoJoinCandidate = source.isAutoJoinCandidate; + passpointNetwork = source.passpointNetwork; + venueName = source.venueName; + operatorFriendlyName = source.operatorFriendlyName; } } @@ -388,7 +399,7 @@ public class ScanResult implements Parcelable { sb.append(", distanceSd: ").append((distanceSdCm != UNSPECIFIED ? distanceSdCm : "?")). append("(cm)"); - sb.append(", passpoint: ").append(passpoint != null ? "yes" : "no"); + sb.append(", passpoint: ").append(passpointNetwork ? "yes" : "no"); if (autoJoinStatus != 0) { sb.append(", status: ").append(autoJoinStatus); } @@ -431,12 +442,10 @@ public class ScanResult implements Parcelable { dest.writeInt(numUsage); dest.writeInt(numIpConfigFailures); dest.writeInt(isAutoJoinCandidate); - if (passpoint != null) { - dest.writeInt(1); - passpoint.writeToParcel(dest, flags); - } else { - dest.writeInt(0); - } + dest.writeInt(passpointNetwork ? 1 : 0); + dest.writeString(venueName); + dest.writeString(operatorFriendlyName); + if (informationElements != null) { dest.writeInt(informationElements.length); for (int i = 0; i < informationElements.length; i++) { @@ -478,9 +487,9 @@ public class ScanResult implements Parcelable { sr.numUsage = in.readInt(); sr.numIpConfigFailures = in.readInt(); sr.isAutoJoinCandidate = in.readInt(); - if (in.readInt() == 1) { - sr.passpoint = WifiPasspointInfo.CREATOR.createFromParcel(in); - } + sr.passpointNetwork = in.readInt() == 1; + sr.venueName = in.readString(); + sr.operatorFriendlyName = in.readString(); int n = in.readInt(); if (n != 0) { sr.informationElements = new InformationElement[n]; diff --git a/wifi/java/android/net/wifi/WifiConfiguration.java b/wifi/java/android/net/wifi/WifiConfiguration.java index 943af10..50beda7 100644 --- a/wifi/java/android/net/wifi/WifiConfiguration.java +++ b/wifi/java/android/net/wifi/WifiConfiguration.java @@ -947,6 +947,17 @@ public class WifiConfiguration implements Parcelable { } /** + * Identify if this configuration represents a passpoint network + */ + public boolean isPasspoint() { + return TextUtils.isEmpty(SSID) + && !TextUtils.isEmpty(FQDN) + && !TextUtils.isEmpty(providerFriendlyName) + && enterpriseConfig != null + && enterpriseConfig.getEapMethod() != WifiEnterpriseConfig.Eap.NONE; + } + + /** * Helper function, identify if a configuration is linked * @hide */ diff --git a/wifi/java/android/net/wifi/passpoint/WifiPasspointManager.java b/wifi/java/android/net/wifi/passpoint/WifiPasspointManager.java index b9b17eb..0245a3d 100644 --- a/wifi/java/android/net/wifi/passpoint/WifiPasspointManager.java +++ b/wifi/java/android/net/wifi/passpoint/WifiPasspointManager.java @@ -262,7 +262,7 @@ public class WifiPasspointManager { for (ScanResult sr : mAnqpRequest) if (sr.BSSID.equals(result.bssid)) { Log.d(TAG, "find hit " + result.bssid); - sr.passpoint = result; + /* sr.passpoint = result; */ mAnqpRequest.remove(sr); Log.d(TAG, "mAnqpRequest.len=" + mAnqpRequest.size()); break; |