diff options
| -rwxr-xr-x | api/system-current.txt | 2 | ||||
| -rw-r--r-- | api/test-current.txt | 2 | ||||
| -rw-r--r-- | core/java/android/app/SystemServiceRegistry.java | 8 | ||||
| -rw-r--r-- | core/java/android/content/Context.java | 2 | ||||
| -rw-r--r-- | core/java/android/net/NetworkStack.java | 17 | ||||
| -rw-r--r-- | packages/Tethering/src/com/android/server/connectivity/tethering/TetheringService.java | 4 | ||||
| -rw-r--r-- | tests/net/java/com/android/server/ConnectivityServiceTest.java | 1 |
7 files changed, 19 insertions, 17 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index 9515f7160616..7a5373b9d895 100755 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -1807,7 +1807,6 @@ package android.content { field public static final String NETD_SERVICE = "netd"; field public static final String NETWORK_POLICY_SERVICE = "netpolicy"; field public static final String NETWORK_SCORE_SERVICE = "network_score"; - field public static final String NETWORK_STACK_SERVICE = "network_stack"; field public static final String OEM_LOCK_SERVICE = "oem_lock"; field public static final String PERMISSION_SERVICE = "permission"; field public static final String PERSISTENT_DATA_BLOCK_SERVICE = "persistent_data_block"; @@ -6401,6 +6400,7 @@ package android.net { } public class NetworkStack { + method @Nullable public static android.os.IBinder getService(); field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; } diff --git a/api/test-current.txt b/api/test-current.txt index 86eea6275f89..df56f2c24d28 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -829,7 +829,6 @@ package android.content { field public static final String DEVICE_IDLE_CONTROLLER = "deviceidle"; field public static final String DREAM_SERVICE = "dream"; field public static final String ETHERNET_SERVICE = "ethernet"; - field public static final String NETWORK_STACK_SERVICE = "network_stack"; field public static final String PERMISSION_SERVICE = "permission"; field public static final String POWER_WHITELIST_MANAGER = "power_whitelist"; field public static final String ROLLBACK_SERVICE = "rollback"; @@ -1830,6 +1829,7 @@ package android.net { } public class NetworkStack { + method @Nullable public static android.os.IBinder getService(); field public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; } diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java index e8f30df614f3..1aabd24d6df6 100644 --- a/core/java/android/app/SystemServiceRegistry.java +++ b/core/java/android/app/SystemServiceRegistry.java @@ -359,14 +359,6 @@ public final class SystemServiceRegistry { } }); - registerService(Context.NETWORK_STACK_SERVICE, IBinder.class, - new StaticServiceFetcher<IBinder>() { - @Override - public IBinder createService() { - return ServiceManager.getService(Context.NETWORK_STACK_SERVICE); - } - }); - registerService(Context.TETHERING_SERVICE, TetheringManager.class, new CachedServiceFetcher<TetheringManager>() { @Override diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index c8c8fa6d385f..6f4606659c3e 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -3984,8 +3984,6 @@ public abstract class Context { * @hide * @see NetworkStackClient */ - @SystemApi - @TestApi public static final String NETWORK_STACK_SERVICE = "network_stack"; /** diff --git a/core/java/android/net/NetworkStack.java b/core/java/android/net/NetworkStack.java index a46c410bd55e..a6d52d133ce9 100644 --- a/core/java/android/net/NetworkStack.java +++ b/core/java/android/net/NetworkStack.java @@ -19,15 +19,17 @@ import static android.Manifest.permission.NETWORK_STACK; import static android.content.pm.PackageManager.PERMISSION_GRANTED; import android.annotation.NonNull; +import android.annotation.Nullable; import android.annotation.SystemApi; import android.annotation.TestApi; import android.content.Context; +import android.os.IBinder; +import android.os.ServiceManager; import java.util.ArrayList; import java.util.Arrays; /** - * - * Constants for client code communicating with the network stack service. + * Constants and utilities for client code communicating with the network stack service. * @hide */ @SystemApi @@ -43,6 +45,17 @@ public class NetworkStack { public static final String PERMISSION_MAINLINE_NETWORK_STACK = "android.permission.MAINLINE_NETWORK_STACK"; + /** + * Get an {@link IBinder} representing the NetworkStack stable AIDL Interface, if registered. + * @hide + */ + @Nullable + @SystemApi + @TestApi + public static IBinder getService() { + return ServiceManager.getService(Context.NETWORK_STACK_SERVICE); + } + private NetworkStack() {} /** diff --git a/packages/Tethering/src/com/android/server/connectivity/tethering/TetheringService.java b/packages/Tethering/src/com/android/server/connectivity/tethering/TetheringService.java index 020b32adcfd7..c5329d8d3316 100644 --- a/packages/Tethering/src/com/android/server/connectivity/tethering/TetheringService.java +++ b/packages/Tethering/src/com/android/server/connectivity/tethering/TetheringService.java @@ -33,6 +33,7 @@ import android.net.ITetheringConnector; import android.net.ITetheringEventCallback; import android.net.NetworkCapabilities; import android.net.NetworkRequest; +import android.net.NetworkStack; import android.net.TetheringRequestParcel; import android.net.dhcp.DhcpServerCallbacks; import android.net.dhcp.DhcpServingParamsParcel; @@ -364,8 +365,7 @@ public class TetheringService extends Service { IBinder connector; try { final long before = System.currentTimeMillis(); - while ((connector = (IBinder) mContext.getSystemService( - Context.NETWORK_STACK_SERVICE)) == null) { + while ((connector = NetworkStack.getService()) == null) { if (System.currentTimeMillis() - before > NETWORKSTACK_TIMEOUT_MS) { Log.wtf(TAG, "Timeout, fail to get INetworkStackConnector"); return null; diff --git a/tests/net/java/com/android/server/ConnectivityServiceTest.java b/tests/net/java/com/android/server/ConnectivityServiceTest.java index f3b61bade23e..f7ad09ca36a6 100644 --- a/tests/net/java/com/android/server/ConnectivityServiceTest.java +++ b/tests/net/java/com/android/server/ConnectivityServiceTest.java @@ -428,7 +428,6 @@ public class ConnectivityServiceTest { public Object getSystemService(String name) { if (Context.CONNECTIVITY_SERVICE.equals(name)) return mCm; if (Context.NOTIFICATION_SERVICE.equals(name)) return mNotificationManager; - if (Context.NETWORK_STACK_SERVICE.equals(name)) return mNetworkStack; if (Context.USER_SERVICE.equals(name)) return mUserManager; if (Context.ALARM_SERVICE.equals(name)) return mAlarmManager; if (Context.LOCATION_SERVICE.equals(name)) return mLocationManager; |