summaryrefslogtreecommitdiffstats
path: root/telephony
diff options
context:
space:
mode:
authorJohn Wang <johnwang@google.com>2010-01-13 17:55:57 -0800
committerJohn Wang <johnwang@google.com>2010-01-13 17:55:57 -0800
commitb61c1a0f8b813347f376e7eea6d388342d8adfe3 (patch)
treee0cbc84401f179fb823507a55228d01c654f5ab2 /telephony
parent1193ae4e824c66b75083c444ce0f250594e138ee (diff)
downloadframeworks_base-b61c1a0f8b813347f376e7eea6d388342d8adfe3.zip
frameworks_base-b61c1a0f8b813347f376e7eea6d388342d8adfe3.tar.gz
frameworks_base-b61c1a0f8b813347f376e7eea6d388342d8adfe3.tar.bz2
Add Event log for RAT switch.
Write event log while the 2G/3G radio access technology switched.
Diffstat (limited to 'telephony')
-rw-r--r--telephony/java/com/android/internal/telephony/TelephonyEventLog.java1
-rw-r--r--telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java16
2 files changed, 17 insertions, 0 deletions
diff --git a/telephony/java/com/android/internal/telephony/TelephonyEventLog.java b/telephony/java/com/android/internal/telephony/TelephonyEventLog.java
index cdce488..0f15cb6 100644
--- a/telephony/java/com/android/internal/telephony/TelephonyEventLog.java
+++ b/telephony/java/com/android/internal/telephony/TelephonyEventLog.java
@@ -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;
}
diff --git a/telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java b/telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
index 8140654..3bf76d4 100644
--- a/telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
+++ b/telephony/java/com/android/internal/telephony/gsm/GsmServiceStateTracker.java
@@ -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;