Merge "Usage Settings: Fix NPE when subscriberId is Null." into sc-dev am: 787685b2cc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14847052 Change-Id: I425454a57490bdb44ebbd01dbf35cc48fba94762
This commit is contained in:
@@ -111,9 +111,13 @@ public class SettingsDumpService extends Service {
|
||||
for (SubscriptionInfo info : manager.getAvailableSubscriptionInfoList()) {
|
||||
telephonyManager = telephonyManager
|
||||
.createForSubscriptionId(info.getSubscriptionId());
|
||||
NetworkTemplate carrier = NetworkTemplate.buildTemplateCarrierMetered(
|
||||
telephonyManager.getSubscriberId());
|
||||
final JSONObject usage = dumpDataUsage(carrier, controller);
|
||||
String subscriberId = telephonyManager.getSubscriberId();
|
||||
// The null subscriberId means that no any mobile/carrier network will be matched.
|
||||
// Using old API: buildTemplateMobileAll for the null subscriberId to avoid NPE.
|
||||
NetworkTemplate template = subscriberId != null
|
||||
? NetworkTemplate.buildTemplateCarrierMetered(subscriberId)
|
||||
: NetworkTemplate.buildTemplateMobileAll(subscriberId);
|
||||
final JSONObject usage = dumpDataUsage(template, controller);
|
||||
usage.put("subId", info.getSubscriptionId());
|
||||
array.put(usage);
|
||||
}
|
||||
|
@@ -73,7 +73,10 @@ public class DataUsageLib {
|
||||
|
||||
private static NetworkTemplate getMobileTemplateForSubId(
|
||||
TelephonyManager telephonyManager, int subId) {
|
||||
return NetworkTemplate.buildTemplateCarrierMetered(
|
||||
telephonyManager.getSubscriberId(subId));
|
||||
// The null subscriberId means that no any mobile/carrier network will be matched.
|
||||
// Using old API: buildTemplateMobileAll for the null subscriberId to avoid NPE.
|
||||
String subscriberId = telephonyManager.getSubscriberId(subId);
|
||||
return subscriberId != null ? NetworkTemplate.buildTemplateCarrierMetered(subscriberId)
|
||||
: NetworkTemplate.buildTemplateMobileAll(subscriberId);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user