From 4068dcbab0d82c6c3b71ac8459c81ea39fb7483c Mon Sep 17 00:00:00 2001 From: Chiachang Wang Date: Tue, 15 Dec 2020 15:56:00 +0800 Subject: [PATCH] [IT03] Add replacement methods for network activity Reference for NMS in ConnectivityManager should be removed for incoming CS mainline. The API for listening network activity should not go into NMS. As an alternative, the registry requests should be sent to CS and handled by CS. Add necessary alternative in IConnectivityManger first. The detail implementation will be added in the follow up commits. Bug: 170598012 Test: m Change-Id: If4d24b937feb88a61f22073af2f671cf20298364 --- .../android/net/IConnectivityManager.aidl | 7 +++++ .../android/server/ConnectivityService.java | 26 +++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/core/java/android/net/IConnectivityManager.aidl b/core/java/android/net/IConnectivityManager.aidl index fb01283633..95a2f2efeb 100644 --- a/core/java/android/net/IConnectivityManager.aidl +++ b/core/java/android/net/IConnectivityManager.aidl @@ -31,6 +31,7 @@ import android.net.ISocketKeepaliveCallback; import android.net.ProxyInfo; import android.os.Bundle; import android.os.IBinder; +import android.os.INetworkActivityListener; import android.os.Messenger; import android.os.ParcelFileDescriptor; import android.os.PersistableBundle; @@ -233,4 +234,10 @@ interface IConnectivityManager in PersistableBundle extras); void systemReady(); + + void registerNetworkActivityListener(in INetworkActivityListener l); + + void unregisterNetworkActivityListener(in INetworkActivityListener l); + + boolean isDefaultNetworkActive(); } diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java index 414d75b4d7..52df42fbbc 100644 --- a/services/core/java/com/android/server/ConnectivityService.java +++ b/services/core/java/com/android/server/ConnectivityService.java @@ -146,6 +146,7 @@ import android.os.Bundle; import android.os.Handler; import android.os.HandlerThread; import android.os.IBinder; +import android.os.INetworkActivityListener; import android.os.INetworkManagementService; import android.os.Looper; import android.os.Message; @@ -2339,6 +2340,31 @@ public class ConnectivityService extends IConnectivityManager.Stub mHandler.sendMessage(mHandler.obtainMessage(EVENT_SYSTEM_READY)); } + /** + * Start listening for default data network activity state changes. + */ + @Override + public void registerNetworkActivityListener(@NonNull INetworkActivityListener l) { + // TODO: Replace network activity listener registry in ConnectivityManager from NMS to here + } + + /** + * Stop listening for default data network activity state changes. + */ + @Override + public void unregisterNetworkActivityListener(@NonNull INetworkActivityListener l) { + // TODO: Replace network activity listener registry in ConnectivityManager from NMS to here + } + + /** + * Check whether the default network radio is currently active. + */ + @Override + public boolean isDefaultNetworkActive() { + // TODO: Replace isNetworkActive() in NMS. + return false; + } + /** * Setup data activity tracking for the given network. *