Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 171d1479 authored by Santos Cordon's avatar Santos Cordon Committed by Etan Cohen
Browse files

Update Multi-SIM setting to use getSubIdForPhoneAccount API.

Settings app should not be parsing the subId direction from the phone
account.  Instead this CL updates the settings app to use a new API to
grab the sub ID.

Change-Id: Iefd1831b04c061168fa2b135a2d296a27e3d4e92
parent bd54ef09
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ import android.telecom.PhoneAccountHandle;
import android.telecom.TelecomManager;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;
import android.view.KeyEvent;
@@ -210,6 +211,7 @@ public class SimDialogActivity extends Activity {
        ArrayList<SubscriptionInfo> callsSubInfoList = new ArrayList<SubscriptionInfo>();
        if (id == CALLS_PICK) {
            final TelecomManager telecomManager = TelecomManager.from(context);
            final TelephonyManager telephonyManager = TelephonyManager.from(context);
            final Iterator<PhoneAccountHandle> phoneAccounts =
                    telecomManager.getCallCapablePhoneAccounts().listIterator();

@@ -219,13 +221,9 @@ public class SimDialogActivity extends Activity {
                final PhoneAccount phoneAccount =
                        telecomManager.getPhoneAccount(phoneAccounts.next());
                list.add((String)phoneAccount.getLabel());
                // Added check to add entry into callsSubInforList only if phoneAccountId is int
                // Todo : Might have to change it later based on b/18904714
                if (phoneAccount.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION) &&
                        TextUtils.isDigitsOnly(phoneAccount.getAccountHandle().getId())) {
                    final String phoneAccountId = phoneAccount.getAccountHandle().getId();
                    final SubscriptionInfo sir = Utils.findRecordBySubId(context,
                            Integer.parseInt(phoneAccountId));
                int subId = telephonyManager.getSubIdForPhoneAccount(phoneAccount);
                if (subId != SubscriptionManager.INVALID_SUBSCRIPTION_ID) {
                    final SubscriptionInfo sir = Utils.findRecordBySubId(context, subId);
                    callsSubInfoList.add(sir);
                } else {
                    callsSubInfoList.add(null);