From 7d4f7799ca22020eac3abbade8b39aafd6b2aa64 Mon Sep 17 00:00:00 2001 From: Josh Hou Date: Thu, 28 May 2020 23:32:37 +0800 Subject: [PATCH] Allow call forwarding number with prefixes to be dialed while on IMS roaming If the carrier supports call forwarding number prefixes to be allowed while on IMS roaming, then the number should be dialed and forwarded successfully Bug: 153413483 Test: Verify the call using *72 is dialed and forwarded successully Change-Id: Ia93dec2ebb11aa3ab8f48975a9b6f02089d1482b --- .../java/android/telephony/CarrierConfigManager.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java index 318b15293d8da..52f1e37e69f47 100755 --- a/telephony/java/android/telephony/CarrierConfigManager.java +++ b/telephony/java/android/telephony/CarrierConfigManager.java @@ -2344,6 +2344,16 @@ public class CarrierConfigManager { public static final String KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY = "call_forwarding_blocks_while_roaming_string_array"; + /** + * Call forwarding number prefixes defined by {@link + * #KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY} which will be allowed while the + * device is reporting that it is roaming and IMS is registered over LTE or Wi-Fi. + * By default this value is {@code true}. + * @hide + */ + public static final String KEY_SUPPORT_IMS_CALL_FORWARDING_WHILE_ROAMING_BOOL = + "support_ims_call_forwarding_while_roaming_bool"; + /** * The day of the month (1-31) on which the data cycle rolls over. *

@@ -4174,6 +4184,7 @@ public class CarrierConfigManager { sDefaults.putBoolean(KEY_SHOW_VIDEO_CALL_CHARGES_ALERT_DIALOG_BOOL, false); sDefaults.putStringArray(KEY_CALL_FORWARDING_BLOCKS_WHILE_ROAMING_STRING_ARRAY, null); + sDefaults.putBoolean(KEY_SUPPORT_IMS_CALL_FORWARDING_WHILE_ROAMING_BOOL, true); sDefaults.putInt(KEY_LTE_EARFCNS_RSRP_BOOST_INT, 0); sDefaults.putStringArray(KEY_BOOSTED_LTE_EARFCNS_STRING_ARRAY, null); sDefaults.putBoolean(KEY_USE_ONLY_RSRP_FOR_LTE_SIGNAL_BAR_BOOL, false);