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

Commit 26b11d44 authored by Pengquan Meng's avatar Pengquan Meng
Browse files

Improve CDNR log and remove duplicated codes

Add some logs to the legacy CDNR, also add the spn update records to the
local log so we will not lose the records due to the limited logcat
buffer size.

This also removed the duplicated codes from the legacy CDNR. Both the new
CDNR and legacy CDNR will use the same method to send the carrier
display name update.

Bug: 122921456
Test: build
Merged-In: I8ecf41ed7911a68ffef3d0e0b281a1e93ae0259e
Change-Id: I8ecf41ed7911a68ffef3d0e0b281a1e93ae0259e
(cherry picked from commit 7a27a962)
parent 1f520cee
Loading
Loading
Loading
Loading
+24 −14
Original line number Diff line number Diff line
@@ -340,6 +340,7 @@ public class ServiceStateTracker extends Handler {
    private final LocalLog mPhoneTypeLog = new LocalLog(10);
    private final LocalLog mRatLog = new LocalLog(20);
    private final LocalLog mRadioPowerLog = new LocalLog(20);
    private final LocalLog mCdnrLogs = new LocalLog(64);

    private Pattern mOperatorNameStringPattern;

@@ -2475,17 +2476,20 @@ public class ServiceStateTracker extends Handler {
                || !TextUtils.equals(data.getSpn(), mCurSpn)
                || !TextUtils.equals(data.getDataSpn(), mCurDataSpn)
                || !TextUtils.equals(data.getPlmn(), mCurPlmn)) {
            if (DBG) {
                log(String.format("updateSpnDisplay: changed sending intent, "
                                + "showPlmn='%b' plmn='%s' showSpn='%b' spn='%s' dataSpn='%s' "
                                + "subId='%d'",

            final String log = String.format("updateSpnDisplay: changed sending intent, "
                            + "rule=%d, showPlmn='%b', plmn='%s', showSpn='%b', spn='%s', "
                            + "dataSpn='%s', subId='%d'",
                    getCarrierNameDisplayBitmask(mSS),
                    data.shouldShowPlmn(),
                    data.getPlmn(),
                    data.shouldShowSpn(),
                    data.getSpn(),
                    data.getDataSpn(),
                        subId));
            }
                    subId);
            mCdnrLogs.log(log);
            if (DBG) log("updateSpnDisplay: " + log);

            Intent intent = new Intent(TelephonyIntents.SPN_STRINGS_UPDATED_ACTION);
            intent.putExtra(TelephonyIntents.EXTRA_SHOW_SPN, data.shouldShowSpn());
            intent.putExtra(TelephonyIntents.EXTRA_SPN, data.getSpn());
@@ -2636,6 +2640,7 @@ public class ServiceStateTracker extends Handler {
                showPlmn = !TextUtils.isEmpty(plmn) &&
                        ((rule & CARRIER_NAME_DISPLAY_BITMASK_SHOW_PLMN)
                                == CARRIER_NAME_DISPLAY_BITMASK_SHOW_PLMN);
                if (DBG) log("updateSpnDisplay: rawPlmn = " + plmn);
            } else {
                // Power off state, such as airplane mode, show plmn as "No service"
                showPlmn = true;
@@ -2654,6 +2659,7 @@ public class ServiceStateTracker extends Handler {
            showSpn = !noService && !TextUtils.isEmpty(spn)
                    && ((rule & CARRIER_NAME_DISPLAY_BITMASK_SHOW_SPN)
                    == CARRIER_NAME_DISPLAY_BITMASK_SHOW_SPN);
            if (DBG) log("updateSpnDisplay: rawSpn = " + spn);

            if (!TextUtils.isEmpty(spn) && !TextUtils.isEmpty(wfcVoiceSpnFormat) &&
                    !TextUtils.isEmpty(wfcDataSpnFormat)) {
@@ -2672,7 +2678,6 @@ public class ServiceStateTracker extends Handler {
                showPlmn = false;
            } else if (!TextUtils.isEmpty(plmn) && !TextUtils.isEmpty(wfcVoiceSpnFormat)) {
                // Show PLMN + Wi-Fi Calling if there is no valid SPN in the above case

                String originalPlmn = plmn.trim();
                plmn = String.format(wfcVoiceSpnFormat, originalPlmn);
            } else if (mSS.getVoiceRegState() == ServiceState.STATE_POWER_OFF
@@ -2726,12 +2731,12 @@ public class ServiceStateTracker extends Handler {

            // mOperatorAlpha contains the ERI text
            plmn = mSS.getOperatorAlpha();
            if (DBG) log("updateSpnDisplay: cdma rawPlmn = " + plmn);

            showPlmn = plmn != null;

            if (!TextUtils.isEmpty(plmn) && !TextUtils.isEmpty(wfcVoiceSpnFormat)) {
                // In Wi-Fi Calling mode show SPN+WiFi

                String originalPlmn = plmn.trim();
                plmn = String.format(wfcVoiceSpnFormat, originalPlmn);
            } else if (mCi.getRadioState() == TelephonyManager.RADIO_POWER_OFF) {
@@ -4987,7 +4992,12 @@ public class ServiceStateTracker extends Handler {

        mCdnr.dump(ipw);

        pw.println(" Roaming Log:");
        ipw.println(" Carrier Display Name update records:");
        ipw.increaseIndent();
        mCdnrLogs.dump(fd, ipw, args);
        ipw.decreaseIndent();

        ipw.println(" Roaming Log:");
        ipw.increaseIndent();
        mRoamingLog.dump(fd, ipw, args);
        ipw.decreaseIndent();