Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(43)

Unified Diff: net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java

Issue 11628008: Provide NetworkChangeNotifierAndroid with the actual initial connection type. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Make NCNA fetch the connection type through NCNDA Created 8 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
diff --git a/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java b/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
index 90aa753186cdcfe49ed4bacb594a89db319c3398..c865756ff28abd67f3d3ff5ece06869a807cff24 100644
--- a/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
+++ b/net/android/java/src/org/chromium/net/NetworkChangeNotifierAutoDetect.java
@@ -39,6 +39,10 @@ public class NetworkChangeNotifierAutoDetect extends BroadcastReceiver
mConnectivityManager.getActiveNetworkInfo() != null;
}
+ boolean isConnected() {
+ return mConnectivityManager.getActiveNetworkInfo().isConnected();
+ }
+
int getNetworkType() {
return mConnectivityManager.getActiveNetworkInfo().getType();
}
@@ -71,10 +75,12 @@ public class NetworkChangeNotifierAutoDetect extends BroadcastReceiver
mObserver = observer;
mContext = context;
mConnectivityManagerDelegate = new ConnectivityManagerDelegate(context);
- mConnectionType = currentConnectionType(context);
+ mConnectionType = currentConnectionType();
if (ActivityStatus.getState() != ActivityStatus.PAUSED) {
registerReceiver();
+ // Provide the observer with an initial connection type.
+ mObserver.onConnectionTypeChanged(mConnectionType);
}
ActivityStatus.registerStateListener(this);
}
@@ -110,9 +116,10 @@ public class NetworkChangeNotifierAutoDetect extends BroadcastReceiver
}
}
- private int currentConnectionType(Context context) {
+ private int currentConnectionType() {
// Track exactly what type of connection we have.
- if (!mConnectivityManagerDelegate.activeNetworkExists()) {
+ if (!mConnectivityManagerDelegate.activeNetworkExists() ||
+ !mConnectivityManagerDelegate.isConnected()) {
return NetworkChangeNotifier.CONNECTION_NONE;
}
@@ -158,7 +165,7 @@ public class NetworkChangeNotifierAutoDetect extends BroadcastReceiver
boolean noConnection =
intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
int newConnectionType = noConnection ?
- NetworkChangeNotifier.CONNECTION_NONE : currentConnectionType(context);
+ NetworkChangeNotifier.CONNECTION_NONE : currentConnectionType();
if (newConnectionType != mConnectionType) {
mConnectionType = newConnectionType;
« no previous file with comments | « no previous file | net/android/network_change_notifier_android.h » ('j') | net/android/network_change_notifier_delegate_android.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698