diff options
author | Jack Yu <jackyu@google.com> | 2016-11-16 17:20:38 -0800 |
---|---|---|
committer | Brad Ebinger <breadley@google.com> | 2017-03-16 09:40:31 -0700 |
commit | 2b19b33fc1b02ed5a1062a0569c83900f80250a6 (patch) | |
tree | e5a76f20928735d6a9d74638b9dcda6213d18d01 | |
parent | fb688ca8113d6dae87e2d18ea29f09c630360c03 (diff) | |
download | ims-2b19b33fc1b02ed5a1062a0569c83900f80250a6.tar.gz |
Added configuration for VT downgrade/tear down when data disabled
Added a new flag that allows carriers to ignore data disabled
(e.g. data reaches limit or user disables data) so VT calls
will not be downgraded/torn down and VT service will not be
disabled.
bug: 32880745
Merged-In: Iad786b542c3db0cd300cef27a41e492e6888b639
Change-Id: Iad786b542c3db0cd300cef27a41e492e6888b639
-rw-r--r-- | src/java/com/android/ims/ImsManager.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java index e198df3a..a2810d19 100644 --- a/src/java/com/android/ims/ImsManager.java +++ b/src/java/com/android/ims/ImsManager.java @@ -821,8 +821,11 @@ public class ImsManager { boolean enabled = isVtEnabledByUser(mContext); boolean isNonTty = isNonTtyOrTtyOnVolteEnabled(mContext); boolean isDataEnabled = isDataEnabled(); + boolean ignoreDataEnabledChanged = getBooleanCarrierConfig(mContext, + CarrierConfigManager.KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS); - boolean isFeatureOn = available && enabled && isNonTty && isDataEnabled; + boolean isFeatureOn = available && enabled && isNonTty + && (ignoreDataEnabledChanged || isDataEnabled); log("updateVideoCallFeatureValue: available = " + available + ", enabled = " + enabled @@ -1529,8 +1532,10 @@ public class ImsManager { TelephonyManager.NETWORK_TYPE_LTE, turnOn ? 1 : 0, mImsConfigListener); if (isVtEnabledByPlatform(mContext)) { + boolean ignoreDataEnabledChanged = getBooleanCarrierConfig(mContext, + CarrierConfigManager.KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS); boolean enableViLte = turnOn && isVtEnabledByUser(mContext) && - isDataEnabled(); + (ignoreDataEnabledChanged || isDataEnabled()); config.setFeatureValue(ImsConfig.FeatureConstants.FEATURE_TYPE_VIDEO_OVER_LTE, TelephonyManager.NETWORK_TYPE_LTE, enableViLte ? 1 : 0, @@ -1875,6 +1880,8 @@ public class ImsManager { pw.println(" mConfigUpdated = " + mConfigUpdated); pw.println(" mImsServiceProxy = " + mImsServiceProxy); pw.println(" mDataEnabled = " + isDataEnabled()); + pw.println(" ignoreDataEnabledChanged = " + getBooleanCarrierConfig(mContext, + CarrierConfigManager.KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS)); pw.println(" isGbaValid = " + isGbaValid(mContext)); pw.println(" isImsTurnOffAllowed = " + isImsTurnOffAllowed()); |