blob: 21bfb9c51315b693aaba5623a1b5a7a599e08b13 [file] [log] [blame]
package com.android.server.wifi;
import android.content.Context;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import java.util.ArrayList;
import java.util.List;
public class SIMAccessor {
private final TelephonyManager mTelephonyManager;
private final SubscriptionManager mSubscriptionManager;
public SIMAccessor(Context context) {
mTelephonyManager = TelephonyManager.from(context);
mSubscriptionManager = SubscriptionManager.from(context);
}
public List<String> getMatchingImsis(IMSIParameter mccMnc) {
if (mccMnc == null) {
return null;
}
List<String> imsis = new ArrayList<>();
for (int subId : mSubscriptionManager.getActiveSubscriptionIdList()) {
String imsi = mTelephonyManager.getSubscriberId(subId);
if (imsi != null && mccMnc.matchesImsi(imsi)) {
imsis.add(imsi);
}
}
return imsis.isEmpty() ? null : imsis;
}
}