Merge "Display the number of LTE signal bars is based on RSRP only"
This commit is contained in:
@@ -1507,6 +1507,13 @@ public class CarrierConfigManager {
|
|||||||
public static final String KEY_BOOSTED_LTE_EARFCNS_STRING_ARRAY =
|
public static final String KEY_BOOSTED_LTE_EARFCNS_STRING_ARRAY =
|
||||||
"boosted_lte_earfcns_string_array";
|
"boosted_lte_earfcns_string_array";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine whether to use only RSRP for the number of LTE signal bars.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public static final String KEY_USE_ONLY_RSRP_FOR_LTE_SIGNAL_BAR_BOOL =
|
||||||
|
"use_only_rsrp_for_lte_signal_bar_bool";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Key identifying if voice call barring notification is required to be shown to the user.
|
* Key identifying if voice call barring notification is required to be shown to the user.
|
||||||
* @hide
|
* @hide
|
||||||
@@ -1862,6 +1869,7 @@ public class CarrierConfigManager {
|
|||||||
null);
|
null);
|
||||||
sDefaults.putInt(KEY_LTE_EARFCNS_RSRP_BOOST_INT, 0);
|
sDefaults.putInt(KEY_LTE_EARFCNS_RSRP_BOOST_INT, 0);
|
||||||
sDefaults.putStringArray(KEY_BOOSTED_LTE_EARFCNS_STRING_ARRAY, null);
|
sDefaults.putStringArray(KEY_BOOSTED_LTE_EARFCNS_STRING_ARRAY, null);
|
||||||
|
sDefaults.putBoolean(KEY_USE_ONLY_RSRP_FOR_LTE_SIGNAL_BAR_BOOL, false);
|
||||||
sDefaults.putBoolean(KEY_DISABLE_VOICE_BARRING_NOTIFICATION_BOOL, false);
|
sDefaults.putBoolean(KEY_DISABLE_VOICE_BARRING_NOTIFICATION_BOOL, false);
|
||||||
sDefaults.putInt(IMSI_KEY_EXPIRATION_DAYS_TIME_INT, IMSI_ENCRYPTION_DAYS_TIME_DISABLED);
|
sDefaults.putInt(IMSI_KEY_EXPIRATION_DAYS_TIME_INT, IMSI_ENCRYPTION_DAYS_TIME_DISABLED);
|
||||||
sDefaults.putString(IMSI_KEY_DOWNLOAD_URL_STRING, null);
|
sDefaults.putString(IMSI_KEY_DOWNLOAD_URL_STRING, null);
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
private int mTdScdmaRscp;
|
private int mTdScdmaRscp;
|
||||||
|
|
||||||
private boolean isGsm; // This value is set by the ServiceStateTracker onSignalStrengthResult
|
private boolean isGsm; // This value is set by the ServiceStateTracker onSignalStrengthResult
|
||||||
|
private boolean mUseOnlyRsrpForLteLevel; // Use only RSRP for the number of LTE signal bar.
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create a new SignalStrength from a intent notifier Bundle
|
* Create a new SignalStrength from a intent notifier Bundle
|
||||||
@@ -108,6 +109,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = 0;
|
mLteRsrpBoost = 0;
|
||||||
mTdScdmaRscp = INVALID;
|
mTdScdmaRscp = INVALID;
|
||||||
isGsm = true;
|
isGsm = true;
|
||||||
|
mUseOnlyRsrpForLteLevel = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -134,6 +136,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = 0;
|
mLteRsrpBoost = 0;
|
||||||
mTdScdmaRscp = INVALID;
|
mTdScdmaRscp = INVALID;
|
||||||
isGsm = gsmFlag;
|
isGsm = gsmFlag;
|
||||||
|
mUseOnlyRsrpForLteLevel = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -145,10 +148,10 @@ public class SignalStrength implements Parcelable {
|
|||||||
int cdmaDbm, int cdmaEcio,
|
int cdmaDbm, int cdmaEcio,
|
||||||
int evdoDbm, int evdoEcio, int evdoSnr,
|
int evdoDbm, int evdoEcio, int evdoSnr,
|
||||||
int lteSignalStrength, int lteRsrp, int lteRsrq, int lteRssnr, int lteCqi,
|
int lteSignalStrength, int lteRsrp, int lteRsrq, int lteRssnr, int lteCqi,
|
||||||
int lteRsrpBoost, int tdScdmaRscp, boolean gsmFlag) {
|
int lteRsrpBoost, int tdScdmaRscp, boolean gsmFlag, boolean lteLevelBaseOnRsrp) {
|
||||||
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
||||||
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
||||||
lteRsrq, lteRssnr, lteCqi, lteRsrpBoost, gsmFlag);
|
lteRsrq, lteRssnr, lteCqi, lteRsrpBoost, gsmFlag, lteLevelBaseOnRsrp);
|
||||||
mTdScdmaRscp = tdScdmaRscp;
|
mTdScdmaRscp = tdScdmaRscp;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -164,7 +167,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
int tdScdmaRscp, boolean gsmFlag) {
|
int tdScdmaRscp, boolean gsmFlag) {
|
||||||
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
||||||
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
||||||
lteRsrq, lteRssnr, lteCqi, 0, gsmFlag);
|
lteRsrq, lteRssnr, lteCqi, 0, gsmFlag, false);
|
||||||
mTdScdmaRscp = tdScdmaRscp;
|
mTdScdmaRscp = tdScdmaRscp;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -180,7 +183,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
boolean gsmFlag) {
|
boolean gsmFlag) {
|
||||||
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
||||||
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
evdoDbm, evdoEcio, evdoSnr, lteSignalStrength, lteRsrp,
|
||||||
lteRsrq, lteRssnr, lteCqi, 0, gsmFlag);
|
lteRsrq, lteRssnr, lteCqi, 0, gsmFlag, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -194,7 +197,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
boolean gsmFlag) {
|
boolean gsmFlag) {
|
||||||
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
||||||
evdoDbm, evdoEcio, evdoSnr, 99, INVALID,
|
evdoDbm, evdoEcio, evdoSnr, 99, INVALID,
|
||||||
INVALID, INVALID, INVALID, 0, gsmFlag);
|
INVALID, INVALID, INVALID, 0, gsmFlag, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -228,7 +231,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
boolean gsm) {
|
boolean gsm) {
|
||||||
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
initialize(gsmSignalStrength, gsmBitErrorRate, cdmaDbm, cdmaEcio,
|
||||||
evdoDbm, evdoEcio, evdoSnr, 99, INVALID,
|
evdoDbm, evdoEcio, evdoSnr, 99, INVALID,
|
||||||
INVALID, INVALID, INVALID, 0, gsm);
|
INVALID, INVALID, INVALID, 0, gsm, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -248,6 +251,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
* @param lteCqi
|
* @param lteCqi
|
||||||
* @param lteRsrpBoost
|
* @param lteRsrpBoost
|
||||||
* @param gsm
|
* @param gsm
|
||||||
|
* @param useOnlyRsrpForLteLevel
|
||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
@@ -255,7 +259,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
int cdmaDbm, int cdmaEcio,
|
int cdmaDbm, int cdmaEcio,
|
||||||
int evdoDbm, int evdoEcio, int evdoSnr,
|
int evdoDbm, int evdoEcio, int evdoSnr,
|
||||||
int lteSignalStrength, int lteRsrp, int lteRsrq, int lteRssnr, int lteCqi,
|
int lteSignalStrength, int lteRsrp, int lteRsrq, int lteRssnr, int lteCqi,
|
||||||
int lteRsrpBoost, boolean gsm) {
|
int lteRsrpBoost, boolean gsm, boolean useOnlyRsrpForLteLevel) {
|
||||||
mGsmSignalStrength = gsmSignalStrength;
|
mGsmSignalStrength = gsmSignalStrength;
|
||||||
mGsmBitErrorRate = gsmBitErrorRate;
|
mGsmBitErrorRate = gsmBitErrorRate;
|
||||||
mCdmaDbm = cdmaDbm;
|
mCdmaDbm = cdmaDbm;
|
||||||
@@ -271,6 +275,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = lteRsrpBoost;
|
mLteRsrpBoost = lteRsrpBoost;
|
||||||
mTdScdmaRscp = INVALID;
|
mTdScdmaRscp = INVALID;
|
||||||
isGsm = gsm;
|
isGsm = gsm;
|
||||||
|
mUseOnlyRsrpForLteLevel = useOnlyRsrpForLteLevel;
|
||||||
if (DBG) log("initialize: " + toString());
|
if (DBG) log("initialize: " + toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -293,6 +298,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = s.mLteRsrpBoost;
|
mLteRsrpBoost = s.mLteRsrpBoost;
|
||||||
mTdScdmaRscp = s.mTdScdmaRscp;
|
mTdScdmaRscp = s.mTdScdmaRscp;
|
||||||
isGsm = s.isGsm;
|
isGsm = s.isGsm;
|
||||||
|
mUseOnlyRsrpForLteLevel = s.mUseOnlyRsrpForLteLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -318,6 +324,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = in.readInt();
|
mLteRsrpBoost = in.readInt();
|
||||||
mTdScdmaRscp = in.readInt();
|
mTdScdmaRscp = in.readInt();
|
||||||
isGsm = (in.readInt() != 0);
|
isGsm = (in.readInt() != 0);
|
||||||
|
mUseOnlyRsrpForLteLevel = (in.readInt() != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -366,6 +373,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
out.writeInt(mLteRsrpBoost);
|
out.writeInt(mLteRsrpBoost);
|
||||||
out.writeInt(mTdScdmaRscp);
|
out.writeInt(mTdScdmaRscp);
|
||||||
out.writeInt(isGsm ? 1 : 0);
|
out.writeInt(isGsm ? 1 : 0);
|
||||||
|
out.writeInt(mUseOnlyRsrpForLteLevel ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -448,6 +456,17 @@ public class SignalStrength implements Parcelable {
|
|||||||
isGsm = gsmFlag;
|
isGsm = gsmFlag;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param useOnlyRsrpForLteLevel true if it uses only RSRP for the number of LTE signal bar,
|
||||||
|
* otherwise false.
|
||||||
|
*
|
||||||
|
* Used by phone to use only RSRP or not for the number of LTE signal bar.
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public void setUseOnlyRsrpForLteLevel(boolean useOnlyRsrpForLteLevel) {
|
||||||
|
mUseOnlyRsrpForLteLevel = useOnlyRsrpForLteLevel;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param lteRsrpBoost - signal strength offset
|
* @param lteRsrpBoost - signal strength offset
|
||||||
*
|
*
|
||||||
@@ -835,6 +854,13 @@ public class SignalStrength implements Parcelable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (useOnlyRsrpForLteLevel()) {
|
||||||
|
log("getLTELevel - rsrp = " + rsrpIconLevel);
|
||||||
|
if (rsrpIconLevel != -1) {
|
||||||
|
return rsrpIconLevel;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Values are -200 dB to +300 (SNR*10dB) RS_SNR >= 13.0 dB =>4 bars 4.5
|
* Values are -200 dB to +300 (SNR*10dB) RS_SNR >= 13.0 dB =>4 bars 4.5
|
||||||
* dB <= RS_SNR < 13.0 dB => 3 bars 1.0 dB <= RS_SNR < 4.5 dB => 2 bars
|
* dB <= RS_SNR < 13.0 dB => 3 bars 1.0 dB <= RS_SNR < 4.5 dB => 2 bars
|
||||||
@@ -914,6 +940,15 @@ public class SignalStrength implements Parcelable {
|
|||||||
return this.isGsm;
|
return this.isGsm;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @return true if it uses only RSRP for the number of LTE signal bar, otherwise false.
|
||||||
|
*
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
public boolean useOnlyRsrpForLteLevel() {
|
||||||
|
return this.mUseOnlyRsrpForLteLevel;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return get TD_SCDMA dbm
|
* @return get TD_SCDMA dbm
|
||||||
*
|
*
|
||||||
@@ -974,7 +1009,8 @@ public class SignalStrength implements Parcelable {
|
|||||||
+ (mEvdoDbm * primeNum) + (mEvdoEcio * primeNum) + (mEvdoSnr * primeNum)
|
+ (mEvdoDbm * primeNum) + (mEvdoEcio * primeNum) + (mEvdoSnr * primeNum)
|
||||||
+ (mLteSignalStrength * primeNum) + (mLteRsrp * primeNum)
|
+ (mLteSignalStrength * primeNum) + (mLteRsrp * primeNum)
|
||||||
+ (mLteRsrq * primeNum) + (mLteRssnr * primeNum) + (mLteCqi * primeNum)
|
+ (mLteRsrq * primeNum) + (mLteRssnr * primeNum) + (mLteCqi * primeNum)
|
||||||
+ (mLteRsrpBoost * primeNum) + (mTdScdmaRscp * primeNum) + (isGsm ? 1 : 0));
|
+ (mLteRsrpBoost * primeNum) + (mTdScdmaRscp * primeNum) + (isGsm ? 1 : 0)
|
||||||
|
+ (mUseOnlyRsrpForLteLevel ? 1 : 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1008,7 +1044,8 @@ public class SignalStrength implements Parcelable {
|
|||||||
&& mLteCqi == s.mLteCqi
|
&& mLteCqi == s.mLteCqi
|
||||||
&& mLteRsrpBoost == s.mLteRsrpBoost
|
&& mLteRsrpBoost == s.mLteRsrpBoost
|
||||||
&& mTdScdmaRscp == s.mTdScdmaRscp
|
&& mTdScdmaRscp == s.mTdScdmaRscp
|
||||||
&& isGsm == s.isGsm);
|
&& isGsm == s.isGsm
|
||||||
|
&& mUseOnlyRsrpForLteLevel == s.mUseOnlyRsrpForLteLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1031,7 +1068,9 @@ public class SignalStrength implements Parcelable {
|
|||||||
+ " " + mLteCqi
|
+ " " + mLteCqi
|
||||||
+ " " + mLteRsrpBoost
|
+ " " + mLteRsrpBoost
|
||||||
+ " " + mTdScdmaRscp
|
+ " " + mTdScdmaRscp
|
||||||
+ " " + (isGsm ? "gsm|lte" : "cdma"));
|
+ " " + (isGsm ? "gsm|lte" : "cdma")
|
||||||
|
+ " " + (mUseOnlyRsrpForLteLevel ? "use_only_rsrp_for_lte_level" :
|
||||||
|
"use_rsrp_and_rssnr_for_lte_level"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns the signal strength related to GSM. */
|
/** Returns the signal strength related to GSM. */
|
||||||
@@ -1086,6 +1125,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
mLteRsrpBoost = m.getInt("lteRsrpBoost");
|
mLteRsrpBoost = m.getInt("lteRsrpBoost");
|
||||||
mTdScdmaRscp = m.getInt("TdScdma");
|
mTdScdmaRscp = m.getInt("TdScdma");
|
||||||
isGsm = m.getBoolean("isGsm");
|
isGsm = m.getBoolean("isGsm");
|
||||||
|
mUseOnlyRsrpForLteLevel = m.getBoolean("useOnlyRsrpForLteLevel");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1110,6 +1150,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
m.putInt("lteRsrpBoost", mLteRsrpBoost);
|
m.putInt("lteRsrpBoost", mLteRsrpBoost);
|
||||||
m.putInt("TdScdma", mTdScdmaRscp);
|
m.putInt("TdScdma", mTdScdmaRscp);
|
||||||
m.putBoolean("isGsm", isGsm);
|
m.putBoolean("isGsm", isGsm);
|
||||||
|
m.putBoolean("useOnlyRsrpForLteLevel", mUseOnlyRsrpForLteLevel);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user