Add NR to preferred network type combination

This add NR 5G to preferred network type and move preferredNetworkMode
from SystemApi to hidden api as we are not going to support
preferredNetworMode enum in the future.

Bug: 111453000
Test: build
Change-Id: I08a8f7bf44a62ef109583b82b22f65fd6f89c71d
This commit is contained in:
Pengquan Meng
2018-12-12 20:39:41 -08:00
parent f445d59c11
commit 8bcdc4cf66
4 changed files with 312 additions and 202 deletions

View File

@@ -6261,7 +6261,6 @@ package android.telephony {
method public deprecated boolean getDataEnabled(int);
method public boolean getEmergencyCallbackMode();
method public java.lang.String getIsimDomain();
method public int getPreferredNetworkType(int);
method public int getPreferredNetworkTypeBitmap();
method public int getRadioPowerState();
method public int getSimApplicationState();
@@ -6317,29 +6316,6 @@ package android.telephony {
field public static final java.lang.String EXTRA_VOICEMAIL_SCRAMBLED_PIN_STRING = "android.telephony.extra.VOICEMAIL_SCRAMBLED_PIN_STRING";
field public static final int INVALID_CARD_ID = -1; // 0xffffffff
field public static final long MAX_NUMBER_VERIFICATION_TIMEOUT_MILLIS = 60000L; // 0xea60L
field public static final int NETWORK_MODE_CDMA_EVDO = 4; // 0x4
field public static final int NETWORK_MODE_CDMA_NO_EVDO = 5; // 0x5
field public static final int NETWORK_MODE_EVDO_NO_CDMA = 6; // 0x6
field public static final int NETWORK_MODE_GLOBAL = 7; // 0x7
field public static final int NETWORK_MODE_GSM_ONLY = 1; // 0x1
field public static final int NETWORK_MODE_GSM_UMTS = 3; // 0x3
field public static final int NETWORK_MODE_LTE_CDMA_EVDO = 8; // 0x8
field public static final int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10; // 0xa
field public static final int NETWORK_MODE_LTE_GSM_WCDMA = 9; // 0x9
field public static final int NETWORK_MODE_LTE_ONLY = 11; // 0xb
field public static final int NETWORK_MODE_LTE_TDSCDMA = 15; // 0xf
field public static final int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22; // 0x16
field public static final int NETWORK_MODE_LTE_TDSCDMA_GSM = 17; // 0x11
field public static final int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20; // 0x14
field public static final int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19; // 0x13
field public static final int NETWORK_MODE_LTE_WCDMA = 12; // 0xc
field public static final int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21; // 0x15
field public static final int NETWORK_MODE_TDSCDMA_GSM = 16; // 0x10
field public static final int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18; // 0x12
field public static final int NETWORK_MODE_TDSCDMA_ONLY = 13; // 0xd
field public static final int NETWORK_MODE_TDSCDMA_WCDMA = 14; // 0xe
field public static final int NETWORK_MODE_WCDMA_ONLY = 2; // 0x2
field public static final int NETWORK_MODE_WCDMA_PREF = 0; // 0x0
field public static final int NETWORK_TYPE_BITMASK_1xRTT = 128; // 0x80
field public static final int NETWORK_TYPE_BITMASK_CDMA = 16; // 0x10
field public static final int NETWORK_TYPE_BITMASK_EDGE = 4; // 0x4

View File

@@ -56,6 +56,9 @@ public class RadioAccessFamily implements Parcelable {
public static final int RAF_LTE = TelephonyManager.NETWORK_TYPE_BITMASK_LTE;
public static final int RAF_LTE_CA = TelephonyManager.NETWORK_TYPE_BITMASK_LTE_CA;
// 5G
public static final int RAF_NR = TelephonyManager.NETWORK_TYPE_BITMASK_NR;
// Grouping of RAFs
// 2G
private static final int GSM = RAF_GSM | RAF_GPRS | RAF_EDGE;
@@ -67,6 +70,9 @@ public class RadioAccessFamily implements Parcelable {
// 4G
private static final int LTE = RAF_LTE | RAF_LTE_CA;
// 5G
private static final int NR = RAF_NR;
/* Phone ID of phone */
private int mPhoneId;
@@ -159,84 +165,78 @@ public class RadioAccessFamily implements Parcelable {
@UnsupportedAppUsage
public static int getRafFromNetworkType(int type) {
int raf;
switch (type) {
case RILConstants.NETWORK_MODE_WCDMA_PREF:
raf = GSM | WCDMA;
break;
return GSM | WCDMA;
case RILConstants.NETWORK_MODE_GSM_ONLY:
raf = GSM;
break;
return GSM;
case RILConstants.NETWORK_MODE_WCDMA_ONLY:
raf = WCDMA;
break;
return WCDMA;
case RILConstants.NETWORK_MODE_GSM_UMTS:
raf = GSM | WCDMA;
break;
return GSM | WCDMA;
case RILConstants.NETWORK_MODE_CDMA:
raf = CDMA | EVDO;
break;
return CDMA | EVDO;
case RILConstants.NETWORK_MODE_LTE_CDMA_EVDO:
raf = LTE | CDMA | EVDO;
break;
return LTE | CDMA | EVDO;
case RILConstants.NETWORK_MODE_LTE_GSM_WCDMA:
raf = LTE | GSM | WCDMA;
break;
return LTE | GSM | WCDMA;
case RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA:
raf = LTE | CDMA | EVDO | GSM | WCDMA;
break;
return LTE | CDMA | EVDO | GSM | WCDMA;
case RILConstants.NETWORK_MODE_LTE_ONLY:
raf = LTE;
break;
return LTE;
case RILConstants.NETWORK_MODE_LTE_WCDMA:
raf = LTE | WCDMA;
break;
return LTE | WCDMA;
case RILConstants.NETWORK_MODE_CDMA_NO_EVDO:
raf = CDMA;
break;
return CDMA;
case RILConstants.NETWORK_MODE_EVDO_NO_CDMA:
raf = EVDO;
break;
return EVDO;
case RILConstants.NETWORK_MODE_GLOBAL:
raf = GSM | WCDMA | CDMA | EVDO;
break;
return GSM | WCDMA | CDMA | EVDO;
case RILConstants.NETWORK_MODE_TDSCDMA_ONLY:
raf = RAF_TD_SCDMA;
break;
return RAF_TD_SCDMA;
case RILConstants.NETWORK_MODE_TDSCDMA_WCDMA:
raf = RAF_TD_SCDMA | WCDMA;
break;
return RAF_TD_SCDMA | WCDMA;
case RILConstants.NETWORK_MODE_LTE_TDSCDMA:
raf = LTE | RAF_TD_SCDMA;
break;
return LTE | RAF_TD_SCDMA;
case RILConstants.NETWORK_MODE_TDSCDMA_GSM:
raf = RAF_TD_SCDMA | GSM;
break;
return RAF_TD_SCDMA | GSM;
case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM:
raf = LTE | RAF_TD_SCDMA | GSM;
break;
return LTE | RAF_TD_SCDMA | GSM;
case RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA:
raf = RAF_TD_SCDMA | GSM | WCDMA;
break;
return RAF_TD_SCDMA | GSM | WCDMA;
case RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA:
raf = LTE | RAF_TD_SCDMA | WCDMA;
break;
return LTE | RAF_TD_SCDMA | WCDMA;
case RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA:
raf = LTE | RAF_TD_SCDMA | GSM | WCDMA;
break;
return LTE | RAF_TD_SCDMA | GSM | WCDMA;
case RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
raf = RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA;
break;
return RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA;
case RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA:
raf = LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA;
break;
return LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA;
case (RILConstants.NETWORK_MODE_NR_ONLY):
return NR;
case (RILConstants.NETWORK_MODE_NR_LTE):
return NR | LTE;
case (RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO):
return NR | LTE | CDMA | EVDO;
case (RILConstants.NETWORK_MODE_NR_LTE_GSM_WCDMA):
return NR | LTE | GSM | WCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA):
return NR | LTE | CDMA | EVDO | GSM | WCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_WCDMA):
return NR | LTE | WCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA):
return NR | LTE | RAF_TD_SCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM):
return NR | LTE | RAF_TD_SCDMA | GSM;
case (RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA):
return NR | LTE | RAF_TD_SCDMA | WCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA):
return NR | LTE | RAF_TD_SCDMA | GSM | WCDMA;
case (RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA):
return NR | LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA;
default:
raf = RAF_UNKNOWN;
break;
return RAF_UNKNOWN;
}
return raf;
}
/**
@@ -249,6 +249,7 @@ public class RadioAccessFamily implements Parcelable {
raf = ((CDMA & raf) > 0) ? (CDMA | raf) : raf;
raf = ((EVDO & raf) > 0) ? (EVDO | raf) : raf;
raf = ((LTE & raf) > 0) ? (LTE | raf) : raf;
raf = ((NR & raf) > 0) ? (NR | raf) : raf;
return raf;
}
@@ -273,83 +274,78 @@ public class RadioAccessFamily implements Parcelable {
@UnsupportedAppUsage
public static int getNetworkTypeFromRaf(int raf) {
int type;
raf = getAdjustedRaf(raf);
switch (raf) {
case (GSM | WCDMA):
type = RILConstants.NETWORK_MODE_WCDMA_PREF;
break;
return RILConstants.NETWORK_MODE_WCDMA_PREF;
case GSM:
type = RILConstants.NETWORK_MODE_GSM_ONLY;
break;
return RILConstants.NETWORK_MODE_GSM_ONLY;
case WCDMA:
type = RILConstants.NETWORK_MODE_WCDMA_ONLY;
break;
return RILConstants.NETWORK_MODE_WCDMA_ONLY;
case (CDMA | EVDO):
type = RILConstants.NETWORK_MODE_CDMA;
break;
return RILConstants.NETWORK_MODE_CDMA;
case (LTE | CDMA | EVDO):
type = RILConstants.NETWORK_MODE_LTE_CDMA_EVDO;
break;
return RILConstants.NETWORK_MODE_LTE_CDMA_EVDO;
case (LTE | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_GSM_WCDMA;
case (LTE | CDMA | EVDO | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA;
case LTE:
type = RILConstants.NETWORK_MODE_LTE_ONLY;
break;
return RILConstants.NETWORK_MODE_LTE_ONLY;
case (LTE | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_WCDMA;
case CDMA:
type = RILConstants.NETWORK_MODE_CDMA_NO_EVDO;
break;
return RILConstants.NETWORK_MODE_CDMA_NO_EVDO;
case EVDO:
type = RILConstants.NETWORK_MODE_EVDO_NO_CDMA;
break;
return RILConstants.NETWORK_MODE_EVDO_NO_CDMA;
case (GSM | WCDMA | CDMA | EVDO):
type = RILConstants.NETWORK_MODE_GLOBAL;
break;
return RILConstants.NETWORK_MODE_GLOBAL;
case RAF_TD_SCDMA:
type = RILConstants.NETWORK_MODE_TDSCDMA_ONLY;
break;
return RILConstants.NETWORK_MODE_TDSCDMA_ONLY;
case (RAF_TD_SCDMA | WCDMA):
type = RILConstants.NETWORK_MODE_TDSCDMA_WCDMA;
break;
return RILConstants.NETWORK_MODE_TDSCDMA_WCDMA;
case (LTE | RAF_TD_SCDMA):
type = RILConstants.NETWORK_MODE_LTE_TDSCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_TDSCDMA;
case (RAF_TD_SCDMA | GSM):
type = RILConstants.NETWORK_MODE_TDSCDMA_GSM;
break;
return RILConstants.NETWORK_MODE_TDSCDMA_GSM;
case (LTE | RAF_TD_SCDMA | GSM):
type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM;
break;
return RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM;
case (RAF_TD_SCDMA | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA;
case (LTE | RAF_TD_SCDMA | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA;
case (LTE | RAF_TD_SCDMA | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA;
case (RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
case (LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA):
type = RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
break;
return RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
case (NR):
return RILConstants.NETWORK_MODE_NR_ONLY;
case (NR | LTE):
return RILConstants.NETWORK_MODE_NR_LTE;
case (NR | LTE | CDMA | EVDO):
return RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO;
case (NR | LTE | GSM | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_GSM_WCDMA;
case (NR | LTE | CDMA | EVDO | GSM | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA;
case (NR | LTE | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_WCDMA;
case (NR | LTE | RAF_TD_SCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA;
case (NR | LTE | RAF_TD_SCDMA | GSM):
return RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM;
case (NR | LTE | RAF_TD_SCDMA | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA;
case (NR | LTE | RAF_TD_SCDMA | GSM | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA;
case (NR | LTE | RAF_TD_SCDMA | CDMA | EVDO | GSM | WCDMA):
return RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
default:
type = RILConstants.PREFERRED_NETWORK_MODE ;
break;
return RILConstants.PREFERRED_NETWORK_MODE;
}
return type;
}
public static int singleRafTypeFromString(String rafString) {
@@ -376,6 +372,7 @@ public class RadioAccessFamily implements Parcelable {
case "EVDO": return EVDO;
case "WCDMA": return WCDMA;
case "LTE_CA": return RAF_LTE_CA;
case "NR": return RAF_NR;
default: return RAF_UNKNOWN;
}
}

View File

@@ -6194,191 +6194,252 @@ public class TelephonyManager {
NETWORK_MODE_LTE_TDSCDMA_WCDMA,
NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA,
NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA,
NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA
NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA,
NETWORK_MODE_NR_ONLY,
NETWORK_MODE_NR_LTE,
NETWORK_MODE_NR_LTE_CDMA_EVDO,
NETWORK_MODE_NR_LTE_GSM_WCDMA,
NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA,
NETWORK_MODE_NR_LTE_WCDMA,
NETWORK_MODE_NR_LTE_TDSCDMA,
NETWORK_MODE_NR_LTE_TDSCDMA_GSM,
NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA,
NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA,
NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA
})
@Retention(RetentionPolicy.SOURCE)
public @interface PrefNetworkMode{}
/**
* preferred network mode is GSM/WCDMA (WCDMA preferred).
* Preferred network mode is GSM/WCDMA (WCDMA preferred).
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_WCDMA_PREF = RILConstants.NETWORK_MODE_WCDMA_PREF;
/**
* preferred network mode is GSM only.
* Preferred network mode is GSM only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_GSM_ONLY = RILConstants.NETWORK_MODE_GSM_ONLY;
/**
* preferred network mode is WCDMA only.
* Preferred network mode is WCDMA only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_WCDMA_ONLY = RILConstants.NETWORK_MODE_WCDMA_ONLY;
/**
* preferred network mode is GSM/WCDMA (auto mode, according to PRL).
* Preferred network mode is GSM/WCDMA (auto mode, according to PRL).
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_GSM_UMTS = RILConstants.NETWORK_MODE_GSM_UMTS;
/**
* preferred network mode is CDMA and EvDo (auto mode, according to PRL).
* Preferred network mode is CDMA and EvDo (auto mode, according to PRL).
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_CDMA_EVDO = RILConstants.NETWORK_MODE_CDMA;
/**
* preferred network mode is CDMA only.
* Preferred network mode is CDMA only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_CDMA_NO_EVDO = RILConstants.NETWORK_MODE_CDMA_NO_EVDO;
/**
* preferred network mode is EvDo only.
* Preferred network mode is EvDo only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_EVDO_NO_CDMA = RILConstants.NETWORK_MODE_EVDO_NO_CDMA;
/**
* preferred network mode is GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL).
* Preferred network mode is GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL).
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_GLOBAL = RILConstants.NETWORK_MODE_GLOBAL;
/**
* preferred network mode is LTE, CDMA and EvDo.
* Preferred network mode is LTE, CDMA and EvDo.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_CDMA_EVDO = RILConstants.NETWORK_MODE_LTE_CDMA_EVDO;
/**
* preferred network mode is LTE, GSM/WCDMA.
* Preferred network mode is LTE, GSM/WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_GSM_WCDMA = RILConstants.NETWORK_MODE_LTE_GSM_WCDMA;
/**
* preferred network mode is LTE, CDMA, EvDo, GSM/WCDMA.
* Preferred network mode is LTE, CDMA, EvDo, GSM/WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA =
RILConstants.NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA;
/**
* preferred network mode is LTE Only.
* Preferred network mode is LTE Only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_ONLY = RILConstants.NETWORK_MODE_LTE_ONLY;
/**
* preferred network mode is LTE/WCDMA.
* Preferred network mode is LTE/WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_WCDMA = RILConstants.NETWORK_MODE_LTE_WCDMA;
/**
* preferred network mode is TD-SCDMA only.
* Preferred network mode is TD-SCDMA only.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_TDSCDMA_ONLY = RILConstants.NETWORK_MODE_TDSCDMA_ONLY;
/**
* preferred network mode is TD-SCDMA and WCDMA.
* Preferred network mode is TD-SCDMA and WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_TDSCDMA_WCDMA = RILConstants.NETWORK_MODE_TDSCDMA_WCDMA;
/**
* preferred network mode is TD-SCDMA and LTE.
* Preferred network mode is TD-SCDMA and LTE.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_TDSCDMA = RILConstants.NETWORK_MODE_LTE_TDSCDMA;
/**
* preferred network mode is TD-SCDMA and GSM.
* Preferred network mode is TD-SCDMA and GSM.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_TDSCDMA_GSM = RILConstants.NETWORK_MODE_TDSCDMA_GSM;
/**
* preferred network mode is TD-SCDMA,GSM and LTE.
* Preferred network mode is TD-SCDMA,GSM and LTE.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_TDSCDMA_GSM =
RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM;
/**
* preferred network mode is TD-SCDMA, GSM/WCDMA.
* Preferred network mode is TD-SCDMA, GSM/WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_TDSCDMA_GSM_WCDMA =
RILConstants.NETWORK_MODE_TDSCDMA_GSM_WCDMA;
/**
* preferred network mode is TD-SCDMA, WCDMA and LTE.
* Preferred network mode is TD-SCDMA, WCDMA and LTE.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_TDSCDMA_WCDMA =
RILConstants.NETWORK_MODE_LTE_TDSCDMA_WCDMA;
/**
* preferred network mode is TD-SCDMA, GSM/WCDMA and LTE.
* Preferred network mode is TD-SCDMA, GSM/WCDMA and LTE.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA =
RILConstants.NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA;
/**
* preferred network mode is TD-SCDMA,EvDo,CDMA,GSM/WCDMA.
* Preferred network mode is TD-SCDMA,EvDo,CDMA,GSM/WCDMA.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA =
RILConstants.NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
/**
* preferred network mode is TD-SCDMA/LTE/GSM/WCDMA, CDMA, and EvDo.
* Preferred network mode is TD-SCDMA/LTE/GSM/WCDMA, CDMA, and EvDo.
* @hide
*/
@SystemApi
public static final int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA =
RILConstants.NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
/**
* Preferred network mode is NR 5G only.
* @hide
*/
public static final int NETWORK_MODE_NR_ONLY = RILConstants.NETWORK_MODE_NR_ONLY;
/**
* Preferred network mode is NR 5G, LTE.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE = RILConstants.NETWORK_MODE_NR_LTE;
/**
* Preferred network mode is NR 5G, LTE, CDMA and EvDo.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_CDMA_EVDO =
RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO;
/**
* Preferred network mode is NR 5G, LTE, GSM and WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_GSM_WCDMA =
RILConstants.NETWORK_MODE_NR_LTE_GSM_WCDMA;
/**
* Preferred network mode is NR 5G, LTE, CDMA, EvDo, GSM and WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA =
RILConstants.NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA;
/**
* Preferred network mode is NR 5G, LTE and WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_WCDMA = RILConstants.NETWORK_MODE_NR_LTE_WCDMA;
/**
* Preferred network mode is NR 5G, LTE and TDSCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_TDSCDMA = RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA;
/**
* Preferred network mode is NR 5G, LTE, TD-SCDMA and GSM.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_TDSCDMA_GSM =
RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM;
/**
* Preferred network mode is NR 5G, LTE, TD-SCDMA, WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA =
RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA;
/**
* Preferred network mode is NR 5G, LTE, TD-SCDMA, GSM and WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA =
RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA;
/**
* Preferred network mode is NR 5G, LTE, TD-SCDMA, CDMA, EVDO, GSM and WCDMA.
* @hide
*/
public static final int NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA =
RILConstants.NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA;
/**
* Get the preferred network type.
* Used for device configuration by some CDMA operators.
*
* <p>Requires Permission:
* {@link android.Manifest.permission#MODIFY_PHONE_STATE MODIFY_PHONE_STATE} or that the calling
* {@link android.Manifest.permission#READ_PRIVILEGED_PHONE_STATE READ_PRIVILEGED_PHONE_STATE}
* app has carrier privileges (see {@link #hasCarrierPrivileges}).
*
* @return the preferred network type.
* @hide
*/
@RequiresPermission((android.Manifest.permission.MODIFY_PHONE_STATE))
@SystemApi
@RequiresPermission((android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE))
@UnsupportedAppUsage
public @PrefNetworkMode int getPreferredNetworkType(int subId) {
try {
ITelephony telephony = getITelephony();

View File

@@ -128,32 +128,108 @@ public interface RILConstants {
int OEM_ERROR_25 = 525;
/* NETWORK_MODE_* See ril.h RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE */
int NETWORK_MODE_WCDMA_PREF = 0; /* GSM/WCDMA (WCDMA preferred) */
int NETWORK_MODE_GSM_ONLY = 1; /* GSM only */
int NETWORK_MODE_WCDMA_ONLY = 2; /* WCDMA only */
int NETWORK_MODE_GSM_UMTS = 3; /* GSM/WCDMA (auto mode, according to PRL)
AVAILABLE Application Settings menu*/
int NETWORK_MODE_CDMA = 4; /* CDMA and EvDo (auto mode, according to PRL)
AVAILABLE Application Settings menu*/
int NETWORK_MODE_CDMA_NO_EVDO = 5; /* CDMA only */
int NETWORK_MODE_EVDO_NO_CDMA = 6; /* EvDo only */
int NETWORK_MODE_GLOBAL = 7; /* GSM/WCDMA, CDMA, and EvDo (auto mode, according to PRL)
AVAILABLE Application Settings menu*/
int NETWORK_MODE_LTE_CDMA_EVDO = 8; /* LTE, CDMA and EvDo */
int NETWORK_MODE_LTE_GSM_WCDMA = 9; /* LTE, GSM/WCDMA */
int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10; /* LTE, CDMA, EvDo, GSM/WCDMA */
int NETWORK_MODE_LTE_ONLY = 11; /* LTE Only mode. */
int NETWORK_MODE_LTE_WCDMA = 12; /* LTE/WCDMA */
int NETWORK_MODE_TDSCDMA_ONLY = 13; /* TD-SCDMA only */
int NETWORK_MODE_TDSCDMA_WCDMA = 14; /* TD-SCDMA and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA = 15; /* TD-SCDMA and LTE */
int NETWORK_MODE_TDSCDMA_GSM = 16; /* TD-SCDMA and GSM */
int NETWORK_MODE_LTE_TDSCDMA_GSM = 17; /* TD-SCDMA,GSM and LTE */
int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18; /* TD-SCDMA, GSM/WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19; /* TD-SCDMA, WCDMA and LTE */
int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20; /* TD-SCDMA, GSM/WCDMA and LTE */
int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21; /*TD-SCDMA,EvDo,CDMA,GSM/WCDMA*/
int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22; /* TD-SCDMA/LTE/GSM/WCDMA, CDMA, and EvDo */
/** GSM, WCDMA (WCDMA preferred) */
int NETWORK_MODE_WCDMA_PREF = 0;
/** GSM only */
int NETWORK_MODE_GSM_ONLY = 1;
/** WCDMA only */
int NETWORK_MODE_WCDMA_ONLY = 2;
/** GSM, WCDMA (auto mode, according to PRL) */
int NETWORK_MODE_GSM_UMTS = 3;
/** CDMA and EvDo (auto mode, according to PRL) */
int NETWORK_MODE_CDMA = 4;
/** CDMA only */
int NETWORK_MODE_CDMA_NO_EVDO = 5;
/** EvDo only */
int NETWORK_MODE_EVDO_NO_CDMA = 6;
/** GSM, WCDMA, CDMA, and EvDo (auto mode, according to PRL) */
int NETWORK_MODE_GLOBAL = 7;
/** LTE, CDMA and EvDo */
int NETWORK_MODE_LTE_CDMA_EVDO = 8;
/** LTE, GSM and WCDMA */
int NETWORK_MODE_LTE_GSM_WCDMA = 9;
/** LTE, CDMA, EvDo, GSM, and WCDMA */
int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10;
/** LTE only mode. */
int NETWORK_MODE_LTE_ONLY = 11;
/** LTE and WCDMA */
int NETWORK_MODE_LTE_WCDMA = 12;
/** TD-SCDMA only */
int NETWORK_MODE_TDSCDMA_ONLY = 13;
/** TD-SCDMA and WCDMA */
int NETWORK_MODE_TDSCDMA_WCDMA = 14;
/** LTE and TD-SCDMA*/
int NETWORK_MODE_LTE_TDSCDMA = 15;
/** TD-SCDMA and GSM */
int NETWORK_MODE_TDSCDMA_GSM = 16;
/** TD-SCDMA, GSM and LTE */
int NETWORK_MODE_LTE_TDSCDMA_GSM = 17;
/** TD-SCDMA, GSM and WCDMA */
int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18;
/** LTE, TD-SCDMA and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19;
/** LTE, TD-SCDMA, GSM, and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20;
/** TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21;
/** LTE, TDCSDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22;
/** NR 5G only mode */
int NETWORK_MODE_NR_ONLY = 23;
/** NR 5G, LTE */
int NETWORK_MODE_NR_LTE = 24;
/** NR 5G, LTE, CDMA and EvDo */
int NETWORK_MODE_NR_LTE_CDMA_EVDO = 25;
/** NR 5G, LTE, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_GSM_WCDMA = 26;
/** NR 5G, LTE, CDMA, EvDo, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA = 27;
/** NR 5G, LTE and WCDMA */
int NETWORK_MODE_NR_LTE_WCDMA = 28;
/** NR 5G, LTE and TDSCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA = 29;
/** NR 5G, LTE, TD-SCDMA and GSM */
int NETWORK_MODE_NR_LTE_TDSCDMA_GSM = 30;
/** NR 5G, LTE, TD-SCDMA, WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA = 31;
/** NR 5G, LTE, TD-SCDMA, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA = 32;
/** NR 5G, LTE, TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 33;
int PREFERRED_NETWORK_MODE = Integer.parseInt(TelephonyManager.getTelephonyProperty(0,
"ro.telephony.default_network", Integer.toString(NETWORK_MODE_WCDMA_PREF)));