From 5ac6650d4aa8dd6fa16a568bd86b0e38aca32161 Mon Sep 17 00:00:00 2001 From: Amin Shaikh Date: Fri, 6 Jan 2017 10:00:33 -0800 Subject: [PATCH] Expose fields in WifiConfiguration. hasNoInternetAccess and isNoInternetAccessExpected are key signals needed to determine whether Wi-Fi should be woken up for a given saved network. Test: make Bug: 33224312 Change-Id: I3f48735ebae72e15fbdb0a3057cf7c71fb0cc307 --- api/system-current.txt | 2 ++ wifi/java/android/net/wifi/WifiConfiguration.java | 12 ++++++++++++ 2 files changed, 14 insertions(+) diff --git a/api/system-current.txt b/api/system-current.txt index 7a0f24c3c9f92..b9125e57e4f0f 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -27279,6 +27279,8 @@ package android.net.wifi { public class WifiConfiguration implements android.os.Parcelable { ctor public WifiConfiguration(); method public int describeContents(); + method public boolean hasNoInternetAccess(); + method public boolean isNoInternetAccessExpected(); method public boolean isPasspoint(); method public void writeToParcel(android.os.Parcel, int); field public java.lang.String BSSID; diff --git a/wifi/java/android/net/wifi/WifiConfiguration.java b/wifi/java/android/net/wifi/WifiConfiguration.java index 3b7f7216c1478..958279badf755 100644 --- a/wifi/java/android/net/wifi/WifiConfiguration.java +++ b/wifi/java/android/net/wifi/WifiConfiguration.java @@ -608,6 +608,7 @@ public class WifiConfiguration implements Parcelable { * if there has been a report of it having no internet access, and, it never have had * internet access in the past. */ + @SystemApi public boolean hasNoInternetAccess() { return numNoInternetAccessReports > 0 && !validatedInternetAccess; } @@ -620,6 +621,17 @@ public class WifiConfiguration implements Parcelable { */ public boolean noInternetAccessExpected; + /** + * The WiFi configuration is expected not to have Internet access (e.g., a wireless printer, a + * Chromecast hotspot, etc.). This will be set if the user explicitly confirms a connection to + * this configuration and selects "don't ask again". + * @hide + */ + @SystemApi + public boolean isNoInternetAccessExpected() { + return noInternetAccessExpected; + } + /** * @hide * Last time the system was connected to this configuration.