am 6b178e47: Merge "Always assume evdoXxxx signal strength values are correct." into eclair
Merge commit '6b178e472266052b4a9b28b1e4a5cef07f1ebf8b' into eclair-plus-aosp * commit '6b178e472266052b4a9b28b1e4a5cef07f1ebf8b': Always assume evdoXxxx signal strength values are correct.
This commit is contained in:
@@ -1170,32 +1170,23 @@ final class CdmaServiceStateTracker extends ServiceStateTracker {
|
|||||||
} else {
|
} else {
|
||||||
int[] ints = (int[])ar.result;
|
int[] ints = (int[])ar.result;
|
||||||
int offset = 2;
|
int offset = 2;
|
||||||
|
|
||||||
int cdmaDbm = (ints[offset] > 0) ? -ints[offset] : -120;
|
int cdmaDbm = (ints[offset] > 0) ? -ints[offset] : -120;
|
||||||
int cdmaEcio = (ints[offset+1] > 0) ? -ints[offset+1] : -160;
|
int cdmaEcio = (ints[offset+1] > 0) ? -ints[offset+1] : -160;
|
||||||
|
int evdoRssi = (ints[offset+2] > 0) ? -ints[offset+2] : -120;
|
||||||
|
int evdoEcio = (ints[offset+3] > 0) ? -ints[offset+3] : -1;
|
||||||
|
int evdoSnr = ((ints[offset+4] > 0) && (ints[offset+4] <= 8)) ? ints[offset+4] : -1;
|
||||||
|
|
||||||
int evdoRssi = -1;
|
//log(String.format("onSignalStrengthResult cdmaDbm=%d cdmaEcio=%d evdoRssi=%d evdoEcio=%d evdoSnr=%d",
|
||||||
int evdoEcio = -1;
|
// cdmaDbm, cdmaEcio, evdoRssi, evdoEcio, evdoSnr));
|
||||||
int evdoSnr = -1;
|
|
||||||
if ((networkType == ServiceState.RADIO_TECHNOLOGY_EVDO_0)
|
|
||||||
|| (networkType == ServiceState.RADIO_TECHNOLOGY_EVDO_A)) {
|
|
||||||
evdoRssi = (ints[offset+2] > 0) ? -ints[offset+2] : -120;
|
|
||||||
evdoEcio = (ints[offset+3] > 0) ? -ints[offset+3] : -1;
|
|
||||||
evdoSnr = ((ints[offset+4] > 0) && (ints[offset+4] <= 8)) ? ints[offset+4] : -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
mSignalStrength = new SignalStrength(99, -1, cdmaDbm, cdmaEcio,
|
mSignalStrength = new SignalStrength(99, -1, cdmaDbm, cdmaEcio,
|
||||||
evdoRssi, evdoEcio, evdoSnr, false);
|
evdoRssi, evdoEcio, evdoSnr, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!mSignalStrength.equals(oldSignalStrength)) {
|
try {
|
||||||
try { // This takes care of delayed EVENT_POLL_SIGNAL_STRENGTH (scheduled after
|
phone.notifySignalStrength();
|
||||||
// POLL_PERIOD_MILLIS) during Radio Technology Change)
|
} catch (NullPointerException ex) {
|
||||||
phone.notifySignalStrength();
|
log("onSignalStrengthResult() Phone already destroyed: " + ex
|
||||||
} catch (NullPointerException ex) {
|
+ "SignalStrength not notified");
|
||||||
log("onSignalStrengthResult() Phone already destroyed: " + ex
|
|
||||||
+ "SignalStrength not notified");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user