am 99f2a4bb: Merge "Add Event log for RAT switch." into eclair

Merge commit '99f2a4bb519e390eacc9807443c74ca05f176242' into eclair-plus-aosp

* commit '99f2a4bb519e390eacc9807443c74ca05f176242':
  Add Event log for RAT switch.
This commit is contained in:
John Wang
2010-01-14 17:07:30 -08:00
committed by Android Git Automerger
2 changed files with 17 additions and 0 deletions

View File

@@ -32,4 +32,5 @@ public final class TelephonyEventLog {
public static final int EVENT_LOG_PDP_NETWORK_DROP = 50109;
public static final int EVENT_LOG_CDMA_DATA_SETUP_FAILED = 50110;
public static final int EVENT_LOG_CDMA_DATA_DROP = 50111;
public static final int EVENT_LOG_GSM_RAT_SWITCHED = 50112;
}

View File

@@ -38,6 +38,7 @@ import android.provider.Settings.SettingNotFoundException;
import android.provider.Telephony.Intents;
import android.telephony.ServiceState;
import android.telephony.SignalStrength;
import android.telephony.TelephonyManager;
import android.telephony.gsm.GsmCellLocation;
import android.text.TextUtils;
import android.util.Config;
@@ -848,6 +849,21 @@ final class GsmServiceStateTracker extends ServiceStateTracker {
cellLoc = newCellLoc;
newCellLoc = tcl;
// Add an event log when network type switched
// TODO: we may add filtering to reduce the event logged,
// i.e. check preferred network setting, only switch to 2G, etc
if (hasNetworkTypeChanged) {
int cid = -1;
GsmCellLocation loc = ((GsmCellLocation)phone.getCellLocation());
if (loc != null) cid = loc.getCid();
EventLog.List val = new EventLog.List(cid, networkType, newNetworkType);
EventLog.writeEvent(TelephonyEventLog.EVENT_LOG_GSM_RAT_SWITCHED, val);
Log.d(LOG_TAG,
"RAT switched " + networkTypeToString(networkType) + " -> "
+ networkTypeToString(newNetworkType) + " at cell " + cid);
}
gprsState = newGPRSState;
networkType = newNetworkType;