diff options
author | Ramesh Sudini <ramesh.sudini@motorola.com> | 2011-04-28 09:39:41 -0500 |
---|---|---|
committer | Wink Saville <wink@google.com> | 2011-04-28 12:24:13 -0700 |
commit | 662b016d6ef0cc95c057e573c26bf9eeae59470b (patch) | |
tree | 9115fe953a642e5814f729b5cb2f4242e56a9bdd | |
parent | 7353301f73bfd0fd54ca515f3385946abe56d620 (diff) | |
download | frameworks_base-662b016d6ef0cc95c057e573c26bf9eeae59470b.zip frameworks_base-662b016d6ef0cc95c057e573c26bf9eeae59470b.tar.gz frameworks_base-662b016d6ef0cc95c057e573c26bf9eeae59470b.tar.bz2 |
Telephony: Data availability indication upon records loaded.
This will make sure if records loaded comes after radio availability we dont miss sending
out dataAvailability.
Change-Id: Ibbecaa89f28e1441e799bf1681d0b4692cf0f13a
-rw-r--r-- | telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java b/telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java index 047a74b..8e675fc 100644 --- a/telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java +++ b/telephony/java/com/android/internal/telephony/gsm/GsmDataConnectionTracker.java @@ -115,6 +115,7 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker { static final Uri PREFERAPN_URI = Uri.parse("content://telephony/carriers/preferapn"); static final String APN_ID = "apn_id"; private boolean canSetPreferApn = false; + private boolean mRadioAvailable = false; @Override protected void onActionIntentReconnectAlarm(Intent intent) { @@ -1325,6 +1326,10 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker { private void onRecordsLoaded() { if (DBG) log("onRecordsLoaded: createAllApnList"); createAllApnList(); + if (mRadioAvailable) { + if (DBG) log("onRecordsLoaded, notifying data availability"); + notifyDataAvailability(null); + } setupDataOnReadyApns(Phone.REASON_SIM_LOADED); } @@ -1436,6 +1441,8 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker { @Override protected void onRadioAvailable() { + + mRadioAvailable = true; if (mPhone.getSimulatedRadioControl() != null) { // Assume data is connected on the simulator // FIXME this can be improved @@ -1463,6 +1470,7 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker { dc.resetRetryCount(); } mReregisterOnReconnectFailure = false; + mRadioAvailable = false; if (mPhone.getSimulatedRadioControl() != null) { // Assume data is connected on the simulator @@ -1472,6 +1480,7 @@ public final class GsmDataConnectionTracker extends DataConnectionTracker { if (DBG) log("Radio is off and clean up all connection"); cleanUpAllConnections(false, Phone.REASON_RADIO_TURNED_OFF); } + notifyDataAvailability(null); } @Override |