summaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2014-10-03 17:08:47 +0900
committerLorenzo Colitti <lorenzo@google.com>2015-05-18 23:37:22 +0900
commite149ffe2e90a099dd2ea1446fc756cb464bc3c60 (patch)
treea8dce4799b550c987b69277fb3471e9eb2ed55cb /apps
parent22e1a9ab033119848c0c83b7961110e800b81c34 (diff)
downloadandroid_development-e149ffe2e90a099dd2ea1446fc756cb464bc3c60.tar.gz
android_development-e149ffe2e90a099dd2ea1446fc756cb464bc3c60.tar.bz2
android_development-e149ffe2e90a099dd2ea1446fc756cb464bc3c60.zip
Add network callback logging to the Connectivity app in dev tools.
Change-Id: I6027db6330bca7c8bce1b405c0972690e8db77d9
Diffstat (limited to 'apps')
-rw-r--r--apps/Development/src/com/android/development/Connectivity.java41
1 files changed, 41 insertions, 0 deletions
diff --git a/apps/Development/src/com/android/development/Connectivity.java b/apps/Development/src/com/android/development/Connectivity.java
index 5ff72add9..0f0030f95 100644
--- a/apps/Development/src/com/android/development/Connectivity.java
+++ b/apps/Development/src/com/android/development/Connectivity.java
@@ -28,8 +28,12 @@ import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.pm.PackageManager.NameNotFoundException;
import android.net.ConnectivityManager;
+import android.net.ConnectivityManager.NetworkCallback;
import android.net.LinkAddress;
+import android.net.LinkProperties;
import android.net.Network;
+import android.net.NetworkCapabilities;
+import android.net.NetworkRequest;
import android.net.NetworkUtils;
import android.net.RouteInfo;
import android.net.wifi.ScanResult;
@@ -254,6 +258,34 @@ public class Connectivity extends Activity {
}
}
+ private static class DevToolsNetworkCallback extends NetworkCallback {
+ private static final String TAG = "DevToolsNetworkCallback";
+
+ public void onPreCheck(Network network) {
+ Log.d(TAG, "onPreCheck: " + network.netId);
+ }
+
+ public void onAvailable(Network network) {
+ Log.d(TAG, "onAvailable: " + network.netId);
+ }
+
+ public void onCapabilitiesChanged(Network network, NetworkCapabilities nc) {
+ Log.d(TAG, "onCapabilitiesChanged: " + network.netId + " " + nc.toString());
+ }
+
+ public void onLinkPropertiesChanged(Network network, LinkProperties lp) {
+ Log.d(TAG, "onLinkPropertiesChanged: " + network.netId + " " + lp.toString());
+ }
+
+ public void onLosing(Network network, int maxMsToLive) {
+ Log.d(TAG, "onLosing: " + network.netId + " " + maxMsToLive);
+ }
+
+ public void onLost(Network network) {
+ Log.d(TAG, "onLost: " + network.netId);
+ }
+ }
+ private DevToolsNetworkCallback mCallback;
@Override
public void onCreate(Bundle icicle) {
@@ -325,11 +357,20 @@ public class Connectivity extends Activity {
mLinkStatsResults = (TextView)findViewById(R.id.stats);
mLinkStatsResults.setVisibility(View.VISIBLE);
+
+ NetworkRequest.Builder builder = new NetworkRequest.Builder();
+ for (int i = 0; i < 255; i++) {
+ try { builder.removeCapability(i); } catch (IllegalArgumentException e) {}
+ }
+ NetworkRequest request = builder.build();
+ mCallback = new DevToolsNetworkCallback();
+ mCm.registerNetworkCallback(request, mCallback);
}
@Override
public void onDestroy() {
super.onDestroy();
+ mCm.unregisterNetworkCallback(mCallback);
unregisterReceiver(mReceiver);
}