Merge "Revert "Make getRssi() API for LTE Received Signal Strength Indication (RSSI)""

This commit is contained in:
Shuo Qian
2018-11-06 03:06:20 +00:00
committed by Gerrit Code Review
2 changed files with 10 additions and 56 deletions

View File

@@ -42281,7 +42281,6 @@ package android.telephony {
method public int getLevel();
method public int getRsrp();
method public int getRsrq();
method public int getRssi();
method public int getRssnr();
method public int getTimingAdvance();
method public void writeToParcel(android.os.Parcel, int);

View File

@@ -31,27 +31,8 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
private static final String LOG_TAG = "CellSignalStrengthLte";
private static final boolean DBG = false;
/**
* Indicates the unknown or undetectable RSSI value in ASU.
*
* Reference: TS 27.007 8.5 - Signal quality +CSQ
*/
private static final int SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN = 99;
/**
* Indicates the maximum valid RSSI value in ASU.
*
* Reference: TS 27.007 8.5 - Signal quality +CSQ
*/
private static final int SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MAX_VALUE = 31;
/**
* Indicates the minimum valid RSSI value in ASU.
*
* Reference: TS 27.007 8.5 - Signal quality +CSQ
*/
private static final int SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MIN_VALUE = 0;
@UnsupportedAppUsage
private int mRssi;
private int mSignalStrength;
@UnsupportedAppUsage
private int mRsrp;
@UnsupportedAppUsage
@@ -70,9 +51,9 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
}
/** @hide */
public CellSignalStrengthLte(int rssi, int rsrp, int rsrq, int rssnr, int cqi,
public CellSignalStrengthLte(int signalStrength, int rsrp, int rsrq, int rssnr, int cqi,
int timingAdvance) {
mRssi = convertRssiAsuToDBm(rssi);
mSignalStrength = signalStrength;
mRsrp = rsrp;
mRsrq = rsrq;
mRssnr = rssnr;
@@ -87,7 +68,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
/** @hide */
protected void copyFrom(CellSignalStrengthLte s) {
mRssi = s.mRssi;
mSignalStrength = s.mSignalStrength;
mRsrp = s.mRsrp;
mRsrq = s.mRsrq;
mRssnr = s.mRssnr;
@@ -104,7 +85,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
/** @hide */
@Override
public void setDefaultValues() {
mRssi = CellInfo.UNAVAILABLE;
mSignalStrength = CellInfo.UNAVAILABLE;
mRsrp = CellInfo.UNAVAILABLE;
mRsrq = CellInfo.UNAVAILABLE;
mRssnr = CellInfo.UNAVAILABLE;
@@ -160,19 +141,6 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
return mRsrq;
}
/**
* Get Received Signal Strength Indication (RSSI) in dBm
*
* The value range is [-113, -51] inclusively or {@link CellInfo#UNAVAILABLE} if unavailable.
*
* Reference: TS 27.007 8.5 Signal quality +CSQ
*
* @return the RSSI if available or {@link CellInfo#UNAVAILABLE} if unavailable.
*/
public int getRssi() {
return mRssi;
}
/**
* Get reference signal signal-to-noise ratio
*
@@ -242,7 +210,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
@Override
public int hashCode() {
return Objects.hash(mRssi, mRsrp, mRsrq, mRssnr, mCqi, mTimingAdvance);
return Objects.hash(mSignalStrength, mRsrp, mRsrq, mRssnr, mCqi, mTimingAdvance);
}
@Override
@@ -259,7 +227,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
return false;
}
return mRssi == s.mRssi
return mSignalStrength == s.mSignalStrength
&& mRsrp == s.mRsrp
&& mRsrq == s.mRsrq
&& mRssnr == s.mRssnr
@@ -273,7 +241,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
@Override
public String toString() {
return "CellSignalStrengthLte:"
+ " rssi(dBm)=" + mRssi
+ " ss=" + mSignalStrength
+ " rsrp=" + mRsrp
+ " rsrq=" + mRsrq
+ " rssnr=" + mRssnr
@@ -285,7 +253,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
@Override
public void writeToParcel(Parcel dest, int flags) {
if (DBG) log("writeToParcel(Parcel, int): " + toString());
dest.writeInt(mRssi);
dest.writeInt(mSignalStrength);
// Need to multiply rsrp and rsrq by -1
// to ensure consistency when reading values written here
// unless the values are invalid
@@ -301,7 +269,7 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
* where the token is already been processed.
*/
private CellSignalStrengthLte(Parcel in) {
mRssi = convertRssiAsuToDBm(in.readInt());
mSignalStrength = in.readInt();
// rsrp and rsrq are written into the parcel as positive values.
// Need to convert into negative values unless the values are invalid
mRsrp = in.readInt();
@@ -341,17 +309,4 @@ public final class CellSignalStrengthLte extends CellSignalStrength implements P
private static void log(String s) {
Rlog.w(LOG_TAG, s);
}
private static int convertRssiAsuToDBm(int rssiAsu) {
if (rssiAsu != SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN
&& (rssiAsu < SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MIN_VALUE
|| rssiAsu > SIGNAL_STRENGTH_LTE_RSSI_VALID_ASU_MAX_VALUE)) {
Rlog.e(LOG_TAG, "convertRssiAsuToDBm: invalid RSSI in ASU=" + rssiAsu);
return CellInfo.UNAVAILABLE;
}
if (rssiAsu == SIGNAL_STRENGTH_LTE_RSSI_ASU_UNKNOWN) {
return CellInfo.UNAVAILABLE;
}
return -113 + (2 * rssiAsu);
}
}