From 921bf624622962ad862e470c11e0f6cc508f25a8 Mon Sep 17 00:00:00 2001 From: Jake Hamby Date: Mon, 4 Nov 2013 15:22:55 -0800 Subject: [PATCH] Add PhoneNumberUtils method for CDMA SMS number formatting. For CDMA networks, convert "+" prefix to "011" if the home network is using the North American Numbering Plan (NANP). New method is only used for MO SMS messages. Bug: 11360679 Change-Id: I534e0322b566de3fb49d7333bfcf62cfbfafb78a --- .../java/android/telephony/PhoneNumberUtils.java | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/telephony/java/android/telephony/PhoneNumberUtils.java b/telephony/java/android/telephony/PhoneNumberUtils.java index ab429fd4b7ae..e3a1aa697cd2 100644 --- a/telephony/java/android/telephony/PhoneNumberUtils.java +++ b/telephony/java/android/telephony/PhoneNumberUtils.java @@ -1957,6 +1957,27 @@ public class PhoneNumberUtils } /** + * Process phone number for CDMA, converting plus code using the home network number format. + * This is used for outgoing SMS messages. + * + * @param dialStr the original dial string + * @return the converted dial string + * @hide for internal use + */ + public static String cdmaCheckAndProcessPlusCodeForSms(String dialStr) { + if (!TextUtils.isEmpty(dialStr)) { + if (isReallyDialable(dialStr.charAt(0)) && isNonSeparator(dialStr)) { + String defaultIso = SystemProperties.get(PROPERTY_ICC_OPERATOR_ISO_COUNTRY, ""); + if (!TextUtils.isEmpty(defaultIso)) { + int format = getFormatTypeFromCountryCode(defaultIso); + return cdmaCheckAndProcessPlusCodeByNumberFormat(dialStr, format, format); + } + } + } + return dialStr; + } + + /** * This function should be called from checkAndProcessPlusCode only * And it is used for test purpose also. * -- 2.11.0