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

Commit a414573d authored by Jeffrey Huang's avatar Jeffrey Huang Committed by Android (Google) Code Review
Browse files

Merge "Move iccid number to sim status dialog"

parents ba4c4575 5b8202a2
Loading
Loading
Loading
Loading
+1 −11
Original line number Diff line number Diff line
@@ -69,6 +69,7 @@

        </LinearLayout>

        <!-- These items are for GSM and LTE enabled CDMA phones -->
        <LinearLayout
            android:id="@+id/gsm_settings"
            android:orientation="vertical"
@@ -99,16 +100,5 @@
                android:layout_height="wrap_content"/>
        </LinearLayout>

        <TextView
            style="@style/device_info_dialog_label"
            android:id="@+id/icc_id_label"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/status_icc_id"/>
        <TextView
            style="@style/device_info_dialog_value"
            android:id="@+id/icc_id_value"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
    </LinearLayout>
</ScrollView>
 No newline at end of file
+12 −0
Original line number Diff line number Diff line
@@ -128,5 +128,17 @@
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/device_info_not_available"/>

        <TextView
            style="@style/device_info_dialog_label"
            android:id="@+id/icc_id_label"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="@string/status_icc_id"/>
        <TextView
            style="@style/device_info_dialog_value"
            android:id="@+id/icc_id_value"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"/>
    </LinearLayout>
</ScrollView>
+1 −10
Original line number Diff line number Diff line
@@ -44,10 +44,6 @@ public class ImeiInfoDialogController {
    @VisibleForTesting
    static final int ID_MEID_NUMBER_VALUE = R.id.meid_number_value;
    @VisibleForTesting
    static final int ID_ICC_ID_LABEL = R.id.icc_id_label;
    @VisibleForTesting
    static final int ID_ICC_ID_VALUE = R.id.icc_id_value;
    @VisibleForTesting
    static final int ID_IMEI_VALUE = R.id.imei_value;
    @VisibleForTesting
    static final int ID_IMEI_SV_VALUE = R.id.imei_sv_value;
@@ -108,8 +104,7 @@ public class ImeiInfoDialogController {
        mDialog.setText(ID_PRL_VERSION_VALUE, getCdmaPrlVersion());

        if (isCdmaLteEnabled()) {
            // Show ICC ID and IMEI for LTE device
            mDialog.setText(ID_ICC_ID_VALUE, mSubscriptionInfo.getIccId());
            // Show IMEI for LTE device
            mDialog.setText(ID_IMEI_VALUE,
                    getTextAsDigits(mTelephonyManager.getImei(mSlotId)));
            mDialog.setText(ID_IMEI_SV_VALUE,
@@ -117,8 +112,6 @@ public class ImeiInfoDialogController {
        } else {
            // device is not GSM/UMTS, do not display GSM/UMTS features
            mDialog.removeViewFromScreen(ID_GSM_SETTINGS);
            mDialog.removeViewFromScreen(ID_ICC_ID_LABEL);
            mDialog.removeViewFromScreen(ID_ICC_ID_VALUE);
        }
    }

@@ -128,8 +121,6 @@ public class ImeiInfoDialogController {
                getTextAsDigits(mTelephonyManager.getDeviceSoftwareVersion(mSlotId)));
        // device is not CDMA, do not display CDMA features
        mDialog.removeViewFromScreen(ID_CDMA_SETTINGS);
        mDialog.removeViewFromScreen(ID_ICC_ID_LABEL);
        mDialog.removeViewFromScreen(ID_ICC_ID_VALUE);
    }

    private SubscriptionInfo getSubscriptionInfo(Context context, int slotId) {
+30 −0
Original line number Diff line number Diff line
@@ -16,6 +16,7 @@

package com.android.settings.deviceinfo.simstatus;

import static android.content.Context.CARRIER_CONFIG_SERVICE;
import static android.content.Context.TELEPHONY_SERVICE;

import android.Manifest;
@@ -26,9 +27,11 @@ import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.os.UserHandle;
import android.support.annotation.NonNull;
import android.support.annotation.VisibleForTesting;
import android.telephony.CarrierConfigManager;
import android.telephony.CellBroadcastMessage;
import android.telephony.PhoneStateListener;
import android.telephony.ServiceState;
@@ -70,6 +73,10 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
    final static int CELLULAR_NETWORK_TYPE_VALUE_ID = R.id.network_type_value;
    @VisibleForTesting
    final static int ROAMING_INFO_VALUE_ID = R.id.roaming_state_value;
    @VisibleForTesting
    final static int ICCID_INFO_LABEL_ID = R.id.icc_id_label;
    @VisibleForTesting
    final static int ICCID_INFO_VALUE_ID = R.id.icc_id_value;

    private final static String CB_AREA_INFO_RECEIVED_ACTION =
            "com.android.cellbroadcastreceiver.CB_AREA_INFO_RECEIVED";
@@ -80,6 +87,7 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
    private final SimStatusDialogFragment mDialog;
    private final SubscriptionInfo mSubscriptionInfo;
    private final TelephonyManager mTelephonyManager;
    private final CarrierConfigManager mCarrierConfigManager;
    private final Resources mRes;
    private final Context mContext;

@@ -114,6 +122,9 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
        mSubscriptionInfo = getPhoneSubscriptionInfo(slotId);
        mTelephonyManager = (TelephonyManager) mContext.getSystemService(
                TELEPHONY_SERVICE);
        mCarrierConfigManager = (CarrierConfigManager) mContext.getSystemService(
                CARRIER_CONFIG_SERVICE);

        mRes = mContext.getResources();

        if (lifecycle != null) {
@@ -136,6 +147,7 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
        updateSignalStrength(getSignalStrength());
        updateNetworkType();
        updateRoamingStatus(serviceState);
        updateIccidNumber();
    }

    @Override
@@ -313,6 +325,19 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
        }
    }

    private void updateIccidNumber() {
        final int subscriptionId = mSubscriptionInfo.getSubscriptionId();
        final PersistableBundle carrierConfig = mCarrierConfigManager.getConfigForSubId(subscriptionId);
        final boolean showIccId = carrierConfig.getBoolean(
                CarrierConfigManager.KEY_SHOW_ICCID_IN_SIM_STATUS_BOOL);
        if (!showIccId) {
            mDialog.removeSettingFromScreen(ICCID_INFO_LABEL_ID);
            mDialog.removeSettingFromScreen(ICCID_INFO_VALUE_ID);
        } else {
            mDialog.setText(ICCID_INFO_VALUE_ID, getSimSerialNumber(subscriptionId));
        }
    }

    private SubscriptionInfo getPhoneSubscriptionInfo(int slotId) {
        final List<SubscriptionInfo> subscriptionInfoList = SubscriptionManager.from(
                mContext).getActiveSubscriptionInfoList();
@@ -372,4 +397,9 @@ public class SimStatusDialogController implements LifecycleObserver, OnResume, O
    SignalStrength getSignalStrength() {
        return mTelephonyManager.getSignalStrength();
    }

    @VisibleForTesting
    String getSimSerialNumber(int subscriptionId) {
        return mTelephonyManager.getSimSerialNumber(subscriptionId);
    }
}
+0 −9
Original line number Diff line number Diff line
@@ -18,8 +18,6 @@ package com.android.settings.deviceinfo.imei;

import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_CDMA_SETTINGS;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_GSM_SETTINGS;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_ICC_ID_LABEL;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_ICC_ID_VALUE;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_IMEI_SV_VALUE;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_IMEI_VALUE;
import static com.android.settings.deviceinfo.imei.ImeiInfoDialogController.ID_MEID_NUMBER_VALUE;
@@ -58,7 +56,6 @@ public class ImeiInfoDialogControllerTest {
    private static final String MEID_NUMBER = "12871234124";
    private static final String IMEI_NUMBER = "2341982751254";
    private static final String MIN_NUMBER = "123417851315";
    private static final String ICCID_NUMBER = "3845672472";
    private static final String IMEI_SV_NUMBER = "12";

    @Mock
@@ -83,7 +80,6 @@ public class ImeiInfoDialogControllerTest {
        doReturn(PRL_VERSION).when(mController).getCdmaPrlVersion();
        doReturn(MEID_NUMBER).when(mController).getMeid();
        when(mTelephonyManager.getCdmaMin(anyInt())).thenReturn(MIN_NUMBER);
        when(mSubscriptionInfo.getIccId()).thenReturn(ICCID_NUMBER);
        when(mTelephonyManager.getDeviceSoftwareVersion(anyInt())).thenReturn(IMEI_SV_NUMBER);
        when(mTelephonyManager.getImei(anyInt())).thenReturn(IMEI_NUMBER);
    }
@@ -98,7 +94,6 @@ public class ImeiInfoDialogControllerTest {
        verify(mDialog).setText(ID_MEID_NUMBER_VALUE, MEID_NUMBER);
        verify(mDialog).setText(ID_MIN_NUMBER_VALUE, MIN_NUMBER);
        verify(mDialog).setText(ID_PRL_VERSION_VALUE, PRL_VERSION);
        verify(mDialog).setText(ID_ICC_ID_VALUE, ICCID_NUMBER);
        verify(mDialog).setText(eq(ID_IMEI_VALUE), any());
        verify(mDialog).setText(eq(ID_IMEI_SV_VALUE), any());
    }
@@ -114,8 +109,6 @@ public class ImeiInfoDialogControllerTest {
        verify(mDialog).setText(ID_MIN_NUMBER_VALUE, MIN_NUMBER);
        verify(mDialog).setText(ID_PRL_VERSION_VALUE, PRL_VERSION);
        verify(mDialog).removeViewFromScreen(ID_GSM_SETTINGS);
        verify(mDialog).removeViewFromScreen(ID_ICC_ID_VALUE);
        verify(mDialog).removeViewFromScreen(ID_ICC_ID_LABEL);
    }

    @Test
@@ -127,7 +120,5 @@ public class ImeiInfoDialogControllerTest {
        verify(mDialog).setText(eq(ID_IMEI_VALUE), any());
        verify(mDialog).setText(eq(ID_IMEI_SV_VALUE), any());
        verify(mDialog).removeViewFromScreen(ID_CDMA_SETTINGS);
        verify(mDialog).removeViewFromScreen(ID_ICC_ID_VALUE);
        verify(mDialog).removeViewFromScreen(ID_ICC_ID_LABEL);
    }
}
Loading