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

Commit 0183fb53 authored by Wink Saville's avatar Wink Saville
Browse files

Additional changes to SubscriptionManager API as per API council.

bug: 17575308
Change-Id: Idd98aa46c15a9219ccf28091c62602ac8bf16c62
parent 9209ce85
Loading
Loading
Loading
Loading
+18 −13
Original line number Diff line number Diff line
@@ -195,6 +195,7 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
    private INetworkStatsService mStatsService;
    private NetworkPolicyManager mPolicyManager;
    private TelephonyManager mTelephonyManager;
    private SubscriptionManager mSubscriptionManager;

    private INetworkStatsSession mStatsSession;

@@ -286,13 +287,14 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
                ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
        mPolicyManager = NetworkPolicyManager.from(context);
        mTelephonyManager = TelephonyManager.from(context);
        mSubscriptionManager = SubscriptionManager.from(context);

        mPrefs = getActivity().getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE);

        mPolicyEditor = new NetworkPolicyEditor(mPolicyManager);
        mPolicyEditor.read();

        mSubInfoList = SimSettings.getSortedSubInfoList(getActivity());
        mSubInfoList = mSubscriptionManager.getActiveSubscriptionInfoList();
        mMobileTagMap = initMobileTabTag(mSubInfoList);

        try {
@@ -942,7 +944,7 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        } else {
            //SUB SELECT
            isEnable = mTelephonyManager.getDataEnabled()
                && (subId == SubscriptionManager.getDefaultDataSubId());
                && (subId == mSubscriptionManager.getDefaultDataSubId());
        }
        return isEnable;
    }
@@ -1131,8 +1133,8 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable

    private void handleMultiSimDataDialog() {
        final SubscriptionInfo currentSir = getCurrentTabSubInfo(getActivity());
        final SubscriptionInfo nextSir = SubscriptionManager.getSubscriptionInfoForSubscriber(
                SubscriptionManager.getDefaultDataSubId());
        final SubscriptionInfo nextSir = mSubscriptionManager.getActiveSubscriptionInfo(
                mSubscriptionManager.getDefaultDataSubId());

        if (currentSir.getSubscriptionId() == nextSir.getSubscriptionId()) {
            setMobileDataEnabled(true);
@@ -1149,7 +1151,7 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        builder.setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int id) {
                SubscriptionManager.setDefaultDataSubId(currentSir.getSubscriptionId());
                mSubscriptionManager.setDefaultDataSubId(currentSir.getSubscriptionId());
                setMobileDataEnabled(true);
                updateBody();
            }
@@ -2246,7 +2248,7 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        final NetworkTemplate template = intent.getParcelableExtra(EXTRA_NETWORK_TEMPLATE);
        if (template == null) {
            final int subId = intent.getIntExtra(PhoneConstants.SUBSCRIPTION_KEY,
                    SubscriptionManager.INVALID_SUB_ID);
                    SubscriptionManager.INVALID_SUBSCRIPTION_ID);
            if (SubscriptionManager.isValidSubId(subId)) {
                return TAB_MOBILE + String.valueOf(subId);
            }
@@ -2339,8 +2341,9 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        final ConnectivityManager conn = ConnectivityManager.from(context);
        final TelephonyManager tele = TelephonyManager.from(context);

        final List<SubscriptionInfo> subInfoList = SubscriptionManager.getActiveSubscriptionInfoList();
        // No activated Subscription
        final List<SubscriptionInfo> subInfoList =
                SubscriptionManager.from(context).getActiveSubscriptionInfoList();
        // No activated Subscriptions
        if (subInfoList == null) {
            return false;
        }
@@ -2586,7 +2589,7 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        };

        private void addMobileTab(Context context, List<SubscriptionInfo> subInfoList) {
            if (subInfoList != null) {
            if (subInfoList != null && mMobileTagMap != null) {
                for (SubscriptionInfo subInfo : mSubInfoList) {
                    if (hasReadyMobileRadio(context, subInfo.getSubscriptionId())) {
                        mTabHost.addTab(buildTabSpec(mMobileTagMap.get(subInfo.getSubscriptionId()),
@@ -2634,12 +2637,14 @@ public class DataUsageSummary extends HighlightingFragment implements Indexable
        }

        private int getSubId(String currentTab) {
            if (mMobileTagMap != null) {
                Set<Integer> set = mMobileTagMap.keySet();
                for (Integer subId : set) {
                    if (mMobileTagMap.get(subId).equals(currentTab)) {
                        return subId;
                    }
                }
            }
            Log.e(TAG, "currentTab = " + currentTab + " non mobile tab called this function");
            return -1;
        }
+2 −2
Original line number Diff line number Diff line
@@ -215,7 +215,7 @@ public class IccLockSettings extends PreferenceActivity
            mTabHost.clearAllTabs();

            for (int i = 0; i < numSims; ++i) {
                final SubscriptionInfo subInfo = Utils.findRecordBySlotId(i);
                final SubscriptionInfo subInfo = Utils.findRecordBySlotId(this, i);
                mTabHost.addTab(buildTabSpec(String.valueOf(i),
                        String.valueOf(subInfo == null
                            ? context.getString(R.string.sim_editor_title, i + 1)
@@ -469,7 +469,7 @@ public class IccLockSettings extends PreferenceActivity
        @Override
        public void onTabChanged(String tabId) {
            final int slotId = Integer.parseInt(tabId);
            final SubscriptionInfo sir = Utils.findRecordBySlotId(slotId);
            final SubscriptionInfo sir = Utils.findRecordBySlotId(getBaseContext(), slotId);

            mPhone = (sir == null) ? null
                : PhoneFactory.getPhone(SubscriptionManager.getPhoneId(sir.getSubscriptionId()));
+6 −2
Original line number Diff line number Diff line
@@ -111,6 +111,7 @@ public class SecuritySettings extends SettingsPreferenceFragment
    private static final boolean ONLY_ONE_TRUST_AGENT = true;

    private DevicePolicyManager mDPM;
    private SubscriptionManager mSubscriptionManager;

    private ChooseLockSettingsHelper mChooseLockSettingsHelper;
    private LockPatternUtils mLockPatternUtils;
@@ -136,6 +137,8 @@ public class SecuritySettings extends SettingsPreferenceFragment
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        mSubscriptionManager = SubscriptionManager.from(getActivity());

        mLockPatternUtils = new LockPatternUtils(getActivity());

        mDPM = (DevicePolicyManager)getSystemService(Context.DEVICE_POLICY_SERVICE);
@@ -370,9 +373,10 @@ public class SecuritySettings extends SettingsPreferenceFragment
    /* Return true if a SIM is ready for locking.
     * TODO: consider adding to TelephonyManager or SubscritpionManasger.
     */
    private static boolean isSimReady() {
    private boolean isSimReady() {
        int simState = TelephonyManager.SIM_STATE_UNKNOWN;
        final List<SubscriptionInfo> subInfoList = SubscriptionManager.getActiveSubscriptionInfoList();
        final List<SubscriptionInfo> subInfoList =
                mSubscriptionManager.getActiveSubscriptionInfoList();
        if (subInfoList != null) {
            for (SubscriptionInfo subInfo : subInfoList) {
                simState = TelephonyManager.getDefault().getSimState(subInfo.getSimSlotIndex());
+21 −17
Original line number Diff line number Diff line
@@ -988,9 +988,10 @@ public final class Utils {
     * finds a record with subId.
     * Since the number of SIMs are few, an array is fine.
     */
    public static SubscriptionInfo findRecordBySubId(final int subId) {
    public static SubscriptionInfo findRecordBySubId(Context context, final int subId) {
        final List<SubscriptionInfo> subInfoList =
                SubscriptionManager.getActiveSubscriptionInfoList();
                SubscriptionManager.from(context).getActiveSubscriptionInfoList();
        if (subInfoList != null) {
            final int subInfoLength = subInfoList.size();

            for (int i = 0; i < subInfoLength; ++i) {
@@ -999,6 +1000,7 @@ public final class Utils {
                    return sir;
                }
            }
        }

        return null;
    }
@@ -1007,9 +1009,10 @@ public final class Utils {
     * finds a record with slotId.
     * Since the number of SIMs are few, an array is fine.
     */
    public static SubscriptionInfo findRecordBySlotId(final int slotId) {
    public static SubscriptionInfo findRecordBySlotId(Context context, final int slotId) {
        final List<SubscriptionInfo> subInfoList =
                SubscriptionManager.getActiveSubscriptionInfoList();
                SubscriptionManager.from(context).getActiveSubscriptionInfoList();
        if (subInfoList != null) {
            final int subInfoLength = subInfoList.size();

            for (int i = 0; i < subInfoLength; ++i) {
@@ -1019,6 +1022,7 @@ public final class Utils {
                    return sir;
                }
            }
        }

        return null;
    }
+8 −5
Original line number Diff line number Diff line
@@ -42,9 +42,12 @@ public class ImeiInformation extends PreferenceActivity {
    private static final String KEY_IMEI = "imei";
    private static final String KEY_IMEI_SV = "imei_sv";

    private SubscriptionManager mSubscriptionManager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mSubscriptionManager = SubscriptionManager.from(this);
        final TelephonyManager telephonyManager =
            (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        initPreferenceScreen(telephonyManager.getSimCount());
@@ -100,17 +103,17 @@ public class ImeiInformation extends PreferenceActivity {
        }
    }

    private Phone getPhoneFromSlotId(int slotId) {
        final List<SubscriptionInfo> subInfos = SubscriptionManager.getSubscriptionInfoUsingSlotId(slotId);
    private Phone getPhoneFromSlotId(int slotIdx) {
        final SubscriptionInfo subInfo =
                mSubscriptionManager.getActiveSubscriptionInfoForSimSlotIndex(slotIdx);

        if (subInfos == null || subInfos.size() < 1) {
        if (subInfo == null) {
            return null;
        }

        final Phone[] phones = PhoneFactory.getPhones();
        for (int i = 0; i < phones.length; i++) {
            // Currently we only operate with the first subscription of a SIM.
            if (phones[i].getSubId() == subInfos.get(0).getSubscriptionId()) {
            if (phones[i].getSubId() == subInfo.getSubscriptionId()) {
                return phones[i];
            }
        }
Loading