diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index edd8b78ac7b25..5e24442835a8f 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -101,6 +101,8 @@
Operation is restricted to fixed dialing numbers only.
+
+ Can not change call forwarding settings from your phone while you are roaming.
Service was enabled.
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 86eea9962d9b9..d4ba583932c69 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -727,6 +727,7 @@
+
diff --git a/telephony/java/android/telephony/CarrierConfigManager.java b/telephony/java/android/telephony/CarrierConfigManager.java
index a240bb1b602c9..585d5c158dc54 100644
--- a/telephony/java/android/telephony/CarrierConfigManager.java
+++ b/telephony/java/android/telephony/CarrierConfigManager.java
@@ -1047,6 +1047,15 @@ public class CarrierConfigManager {
public static final String KEY_EDITABLE_TETHER_APN_BOOL =
"editable_tether_apn_bool";
+ /**
+ * Indicates whether the carrier supports 3gpp call forwarding MMI codes while roaming. If
+ * false, the user will be notified that call forwarding is not available when the MMI code
+ * fails.
+ * @hide
+ */
+ public static final String KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL =
+ "support_3gpp_call_forwarding_while_roaming_bool";
+
/** The default value for every variable. */
private final static PersistableBundle sDefaults;
@@ -1229,6 +1238,7 @@ public class CarrierConfigManager {
sDefaults.putStringArray(KEY_CARRIER_WIFI_STRING_ARRAY, null);
sDefaults.putInt(KEY_PREF_NETWORK_NOTIFICATION_DELAY_INT, -1);
sDefaults.putBoolean(KEY_EDITABLE_TETHER_APN_BOOL, false);
+ sDefaults.putBoolean(KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL, true);
}
/**