summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Subir Jhanb <subir@google.com> 2011-01-10 14:18:09 -0800
committer Subir Jhanb <subir@google.com> 2011-01-10 14:18:09 -0800
commite896be71c70c7aaa86886fec1044c53e93c42621 (patch)
tree6742926325cb119199a06fda3ae0477ad584c4ab
parentd94988bb0cc65e5de71ab3c43ddf26e5c72dbc32 (diff)
Making the sync manager take the data connected value from ConnectivityManager and not from the intent.
BUG:3337128 Change-Id: Ife2705569fcdde1b201773d6622a8a9d0b7ccfa1
-rw-r--r--core/java/android/content/SyncManager.java42
1 files changed, 5 insertions, 37 deletions
diff --git a/core/java/android/content/SyncManager.java b/core/java/android/content/SyncManager.java
index 8b292c90c9ee..58739dac6eb7 100644
--- a/core/java/android/content/SyncManager.java
+++ b/core/java/android/content/SyncManager.java
@@ -237,43 +237,7 @@ public class SyncManager implements OnAccountsUpdateListener {
private BroadcastReceiver mConnectivityIntentReceiver =
new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
- NetworkInfo networkInfo =
- intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
- NetworkInfo.State state = (networkInfo == null ? NetworkInfo.State.UNKNOWN :
- networkInfo.getState());
- if (Log.isLoggable(TAG, Log.VERBOSE)) {
- Log.v(TAG, "received connectivity action. network info: " + networkInfo);
- }
-
- final boolean wasConnected = mDataConnectionIsConnected;
- // only pay attention to the CONNECTED and DISCONNECTED states.
- // if connected, we are connected.
- // if disconnected, we may not be connected. in some cases, we may be connected on
- // a different network.
- // e.g., if switching from GPRS to WiFi, we may receive the CONNECTED to WiFi and
- // DISCONNECTED for GPRS in any order. if we receive the CONNECTED first, and then
- // a DISCONNECTED, we want to make sure we set mDataConnectionIsConnected to true
- // since we still have a WiFi connection.
- switch (state) {
- case CONNECTED:
- mDataConnectionIsConnected = true;
- break;
- case DISCONNECTED:
- mDataConnectionIsConnected = !intent.getBooleanExtra(
- ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
- break;
- default:
- // ignore the rest of the states -- leave our boolean alone.
- }
- if (mDataConnectionIsConnected) {
- if (!wasConnected) {
- if (Log.isLoggable(TAG, Log.VERBOSE)) {
- Log.v(TAG, "Reconnection detected: clearing all backoffs");
- }
- mSyncStorageEngine.clearAllBackoffs();
- }
- sendCheckAlarmsMessage();
- }
+ sendCheckAlarmsMessage();
}
};
@@ -1409,6 +1373,10 @@ public class SyncManager implements OnAccountsUpdateListener {
public void handleMessage(Message msg) {
long earliestFuturePollTime = Long.MAX_VALUE;
long nextPendingSyncTime = Long.MAX_VALUE;
+ // Setting the value here instead of a method because we want the dumpsys logs
+ // to have the most recent value used.
+ mDataConnectionIsConnected =
+ getConnectivityManager().getActiveNetworkInfo().isConnected();
try {
waitUntilReadyToRun();
mSyncManagerWakeLock.acquire();