diff options
author | Jack Yu <jackyu@google.com> | 2016-11-15 12:41:12 -0800 |
---|---|---|
committer | Jack Yu <jackyu@google.com> | 2016-11-17 16:15:47 -0800 |
commit | a4e2afb6a96c5a2350586df3d6884dc80d87f2c4 (patch) | |
tree | cb80a815f70f523578faec283b50e01b96b6eedd | |
parent | ef212499e82b21ced2fd6fc170df91b08fd39838 (diff) | |
download | android_frameworks_opt_telephony-a4e2afb6a96c5a2350586df3d6884dc80d87f2c4.tar.gz android_frameworks_opt_telephony-a4e2afb6a96c5a2350586df3d6884dc80d87f2c4.tar.bz2 android_frameworks_opt_telephony-a4e2afb6a96c5a2350586df3d6884dc80d87f2c4.zip |
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: I8852d1f636d7cc73802119666b902b7df6a39e72
Change-Id: I977f1aa511c59f32446b4a76de3c6da54500adc1
-rw-r--r-- | src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java index 14a44d7a1..fe3a86aaf 100644 --- a/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java +++ b/src/java/com/android/internal/telephony/imsphone/ImsPhoneCallTracker.java @@ -268,6 +268,7 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { private boolean mSwitchingFgAndBgCalls = false; private ImsCall mCallExpectedToResume = null; private boolean mAllowEmergencyVideoCalls = false; + private boolean mIgnoreDataEnabledChangedForVideoCalls = false; /** * Listeners to changes in the phone state. Intended for use by other interested IMS components @@ -571,6 +572,8 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { CarrierConfigManager.KEY_SUPPORT_DOWNGRADE_VT_TO_AUDIO_BOOL); mNotifyHandoverVideoFromWifiToLTE = carrierConfig.getBoolean( CarrierConfigManager.KEY_NOTIFY_VT_HANDOVER_TO_WIFI_FAILURE_BOOL); + mIgnoreDataEnabledChangedForVideoCalls = carrierConfig.getBoolean( + CarrierConfigManager.KEY_IGNORE_DATA_ENABLED_CHANGED_FOR_VIDEO_CALLS); String[] mappings = carrierConfig .getStringArray(CarrierConfigManager.KEY_IMS_REASONINFO_MAPPING_STRING_ARRAY); @@ -2728,8 +2731,14 @@ public class ImsPhoneCallTracker extends CallTracker implements ImsPullCall { private void onDataEnabledChanged(boolean enabled, int reason) { log("onDataEnabledChanged: enabled=" + enabled + ", reason=" + reason); + ImsManager.getInstance(mPhone.getContext(), mPhone.getPhoneId()).setDataEnabled(enabled); + if (mIgnoreDataEnabledChangedForVideoCalls) { + log("Ignore data " + ((enabled) ? "enabled" : "disabled") + " due to carrier policy."); + return; + } + if (!enabled) { int reasonCode; if (reason == DataEnabledSettings.REASON_POLICY_DATA_ENABLED) { |