Merge "WifiNetworkSuggestion setIsMetered change to tri-state" into rvc-dev am: 34de847886
Change-Id: Id8209f694e3fb388893207b32730d558a846c71b
This commit is contained in:
@@ -100,7 +100,7 @@ public final class WifiNetworkSuggestion implements Parcelable {
|
|||||||
/**
|
/**
|
||||||
* Whether this network is metered or not.
|
* Whether this network is metered or not.
|
||||||
*/
|
*/
|
||||||
private boolean mIsMetered;
|
private int mMeteredOverride;
|
||||||
/**
|
/**
|
||||||
* Priority of this network among other network suggestions provided by the app.
|
* Priority of this network among other network suggestions provided by the app.
|
||||||
* The lower the number, the higher the priority (i.e value of 0 = highest priority).
|
* The lower the number, the higher the priority (i.e value of 0 = highest priority).
|
||||||
@@ -156,7 +156,7 @@ public final class WifiNetworkSuggestion implements Parcelable {
|
|||||||
mIsHiddenSSID = false;
|
mIsHiddenSSID = false;
|
||||||
mIsAppInteractionRequired = false;
|
mIsAppInteractionRequired = false;
|
||||||
mIsUserInteractionRequired = false;
|
mIsUserInteractionRequired = false;
|
||||||
mIsMetered = false;
|
mMeteredOverride = WifiConfiguration.METERED_OVERRIDE_NONE;
|
||||||
mIsSharedWithUser = true;
|
mIsSharedWithUser = true;
|
||||||
mIsSharedWithUserSet = false;
|
mIsSharedWithUserSet = false;
|
||||||
mIsInitialAutojoinEnabled = true;
|
mIsInitialAutojoinEnabled = true;
|
||||||
@@ -421,14 +421,18 @@ public final class WifiNetworkSuggestion implements Parcelable {
|
|||||||
/**
|
/**
|
||||||
* Specifies whether this network is metered.
|
* Specifies whether this network is metered.
|
||||||
* <p>
|
* <p>
|
||||||
* <li>If not set, defaults to false (i.e not metered).</li>
|
* <li>If not set, defaults to detect automatically.</li>
|
||||||
*
|
*
|
||||||
* @param isMetered {@code true} to indicate that the network is metered, {@code false}
|
* @param isMetered {@code true} to indicate that the network is metered, {@code false}
|
||||||
* otherwise.
|
* for not metered.
|
||||||
* @return Instance of {@link Builder} to enable chaining of the builder method.
|
* @return Instance of {@link Builder} to enable chaining of the builder method.
|
||||||
*/
|
*/
|
||||||
public @NonNull Builder setIsMetered(boolean isMetered) {
|
public @NonNull Builder setIsMetered(boolean isMetered) {
|
||||||
mIsMetered = isMetered;
|
if (isMetered) {
|
||||||
|
mMeteredOverride = WifiConfiguration.METERED_OVERRIDE_METERED;
|
||||||
|
} else {
|
||||||
|
mMeteredOverride = WifiConfiguration.METERED_OVERRIDE_NOT_METERED;
|
||||||
|
}
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -541,9 +545,7 @@ public final class WifiNetworkSuggestion implements Parcelable {
|
|||||||
|
|
||||||
wifiConfiguration.hiddenSSID = mIsHiddenSSID;
|
wifiConfiguration.hiddenSSID = mIsHiddenSSID;
|
||||||
wifiConfiguration.priority = mPriority;
|
wifiConfiguration.priority = mPriority;
|
||||||
wifiConfiguration.meteredOverride =
|
wifiConfiguration.meteredOverride = mMeteredOverride;
|
||||||
mIsMetered ? WifiConfiguration.METERED_OVERRIDE_METERED
|
|
||||||
: WifiConfiguration.METERED_OVERRIDE_NOT_METERED;
|
|
||||||
wifiConfiguration.carrierId = mCarrierId;
|
wifiConfiguration.carrierId = mCarrierId;
|
||||||
wifiConfiguration.trusted = !mIsNetworkUntrusted;
|
wifiConfiguration.trusted = !mIsNetworkUntrusted;
|
||||||
return wifiConfiguration;
|
return wifiConfiguration;
|
||||||
@@ -572,9 +574,7 @@ public final class WifiNetworkSuggestion implements Parcelable {
|
|||||||
wifiConfiguration.FQDN = mPasspointConfiguration.getHomeSp().getFqdn();
|
wifiConfiguration.FQDN = mPasspointConfiguration.getHomeSp().getFqdn();
|
||||||
wifiConfiguration.setPasspointUniqueId(mPasspointConfiguration.getUniqueId());
|
wifiConfiguration.setPasspointUniqueId(mPasspointConfiguration.getUniqueId());
|
||||||
wifiConfiguration.priority = mPriority;
|
wifiConfiguration.priority = mPriority;
|
||||||
wifiConfiguration.meteredOverride =
|
wifiConfiguration.meteredOverride = mMeteredOverride;
|
||||||
mIsMetered ? WifiConfiguration.METERED_OVERRIDE_METERED
|
|
||||||
: WifiConfiguration.METERED_OVERRIDE_NONE;
|
|
||||||
wifiConfiguration.trusted = !mIsNetworkUntrusted;
|
wifiConfiguration.trusted = !mIsNetworkUntrusted;
|
||||||
mPasspointConfiguration.setCarrierId(mCarrierId);
|
mPasspointConfiguration.setCarrierId(mCarrierId);
|
||||||
mPasspointConfiguration.setMeteredOverride(wifiConfiguration.meteredOverride);
|
mPasspointConfiguration.setMeteredOverride(wifiConfiguration.meteredOverride);
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ public class WifiNetworkSuggestionTest {
|
|||||||
.get(WifiConfiguration.KeyMgmt.NONE));
|
.get(WifiConfiguration.KeyMgmt.NONE));
|
||||||
assertTrue(suggestion.isAppInteractionRequired);
|
assertTrue(suggestion.isAppInteractionRequired);
|
||||||
assertFalse(suggestion.isUserInteractionRequired);
|
assertFalse(suggestion.isUserInteractionRequired);
|
||||||
assertEquals(WifiConfiguration.METERED_OVERRIDE_NOT_METERED,
|
assertEquals(WifiConfiguration.METERED_OVERRIDE_NONE,
|
||||||
suggestion.wifiConfiguration.meteredOverride);
|
suggestion.wifiConfiguration.meteredOverride);
|
||||||
assertEquals(-1, suggestion.wifiConfiguration.priority);
|
assertEquals(-1, suggestion.wifiConfiguration.priority);
|
||||||
assertFalse(suggestion.isUserAllowedToManuallyConnect);
|
assertFalse(suggestion.isUserAllowedToManuallyConnect);
|
||||||
@@ -86,7 +86,7 @@ public class WifiNetworkSuggestionTest {
|
|||||||
suggestion.wifiConfiguration.preSharedKey);
|
suggestion.wifiConfiguration.preSharedKey);
|
||||||
assertTrue(suggestion.isAppInteractionRequired);
|
assertTrue(suggestion.isAppInteractionRequired);
|
||||||
assertFalse(suggestion.isUserInteractionRequired);
|
assertFalse(suggestion.isUserInteractionRequired);
|
||||||
assertEquals(WifiConfiguration.METERED_OVERRIDE_NOT_METERED,
|
assertEquals(WifiConfiguration.METERED_OVERRIDE_NONE,
|
||||||
suggestion.wifiConfiguration.meteredOverride);
|
suggestion.wifiConfiguration.meteredOverride);
|
||||||
assertEquals(0, suggestion.wifiConfiguration.priority);
|
assertEquals(0, suggestion.wifiConfiguration.priority);
|
||||||
assertFalse(suggestion.isUserAllowedToManuallyConnect);
|
assertFalse(suggestion.isUserAllowedToManuallyConnect);
|
||||||
@@ -123,6 +123,36 @@ public class WifiNetworkSuggestionTest {
|
|||||||
assertFalse(suggestion.isInitialAutoJoinEnabled);
|
assertFalse(suggestion.isInitialAutoJoinEnabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate correctness of WifiNetworkSuggestion object created by
|
||||||
|
* {@link WifiNetworkSuggestion.Builder#build()} for WPA_PSK network which requires
|
||||||
|
* user interaction and is not metered.
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void
|
||||||
|
testWifiNetworkSuggestionBuilderForWpa2PskNetworkWithNotMeteredAndReqUserInteraction() {
|
||||||
|
WifiNetworkSuggestion suggestion = new WifiNetworkSuggestion.Builder()
|
||||||
|
.setSsid(TEST_SSID)
|
||||||
|
.setWpa2Passphrase(TEST_PRESHARED_KEY)
|
||||||
|
.setIsUserInteractionRequired(true)
|
||||||
|
.setIsInitialAutojoinEnabled(false)
|
||||||
|
.setIsMetered(false)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
assertEquals("\"" + TEST_SSID + "\"", suggestion.wifiConfiguration.SSID);
|
||||||
|
assertTrue(suggestion.wifiConfiguration.allowedKeyManagement
|
||||||
|
.get(WifiConfiguration.KeyMgmt.WPA_PSK));
|
||||||
|
assertEquals("\"" + TEST_PRESHARED_KEY + "\"",
|
||||||
|
suggestion.wifiConfiguration.preSharedKey);
|
||||||
|
assertFalse(suggestion.isAppInteractionRequired);
|
||||||
|
assertTrue(suggestion.isUserInteractionRequired);
|
||||||
|
assertEquals(WifiConfiguration.METERED_OVERRIDE_NOT_METERED,
|
||||||
|
suggestion.wifiConfiguration.meteredOverride);
|
||||||
|
assertEquals(-1, suggestion.wifiConfiguration.priority);
|
||||||
|
assertTrue(suggestion.isUserAllowedToManuallyConnect);
|
||||||
|
assertFalse(suggestion.isInitialAutoJoinEnabled);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validate correctness of WifiNetworkSuggestion object created by
|
* Validate correctness of WifiNetworkSuggestion object created by
|
||||||
* {@link WifiNetworkSuggestion.Builder#build()} for OWE network.
|
* {@link WifiNetworkSuggestion.Builder#build()} for OWE network.
|
||||||
|
|||||||
Reference in New Issue
Block a user