From efbca4d01d2fe6ecb9e697aea71da44fefcfc094 Mon Sep 17 00:00:00 2001 From: Wink Saville Date: Mon, 8 Apr 2013 11:35:47 -0700 Subject: [PATCH] Fix SignalStrength response. Add makeSignalStrengthFromRilParcel for use by RIL responseRilSignalStrength. Bug: 8561333 Change-Id: Ie6eb3b0335e8d7ea114ec70b3fb72e917094632e --- .../android/telephony/SignalStrength.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/telephony/java/android/telephony/SignalStrength.java b/telephony/java/android/telephony/SignalStrength.java index 3ed9cef5a1d5f..674955cfe6476 100644 --- a/telephony/java/android/telephony/SignalStrength.java +++ b/telephony/java/android/telephony/SignalStrength.java @@ -273,6 +273,33 @@ public class SignalStrength implements Parcelable { isGsm = (in.readInt() != 0); } + /** + * Make a SignalStrength object from the given parcel as passed up by + * the ril which does not have isGsm. isGsm will be changed by ServiceStateTracker + * so the default is a don't care. + * + * @hide + */ + public static SignalStrength makeSignalStrengthFromRilParcel(Parcel in) { + if (DBG) log("Size of signalstrength parcel:" + in.dataSize()); + + SignalStrength ss = new SignalStrength(); + ss.mGsmSignalStrength = in.readInt(); + ss.mGsmBitErrorRate = in.readInt(); + ss.mCdmaDbm = in.readInt(); + ss.mCdmaEcio = in.readInt(); + ss.mEvdoDbm = in.readInt(); + ss.mEvdoEcio = in.readInt(); + ss.mEvdoSnr = in.readInt(); + ss.mLteSignalStrength = in.readInt(); + ss.mLteRsrp = in.readInt(); + ss.mLteRsrq = in.readInt(); + ss.mLteRssnr = in.readInt(); + ss.mLteCqi = in.readInt(); + + return ss; + } + /** * {@link Parcelable#writeToParcel} */