am 45364dc4: Merge "Telephony: Signal Strength Changes." into honeycomb-LTE
* commit '45364dc4bfe3e6118ad61f1d38489fe63418699a': Telephony: Signal Strength Changes.
This commit is contained in:
@@ -556,10 +556,7 @@ public class SignalStrength implements Parcelable {
|
|||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public int getLteDbm() {
|
public int getLteDbm() {
|
||||||
log("TODO: teach getLteDbm to compute dBm properly");
|
return mLteRsrp;
|
||||||
int level = -1;
|
|
||||||
if (DBG) log("getLteDbm=" + level);
|
|
||||||
return level;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -568,22 +565,33 @@ public class SignalStrength implements Parcelable {
|
|||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public int getLteLevel() {
|
public int getLteLevel() {
|
||||||
log("TODO: teach getLteLevel to compute Level properly");
|
int levelLteRsrp = 0;
|
||||||
int level = SIGNAL_STRENGTH_MODERATE;
|
|
||||||
if (DBG) log("getLteLevel=" + level);
|
if (mLteRsrp == -1) levelLteRsrp = 0;
|
||||||
return level;
|
else if (mLteRsrp >= -85) levelLteRsrp = SIGNAL_STRENGTH_GREAT;
|
||||||
|
else if (mLteRsrp >= -95) levelLteRsrp = SIGNAL_STRENGTH_GOOD;
|
||||||
|
else if (mLteRsrp >= -105) levelLteRsrp = SIGNAL_STRENGTH_MODERATE;
|
||||||
|
else if (mLteRsrp >= -115) levelLteRsrp = SIGNAL_STRENGTH_POOR;
|
||||||
|
else levelLteRsrp = 0;
|
||||||
|
|
||||||
|
if (DBG) log("Lte level: "+levelLteRsrp);
|
||||||
|
return levelLteRsrp;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the LTE signal level as an asu value between 0..31, 99 is unknown
|
* Get the LTE signal level as an asu value between 0..97, 99 is unknown
|
||||||
|
* Asu is calculated based on 3GPP RSRP. Refer to 3GPP 27.007 (Ver 10.3.0) Sec 8.69
|
||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public int getLteAsuLevel() {
|
public int getLteAsuLevel() {
|
||||||
log("TODO: teach getLteAsuLevel to compute asu Level properly");
|
int lteAsuLevel = 99;
|
||||||
int level = 4;
|
int lteDbm = getLteDbm();
|
||||||
if (DBG) log("getLteAsuLevel=" + level);
|
if (lteDbm <= -140) lteAsuLevel = 0;
|
||||||
return level;
|
else if (lteDbm >= -43) lteAsuLevel = 97;
|
||||||
|
else lteAsuLevel = lteDbm + 140;
|
||||||
|
if (DBG) log("Lte Asu level: "+lteAsuLevel);
|
||||||
|
return lteAsuLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user