[IT4.7] Add network activity info into dumpsys for debugging

Add network activity info into part of ConnectivityService dump
for debugging.

Sample dump:

Legacy network activity:
  mNetworkActive=true
  Idle timers:
    wlan0:
      timeout=15 type=1

Bug: 170598012
Test: adb shell dumpsys connectivity
Change-Id: Ie03e82767564543d8d143873d7ddc0ea07102cb2
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index 389b579..60a467d 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -2693,6 +2693,12 @@
         pw.increaseIndent();
         mPermissionMonitor.dump(pw);
         pw.decreaseIndent();
+
+        pw.println();
+        pw.println("Legacy network activity:");
+        pw.increaseIndent();
+        mNetworkActivityTracker.dump(pw);
+        pw.decreaseIndent();
     }
 
     private void dumpNetworks(IndentingPrintWriter pw) {
@@ -8892,6 +8898,19 @@
         public void unregisterNetworkActivityListener(@NonNull INetworkActivityListener l) {
             mNetworkActivityListeners.unregister(l);
         }
+
+        public void dump(IndentingPrintWriter pw) {
+            synchronized (mActiveIdleTimers) {
+                pw.print("mNetworkActive="); pw.println(mNetworkActive);
+                pw.println("Idle timers:");
+                for (HashMap.Entry<String, IdleTimerParams> ent : mActiveIdleTimers.entrySet()) {
+                    pw.print("  "); pw.print(ent.getKey()); pw.println(":");
+                    final IdleTimerParams params = ent.getValue();
+                    pw.print("    timeout="); pw.print(params.timeout);
+                    pw.print(" type="); pw.println(params.transportType);
+                }
+            }
+        }
     }
 
     /**