Merge "Support confirmation of international calls while on WFC only."
This commit is contained in:
@@ -1127,6 +1127,14 @@ public class CarrierConfigManager {
|
|||||||
public static final String KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL =
|
public static final String KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL =
|
||||||
"support_3gpp_call_forwarding_while_roaming_bool";
|
"support_3gpp_call_forwarding_while_roaming_bool";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When {@code true}, the user will be notified when they attempt to place an international call
|
||||||
|
* when the call is placed using wifi calling.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static final String KEY_NOTIFY_INTERNATIONAL_CALL_ON_WFC_BOOL =
|
||||||
|
"notify_international_call_on_wfc_bool";
|
||||||
|
|
||||||
/** The default value for every variable. */
|
/** The default value for every variable. */
|
||||||
private final static PersistableBundle sDefaults;
|
private final static PersistableBundle sDefaults;
|
||||||
|
|
||||||
@@ -1332,6 +1340,7 @@ public class CarrierConfigManager {
|
|||||||
sDefaults.putStringArray(KEY_FILTERED_CNAP_NAMES_STRING_ARRAY, null);
|
sDefaults.putStringArray(KEY_FILTERED_CNAP_NAMES_STRING_ARRAY, null);
|
||||||
sDefaults.putBoolean(KEY_EDITABLE_WFC_ROAMING_MODE_BOOL, false);
|
sDefaults.putBoolean(KEY_EDITABLE_WFC_ROAMING_MODE_BOOL, false);
|
||||||
sDefaults.putBoolean(KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL, true);
|
sDefaults.putBoolean(KEY_SUPPORT_3GPP_CALL_FORWARDING_WHILE_ROAMING_BOOL, true);
|
||||||
|
sDefaults.putBoolean(KEY_NOTIFY_INTERNATIONAL_CALL_ON_WFC_BOOL, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1438,6 +1438,30 @@ public class PhoneNumberUtils
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determines if a {@param phoneNumber} is international if dialed from
|
||||||
|
* {@param defaultCountryIso}.
|
||||||
|
*
|
||||||
|
* @param phoneNumber The phone number.
|
||||||
|
* @param defaultCountryIso The current country ISO.
|
||||||
|
* @return {@code true} if the number is international, {@code false} otherwise.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static boolean isInternationalNumber(String phoneNumber, String defaultCountryIso) {
|
||||||
|
// If it starts with # or * its not international.
|
||||||
|
if (phoneNumber.startsWith("#") || phoneNumber.startsWith("*")) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
PhoneNumberUtil util = PhoneNumberUtil.getInstance();
|
||||||
|
try {
|
||||||
|
PhoneNumber pn = util.parseAndKeepRawInput(phoneNumber, defaultCountryIso);
|
||||||
|
return pn.getCountryCode() != util.getCountryCodeForRegion(defaultCountryIso);
|
||||||
|
} catch (NumberParseException e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Format a phone number.
|
* Format a phone number.
|
||||||
* <p>
|
* <p>
|
||||||
|
|||||||
@@ -779,6 +779,21 @@ public class TelephonyManager {
|
|||||||
public static final String EVENT_DOWNGRADE_DATA_DISABLED =
|
public static final String EVENT_DOWNGRADE_DATA_DISABLED =
|
||||||
"android.telephony.event.EVENT_DOWNGRADE_DATA_DISABLED";
|
"android.telephony.event.EVENT_DOWNGRADE_DATA_DISABLED";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* {@link android.telecom.Connection} event used to indicate that the InCall UI should notify
|
||||||
|
* the user when an international call is placed while on WFC only.
|
||||||
|
* <p>
|
||||||
|
* Used when the carrier config value
|
||||||
|
* {@link CarrierConfigManager#KEY_NOTIFY_INTERNATIONAL_CALL_ON_WFC_BOOL} is true, the device
|
||||||
|
* is on WFC (VoLTE not available) and an international number is dialed.
|
||||||
|
* <p>
|
||||||
|
* Sent via {@link android.telecom.Connection#sendConnectionEvent(String, Bundle)}.
|
||||||
|
* The {@link Bundle} parameter is expected to be null when this connection event is used.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static final String EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC =
|
||||||
|
"android.telephony.event.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Response codes for sim activation. Activation completed successfully.
|
* Response codes for sim activation. Activation completed successfully.
|
||||||
* @hide
|
* @hide
|
||||||
|
|||||||
Reference in New Issue
Block a user