From f0d84e2e535a5f9f3454b7175e3212694bd691d8 Mon Sep 17 00:00:00 2001 From: PauloftheWest Date: Wed, 10 Dec 2014 08:50:54 -0800 Subject: [PATCH] Fixed a Data Usage crash Bug: 18364933 Change-Id: I80657c6541aec0b4706ef4aa229c9f858776aab2 --- src/com/android/settings/DataUsageSummary.java | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java index 3296ba1b72..7e9e8ff5f8 100644 --- a/src/com/android/settings/DataUsageSummary.java +++ b/src/com/android/settings/DataUsageSummary.java @@ -1176,21 +1176,29 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable }; private void handleMultiSimDataDialog() { - final SubscriptionInfo currentSir = getCurrentTabSubInfo(getActivity()); + final Context context = getActivity(); + final SubscriptionInfo currentSir = getCurrentTabSubInfo(context); final SubscriptionInfo nextSir = mSubscriptionManager.getActiveSubscriptionInfo( mSubscriptionManager.getDefaultDataSubId()); - if (currentSir.getSubscriptionId() == nextSir.getSubscriptionId()) { + // If the device is single SIM or is enabling data on the active data SIM then forgo + // the pop-up. + if (!Utils.showSimCardTile(context) || + (nextSir != null && currentSir.getSubscriptionId() == nextSir.getSubscriptionId())) { setMobileDataEnabled(true); updateBody(); return; } + final String previousName = (nextSir == null) + ? context.getResources().getString(R.string.sim_selection_required_pref) + : nextSir.getDisplayName().toString(); + AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setTitle(R.string.sim_change_data_title); builder.setMessage(getActivity().getResources().getString(R.string.sim_change_data_message, - currentSir.getDisplayName(), nextSir.getDisplayName())); + currentSir.getDisplayName(), previousName)); builder.setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() { @Override -- 2.11.0