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

Commit b471e2c3 authored by SongFerngWang's avatar SongFerngWang
Browse files

Set setNetworkSelectionModeManual with AccessNetworkType into RIL/Modem

To new the OperatorInfo with the AccessNetworkType parameter.

Bug: 179636444
Bug: 182336960
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=NetworkSelectSettingsTest
Change-Id: If78fde9a22e91ee8b77e2063762166b2137ebbc1
parent 8debbfa8
Loading
Loading
Loading
Loading
+21 −1
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ package com.android.settings.network.telephony;
import static android.telephony.SignalStrength.NUM_SIGNAL_STRENGTH_BINS;

import android.content.Context;
import android.telephony.AccessNetworkConstants.AccessNetworkType;
import android.telephony.CellIdentity;
import android.telephony.CellIdentityGsm;
import android.telephony.CellIdentityLte;
@@ -180,7 +181,7 @@ public class NetworkOperatorPreference extends Preference {
    public OperatorInfo getOperatorInfo() {
        return new OperatorInfo(Objects.toString(mCellId.getOperatorAlphaLong(), ""),
                Objects.toString(mCellId.getOperatorAlphaShort(), ""),
                getOperatorNumeric());
                getOperatorNumeric(), getAccessNetworkTypeFromCellInfo(mCellInfo));
    }

    private int getIconIdForCell(CellInfo ci) {
@@ -225,6 +226,25 @@ public class NetworkOperatorPreference extends Preference {
        return null;
    }

    private int getAccessNetworkTypeFromCellInfo(CellInfo ci) {
        if (ci instanceof CellInfoGsm) {
            return AccessNetworkType.GERAN;
        }
        if (ci instanceof CellInfoCdma) {
            return AccessNetworkType.CDMA2000;
        }
        if ((ci instanceof CellInfoWcdma) || (ci instanceof CellInfoTdscdma)) {
            return AccessNetworkType.UTRAN;
        }
        if (ci instanceof CellInfoLte) {
            return AccessNetworkType.EUTRAN;
        }
        if (ci instanceof CellInfoNr) {
            return AccessNetworkType.NGRAN;
        }
        return AccessNetworkType.UNKNOWN;
    }

    private void updateIcon(int level) {
        if (!mUseNewApi || level < 0 || level >= NUM_SIGNAL_STRENGTH_BINS) {
            return;