Inline TextUtils.join(Iterable<CharSequence>).
DataUsageSummary seems to be the only place the deprecated hidden
method is used. This inlines the definition so the deprecated method
could be removed.
Change-Id: I63dc1de74e1df1119ba99f46bed5d016e07c87b5
diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java
index b3f7973..35a85b5 100644
--- a/src/com/android/settings/DataUsageSummary.java
+++ b/src/com/android/settings/DataUsageSummary.java
@@ -68,6 +68,8 @@
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
+import android.icu.impl.ICUResourceBundle;
+import android.icu.util.UResourceBundle;
import android.net.ConnectivityManager;
import android.net.INetworkPolicyManager;
import android.net.INetworkStatsService;
@@ -2576,7 +2578,18 @@
limited.add(getText(R.string.data_usage_list_none));
}
- return TextUtils.join(limited);
+ final ICUResourceBundle icuBundle = (ICUResourceBundle) UResourceBundle.
+ getBundleInstance(ICUResourceBundle.ICU_BASE_NAME);
+ final String listMiddlePattern =
+ icuBundle.getStringWithFallback("listPattern/standard/middle");
+ // The returned pattern is something like "{0}, {1}", from which we want
+ // to extract the ", " part.
+ final int firstClosingBrace = listMiddlePattern.indexOf('}');
+ final int lastOpeningBrace = listMiddlePattern.lastIndexOf('{');
+ final CharSequence delimiter = listMiddlePattern.substring(
+ firstClosingBrace+1, lastOpeningBrace);
+
+ return TextUtils.join(delimiter, limited);
}
/**