Fixed incorrect merge service state

The existing logic for merging service state when device is on
IWLAN does not work properly on AP-assisted mode devices. Fixed
by copying the IWLAN preferred flag into IMS service state so
it can get the correct data RAT for AP-assisted mode devices.

Bug: 134706530
Test: WFC manual tests
Change-Id: Ic18934adb870a0114c913855cdb68e0ef33caa79
This commit is contained in:
Jack Yu
2019-06-12 11:00:16 -07:00
parent 01462c0b95
commit 5e640ac80e

View File

@@ -2035,4 +2035,18 @@ public class ServiceState implements Parcelable {
public void setIwlanPreferred(boolean isIwlanPreferred) { public void setIwlanPreferred(boolean isIwlanPreferred) {
mIsIwlanPreferred = isIwlanPreferred; mIsIwlanPreferred = isIwlanPreferred;
} }
/**
* @return {@code true} if any data network is preferred on IWLAN.
*
* Note only when this value is true, {@link #getDataNetworkType()} will return
* {@link TelephonyManager#NETWORK_TYPE_IWLAN} when AP-assisted mode device camps on both
* cellular and IWLAN. This value does not affect legacy mode devices as the data network
* type is directly reported by the modem.
*
* @hide
*/
public boolean isIwlanPreferred() {
return mIsIwlanPreferred;
}
} }