summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorandroid-build-team Robot <android-build-team-robot@google.com>2019-05-13 14:11:37 -0700
committerandroid-build-merger <android-build-merger@google.com>2019-05-13 14:11:37 -0700
commit26b003583521e68302ca49c0dab5561058f2c339 (patch)
treedd2eb1d933e9335d19dbb7f0d6d184aa4aa65dd5
parent920797b2c09e6bd9283f7ab1d9dedb05730b737f (diff)
parente983383c4d12f2f499fad9059c6050381e25b07f (diff)
downloadMms-pie-cuttlefish-testing.tar.gz
Snap for 5450365 from 129ad7feb8f0cb179e5befa5fb7245b9fc07c99d to pi-platform-releasepie-cuttlefish-testing
am: e983383c4d Change-Id: I7d60208383a69b8eb6147c891b75472e86d3263c
-rw-r--r--src/com/android/mms/service/MmsHttpClient.java15
-rw-r--r--src/com/android/mms/service/PhoneUtils.java10
2 files changed, 17 insertions, 8 deletions
diff --git a/src/com/android/mms/service/MmsHttpClient.java b/src/com/android/mms/service/MmsHttpClient.java
index 40e03cd..fc0d67e 100644
--- a/src/com/android/mms/service/MmsHttpClient.java
+++ b/src/com/android/mms/service/MmsHttpClient.java
@@ -456,7 +456,7 @@ public class MmsHttpClient {
* Example: "LINE1" returns the phone number, etc.
*
* @param macro The macro name
- * @param mmsConfig The MMS config which contains NAI suffix.
+ * @param mmsConfig The MMS config which contains NAI suffix and SIM country ISO to override.
* @param subId The subscription ID used to get line number, etc.
* @return The value of the defined macro
*/
@@ -465,7 +465,7 @@ public class MmsHttpClient {
if (MACRO_LINE1.equals(macro)) {
return getLine1(context, subId);
} else if (MACRO_LINE1NOCOUNTRYCODE.equals(macro)) {
- return getLine1NoCountryCode(context, subId);
+ return getLine1NoCountryCode(context, mmsConfig, subId);
} else if (MACRO_NAI.equals(macro)) {
return getNai(context, mmsConfig, subId);
}
@@ -485,13 +485,16 @@ public class MmsHttpClient {
/**
* Returns the phone number (without country code) for the given subscription ID.
*/
- private static String getLine1NoCountryCode(Context context, int subId) {
+ private static String getLine1NoCountryCode(Context context, Bundle mmsConfig, int subId) {
final TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(
Context.TELEPHONY_SERVICE);
+ String countryIsoOverride =
+ mmsConfig.getString(SmsManager.MMS_CONFIG_SIM_COUNTRY_ISO_OVERRIDE);
return PhoneUtils.getNationalNumber(
- telephonyManager,
- subId,
- telephonyManager.getLine1Number(subId));
+ telephonyManager,
+ subId,
+ telephonyManager.getLine1Number(subId),
+ countryIsoOverride);
}
/**
diff --git a/src/com/android/mms/service/PhoneUtils.java b/src/com/android/mms/service/PhoneUtils.java
index 54b7ba9..a736ee2 100644
--- a/src/com/android/mms/service/PhoneUtils.java
+++ b/src/com/android/mms/service/PhoneUtils.java
@@ -37,11 +37,17 @@ public class PhoneUtils {
* @param telephonyManager
* @param subId The SIM ID associated with this number
* @param phoneText The input phone number text
+ * @param countryIsoOverride String to override sim country iso.
* @return The formatted number or the original phone number if failed to parse
*/
public static String getNationalNumber(TelephonyManager telephonyManager, int subId,
- String phoneText) {
- final String country = getSimOrDefaultLocaleCountry(telephonyManager, subId);
+ String phoneText, String countryIsoOverride) {
+ String country = getSimOrDefaultLocaleCountry(telephonyManager, subId);
+
+ if (!TextUtils.isEmpty(countryIsoOverride)) {
+ country = countryIsoOverride.toUpperCase();
+ }
+
final PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.getInstance();
final Phonenumber.PhoneNumber parsed = getParsedNumber(phoneNumberUtil, phoneText, country);
if (parsed == null) {