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

Commit b13a4ef3 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Removed reference to RadioAccessFamily"

parents 3208f994 373b43c1
Loading
Loading
Loading
Loading
+89 −61
Original line number Diff line number Diff line
@@ -26,12 +26,12 @@ import android.os.Looper;
import android.os.PersistableBundle;
import android.provider.Settings;
import android.telephony.CarrierConfigManager;
import android.telephony.RadioAccessFamily;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
import android.text.TextUtils;
import android.util.Log;


import androidx.annotation.VisibleForTesting;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
@@ -42,6 +42,7 @@ import androidx.preference.PreferenceScreen;

import com.android.internal.telephony.Phone;
import com.android.internal.telephony.PhoneConstants;
import com.android.settings.network.telephony.TelephonyConstants.TelephonyManagerConstants;
import com.android.settings.R;

import java.util.ArrayList;
@@ -194,18 +195,18 @@ public class EnabledNetworkModePreferenceController extends
                            R.array.enabled_networks_cdma_values);
                } else {
                    switch (settingsNetworkMode) {
                        case TelephonyManager.NETWORK_MODE_CDMA_EVDO:
                        case TelephonyManager.NETWORK_MODE_CDMA_NO_EVDO:
                        case TelephonyManager.NETWORK_MODE_EVDO_NO_CDMA:
                        case TelephonyManagerConstants.NETWORK_MODE_CDMA_EVDO:
                        case TelephonyManagerConstants.NETWORK_MODE_CDMA_NO_EVDO:
                        case TelephonyManagerConstants.NETWORK_MODE_EVDO_NO_CDMA:
                            preference.setEntries(
                                    R.array.enabled_networks_cdma_no_lte_choices);
                            preference.setEntryValues(
                                    R.array.enabled_networks_cdma_no_lte_values);
                            break;
                        case TelephonyManager.NETWORK_MODE_GLOBAL:
                        case TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO:
                        case TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
                        case TelephonyManager.NETWORK_MODE_LTE_ONLY:
                        case TelephonyManagerConstants.NETWORK_MODE_GLOBAL:
                        case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO:
                        case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
                        case TelephonyManagerConstants.NETWORK_MODE_LTE_ONLY:
                            preference.setEntries(
                                    R.array.enabled_networks_cdma_only_lte_choices);
                            preference.setEntryValues(
@@ -279,7 +280,7 @@ public class EnabledNetworkModePreferenceController extends
    }

    /***
     * Preferred network list add 5G item.
     * Generate preferred network choices list for 5G
     *
     * @string/enabled_networks_cdma_choices
     *         Before            |        After
@@ -364,9 +365,9 @@ public class EnabledNetworkModePreferenceController extends
                new5gEntryValue = transformLteEntryValueTo5gEntryValue(oldEntryValue);
            } else if (mContext.getString(R.string.network_global).equals(oldEntry)) {
                //oldEntry: network_global
                //oldEntryValue: TelephonyManager.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA
                //oldEntryValue: TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA
                oldEntryValue = Integer.toString(
                        TelephonyManager.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA);
                        TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA);
            }

            if (!TextUtils.isEmpty(new5gEntry)) {
@@ -382,124 +383,151 @@ public class EnabledNetworkModePreferenceController extends
    }

    /**
     * LTE network mode transform to 5G network mode.
     * transform LTE network mode to 5G network mode.
     *
     * @param networkMode this is LTE network mode.
     * @return 5G network mode.
     * @param networkMode an LTE network mode without 5G.
     * @return the corresponding network mode with 5G.
     */
    private CharSequence transformLteEntryValueTo5gEntryValue(CharSequence networkMode) {
        int networkModeInt = Integer.valueOf(networkMode.toString());
        return Integer.toString(addNrToNetworkType(networkModeInt));
        return Integer.toString(addNrToLteNetworkType(networkModeInt));
    }
    private int addNrToLteNetworkType(int networkType) {
        switch(networkType) {
            case TelephonyManagerConstants.NETWORK_MODE_LTE_ONLY:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_GSM_WCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_WCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA;
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
                return TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
            default:
                return networkType; // not LTE
        }

    private int addNrToNetworkType(int networkType) {
        long networkTypeBitmasks = RadioAccessFamily.getRafFromNetworkType(networkType);
        networkTypeBitmasks |= mTelephonyManager.NETWORK_TYPE_BITMASK_NR;
        return RadioAccessFamily.getNetworkTypeFromRaf((int) networkTypeBitmasks);
    }

    /**
     * Sets the display string for the network mode choice and selects the corresponding item
     *
     * @param preference ListPreference for selecting the preferred network mode.
     * @param networkMode the current network mode. The current mode might not be an option in the
     *                    choice list. The nearest choice is selected instead
     */
    private void updatePreferenceValueAndSummary(ListPreference preference, int networkMode) {
        preference.setValue(Integer.toString(networkMode));
        switch (networkMode) {
            case TelephonyManager.NETWORK_MODE_TDSCDMA_WCDMA:
            case TelephonyManager.NETWORK_MODE_TDSCDMA_GSM_WCDMA:
            case TelephonyManager.NETWORK_MODE_TDSCDMA_GSM:
            case TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_GSM:
                preference.setValue(
                        Integer.toString(TelephonyManager.NETWORK_MODE_TDSCDMA_GSM_WCDMA));
                        Integer.toString(TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA));
                preference.setSummary(R.string.network_3G);
                break;
            case TelephonyManager.NETWORK_MODE_WCDMA_ONLY:
            case TelephonyManager.NETWORK_MODE_GSM_UMTS:
            case TelephonyManager.NETWORK_MODE_WCDMA_PREF:
            case TelephonyManagerConstants.NETWORK_MODE_WCDMA_ONLY:
            case TelephonyManagerConstants.NETWORK_MODE_GSM_UMTS:
            case TelephonyManagerConstants.NETWORK_MODE_WCDMA_PREF:
                if (!mIsGlobalCdma) {
                    preference.setValue(Integer.toString(TelephonyManager.NETWORK_MODE_WCDMA_PREF));
                    preference.setValue(Integer.toString(TelephonyManagerConstants.NETWORK_MODE_WCDMA_PREF));
                    preference.setSummary(R.string.network_3G);
                } else {
                    preference.setValue(Integer.toString(TelephonyManager
                    preference.setValue(Integer.toString(TelephonyManagerConstants
                            .NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA));
                    preference.setSummary(R.string.network_global);
                }
                break;
            case TelephonyManager.NETWORK_MODE_GSM_ONLY:
            case TelephonyManagerConstants.NETWORK_MODE_GSM_ONLY:
                if (!mIsGlobalCdma) {
                    preference.setValue(
                            Integer.toString(TelephonyManager.NETWORK_MODE_GSM_ONLY));
                            Integer.toString(TelephonyManagerConstants.NETWORK_MODE_GSM_ONLY));
                    preference.setSummary(R.string.network_2G);
                } else {
                    preference.setValue(
                            Integer.toString(TelephonyManager
                            Integer.toString(TelephonyManagerConstants
                                    .NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA));
                    preference.setSummary(R.string.network_global);
                }
                break;
            case TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA:
                if (MobileNetworkUtils.isWorldMode(mContext, mSubId)) {
                    preference.setSummary(
                            R.string.preferred_network_mode_lte_gsm_umts_summary);
                    break;
                }
            case TelephonyManager.NETWORK_MODE_LTE_ONLY:
            case TelephonyManager.NETWORK_MODE_LTE_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_ONLY:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_WCDMA:
                if (!mIsGlobalCdma) {
                    preference.setValue(
                            Integer.toString(TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA));
                            Integer.toString(TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA));
                    preference.setSummary(
                            mShow4GForLTE ? R.string.network_4G : R.string.network_lte);
                } else {
                    preference.setValue(
                            Integer.toString(TelephonyManager
                            Integer.toString(TelephonyManagerConstants
                                    .NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA));
                    preference.setSummary(R.string.network_global);
                }
                break;
            case TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO:
                if (MobileNetworkUtils.isWorldMode(mContext, mSubId)) {
                    preference.setSummary(
                            R.string.preferred_network_mode_lte_cdma_summary);
                } else {
                    preference.setValue(
                            Integer.toString(TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO));
                            Integer.toString(TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO));
                    preference.setSummary(
                            mDisplay5gList ? R.string.network_lte_pure : R.string.network_lte);
                }
                break;
            case TelephonyManager.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
                preference.setValue(Integer.toString(TelephonyManager
            case TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
                preference.setValue(Integer.toString(TelephonyManagerConstants
                        .NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA));
                preference.setSummary(R.string.network_3G);
                break;
            case TelephonyManager.NETWORK_MODE_CDMA_EVDO:
            case TelephonyManager.NETWORK_MODE_EVDO_NO_CDMA:
            case TelephonyManager.NETWORK_MODE_GLOBAL:
            case TelephonyManagerConstants.NETWORK_MODE_CDMA_EVDO:
            case TelephonyManagerConstants.NETWORK_MODE_EVDO_NO_CDMA:
            case TelephonyManagerConstants.NETWORK_MODE_GLOBAL:
                preference.setValue(
                        Integer.toString(TelephonyManager.NETWORK_MODE_CDMA_EVDO));
                        Integer.toString(TelephonyManagerConstants.NETWORK_MODE_CDMA_EVDO));
                preference.setSummary(R.string.network_3G);
                break;
            case TelephonyManager.NETWORK_MODE_CDMA_NO_EVDO:
            case TelephonyManagerConstants.NETWORK_MODE_CDMA_NO_EVDO:
                preference.setValue(
                        Integer.toString(TelephonyManager.NETWORK_MODE_CDMA_NO_EVDO));
                        Integer.toString(TelephonyManagerConstants.NETWORK_MODE_CDMA_NO_EVDO));
                preference.setSummary(R.string.network_1x);
                break;
            case TelephonyManager.NETWORK_MODE_TDSCDMA_ONLY:
            case TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_ONLY:
                preference.setValue(
                        Integer.toString(TelephonyManager.NETWORK_MODE_TDSCDMA_ONLY));
                        Integer.toString(TelephonyManagerConstants.NETWORK_MODE_TDSCDMA_ONLY));
                preference.setSummary(R.string.network_3G);
                break;
            case TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_GSM:
            case TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA:
            case TelephonyManager.NETWORK_MODE_LTE_TDSCDMA:
            case TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_WCDMA:
            case TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
            case TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
                if (MobileNetworkUtils.isTdscdmaSupported(mContext, mSubId)) {
                    preference.setValue(
                            Integer.toString(TelephonyManager
                            Integer.toString(TelephonyManagerConstants
                                    .NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA));
                    preference.setSummary(
                            mDisplay5gList ? R.string.network_lte_pure : R.string.network_lte);
                } else {
                    preference.setValue(
                            Integer.toString(TelephonyManager
                            Integer.toString(TelephonyManagerConstants
                                    .NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA));
                    if (mTelephonyManager.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA
                            || mIsGlobalCdma
@@ -516,15 +544,15 @@ public class EnabledNetworkModePreferenceController extends
                    }
                }
                break;
            case TelephonyManager.NETWORK_MODE_NR_LTE_CDMA_EVDO:
            case TelephonyManager.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO:
            case TelephonyManagerConstants.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
                preference.setValue(Integer.toString(networkMode));
                preference.setSummary(mContext.getString(R.string.network_5G)
                        + mContext.getString(R.string.network_recommended));
                break;
            case TelephonyManager.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA:
            case TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA:
                preference.setValue(
                        Integer.toString(TelephonyManager.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA));
                        Integer.toString(TelephonyManagerConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA));
                if (mTelephonyManager.getPhoneType() == PhoneConstants.PHONE_TYPE_CDMA
                        || mIsGlobalCdma
                        || MobileNetworkUtils.isWorldMode(mContext, mSubId)) {
+13 −12
Original line number Diff line number Diff line
@@ -56,6 +56,7 @@ import com.android.internal.util.ArrayUtils;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.network.telephony.TelephonyConstants.TelephonyManagerConstants;
import com.android.settingslib.development.DevelopmentSettingsEnabler;
import com.android.settingslib.graph.SignalDrawable;

@@ -305,8 +306,8 @@ public class MobileNetworkUtils {
                    context.getContentResolver(),
                    android.provider.Settings.Global.PREFERRED_NETWORK_MODE + subId,
                    Phone.PREFERRED_NT_MODE);
            if (settingsNetworkMode == TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA
                    || settingsNetworkMode == TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO) {
            if (settingsNetworkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA
                    || settingsNetworkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO) {
                return true;
            }

@@ -333,8 +334,8 @@ public class MobileNetworkUtils {
                android.provider.Settings.Global.PREFERRED_NETWORK_MODE + subId,
                Phone.PREFERRED_NT_MODE);
        if (isWorldMode(context, subId)) {
            if (networkMode == TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO
                    || networkMode == TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA) {
            if (networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO
                    || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA) {
                return true;
            } else if (shouldSpeciallyUpdateGsmCdma(context, subId)) {
                return true;
@@ -397,7 +398,7 @@ public class MobileNetworkUtils {
                context.getContentResolver(),
                android.provider.Settings.Global.PREFERRED_NETWORK_MODE + subId,
                Phone.PREFERRED_NT_MODE);
        if (networkMode == TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO
        if (networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO
                && isWorldMode(context, subId)) {
            return false;
        }
@@ -410,7 +411,7 @@ public class MobileNetworkUtils {
        }

        if (isWorldMode(context, subId)) {
            if (networkMode == TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA) {
            if (networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA) {
                return true;
            }
        }
@@ -515,12 +516,12 @@ public class MobileNetworkUtils {
                context.getContentResolver(),
                android.provider.Settings.Global.PREFERRED_NETWORK_MODE + subId,
                Phone.PREFERRED_NT_MODE);
        if (networkMode == TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_GSM
                || networkMode == TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA
                || networkMode == TelephonyManager.NETWORK_MODE_LTE_TDSCDMA
                || networkMode == TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_WCDMA
                || networkMode == TelephonyManager.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA
                || networkMode == TelephonyManager.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA) {
        if (networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM
                || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA
                || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA
                || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA
                || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA
                || networkMode == TelephonyManagerConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA) {
            if (!isTdscdmaSupported(context, subId) && isWorldMode(context, subId)) {
                return true;
            }
+24 −23

File changed.

Preview size limit exceeded, changes collapsed.

+139 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2020 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.android.settings.network.telephony;


/**
 * Contains hidden constants copied from the platform.
 */
public class TelephonyConstants {

    /**
     * Copied from {@link android.telephony.TelephonyManager}
     */
    public static class TelephonyManagerConstants {

        // Network modes are in turn copied from RILConstants
        // with one difference: NETWORK_MODE_CDMA is named NETWORK_MODE_CDMA_EVDO

        /** GSM, WCDMA (WCDMA preferred) */
        public static final int NETWORK_MODE_WCDMA_PREF = 0;

        /** GSM only */
        public static final int NETWORK_MODE_GSM_ONLY = 1;

        /** WCDMA only */
        public static final int NETWORK_MODE_WCDMA_ONLY = 2;

        /** GSM, WCDMA (auto mode, according to PRL) */
        public static final int NETWORK_MODE_GSM_UMTS = 3;

        /** CDMA and EvDo (auto mode, according to PRL)
         * this is NETWORK_MODE_CDMA in RILConstants.java
         */
        public static final int NETWORK_MODE_CDMA_EVDO = 4;

        /** CDMA only */
        public static final int NETWORK_MODE_CDMA_NO_EVDO = 5;

        /** EvDo only */
        public static final int NETWORK_MODE_EVDO_NO_CDMA = 6;

        /** GSM, WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
        public static final int NETWORK_MODE_GLOBAL = 7;

        /** LTE, CDMA and EvDo */
        public static final int NETWORK_MODE_LTE_CDMA_EVDO = 8;

        /** LTE, GSM and WCDMA */
        public static final int NETWORK_MODE_LTE_GSM_WCDMA = 9;

        /** LTE, CDMA, EvDo, GSM, and WCDMA */
        public static final int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10;

        /** LTE only mode. */
        public static final int NETWORK_MODE_LTE_ONLY = 11;

        /** LTE and WCDMA */
        public static final int NETWORK_MODE_LTE_WCDMA = 12;

        /** TD-SCDMA only */
        public static final int NETWORK_MODE_TDSCDMA_ONLY = 13;

        /** TD-SCDMA and WCDMA */
        public static final int NETWORK_MODE_TDSCDMA_WCDMA = 14;

        /** LTE and TD-SCDMA*/
        public static final int NETWORK_MODE_LTE_TDSCDMA = 15;

        /** TD-SCDMA and GSM */
        public static final int NETWORK_MODE_TDSCDMA_GSM = 16;

        /** TD-SCDMA, GSM and LTE */
        public static final int NETWORK_MODE_LTE_TDSCDMA_GSM = 17;

        /** TD-SCDMA, GSM and WCDMA */
        public static final int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18;

        /** LTE, TD-SCDMA and WCDMA */
        public static final int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19;

        /** LTE, TD-SCDMA, GSM, and WCDMA */
        public static final int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20;

        /** TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
        public static final int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21;

        /** LTE, TDCSDMA, CDMA, EVDO, GSM and WCDMA */
        public static final int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22;

        /** NR 5G only mode */
        public static final int NETWORK_MODE_NR_ONLY = 23;

        /** NR 5G, LTE */
        public static final int NETWORK_MODE_NR_LTE = 24;

        /** NR 5G, LTE, CDMA and EvDo */
        public static final int NETWORK_MODE_NR_LTE_CDMA_EVDO = 25;

        /** NR 5G, LTE, GSM and WCDMA */
        public static final int NETWORK_MODE_NR_LTE_GSM_WCDMA = 26;

        /** NR 5G, LTE, CDMA, EvDo, GSM and WCDMA */
        public static final int NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA = 27;

        /** NR 5G, LTE and WCDMA */
        public static final int NETWORK_MODE_NR_LTE_WCDMA = 28;

        /** NR 5G, LTE and TDSCDMA */
        public static final int NETWORK_MODE_NR_LTE_TDSCDMA = 29;

        /** NR 5G, LTE, TD-SCDMA and GSM */
        public static final int NETWORK_MODE_NR_LTE_TDSCDMA_GSM = 30;

        /** NR 5G, LTE, TD-SCDMA, WCDMA */
        public static final int NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA = 31;

        /** NR 5G, LTE, TD-SCDMA, GSM and WCDMA */
        public static final int NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA = 32;

        /** NR 5G, LTE, TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
        public static final int NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 33;
    }


}
+2 −1
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import androidx.preference.ListPreference;
import androidx.preference.Preference;

import com.android.internal.telephony.Phone;
import com.android.settings.network.telephony.TelephonyConstants.TelephonyManagerConstants;

/**
 * Preference controller for "System Select"
@@ -54,7 +55,7 @@ public class CdmaSystemSelectPreferenceController extends CdmaBasePreferenceCont
                Settings.Global.PREFERRED_NETWORK_MODE + mSubId,
                Phone.PREFERRED_NT_MODE);
        listPreference.setEnabled(
                settingsNetworkMode != TelephonyManager.NETWORK_MODE_LTE_GSM_WCDMA);
                settingsNetworkMode != TelephonyManagerConstants.NETWORK_MODE_LTE_GSM_WCDMA);
    }

    @Override
Loading