Added Cellular Data for Multi-Sim Data Usage
+ Bug Fix: SimSettings would crash if a SIM was not in the first slot.
Change-Id: Iee75ea78dde72dc7d2d588caff1ddd451347a8f5
diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java
index ba0d24d..6ee0ef0 100644
--- a/src/com/android/settings/DataUsageSummary.java
+++ b/src/com/android/settings/DataUsageSummary.java
@@ -941,7 +941,8 @@
mMobileDataEnabled = null;
} else {
//SUB SELECT
- isEnable = mTelephonyManager.getDataEnabled() && isMobileDataAvailable(subId);
+ isEnable = mTelephonyManager.getDataEnabled()
+ && (subId == SubscriptionManager.getDefaultDataSubId());
}
return isEnable;
}
@@ -2594,8 +2595,21 @@
}
//SUB SELECT
- private boolean isMobileDataAvailable(int subId) {
+ private boolean isMobileDataAvailable(long subId) {
int[] subIds = SubscriptionManager.getSubId(PhoneConstants.SUB1);
- return subIds[0] == subId;
+ if (subIds != null && subIds[0] == subId) {
+ return true;
+ }
+
+ subIds = SubscriptionManager.getSubId(PhoneConstants.SUB2);
+ if (subIds != null && subIds[0] == subId) {
+ return true;
+ }
+
+ subIds = SubscriptionManager.getSubId(PhoneConstants.SUB3);
+ if (subIds != null && subIds[0] == subId) {
+ return true;
+ }
+ return false;
}
}