From 2e84da3ffa97099a396a6d7a4210e3dda34e5ed2 Mon Sep 17 00:00:00 2001 From: Isaac Katzenelson Date: Mon, 6 Feb 2023 17:50:11 +0000 Subject: [PATCH] Replace public ctor with manager creation Bug: 267765640 Test: atest SharedConnectivityManagerTest Change-Id: I63a00ac2c77b2943e755be3c528bcd3ecb885626 --- core/api/system-current.txt | 2 +- core/java/android/app/SystemServiceRegistry.java | 8 ++++++++ core/java/android/content/Context.java | 12 ++++++++++++ .../app/SharedConnectivityManager.java | 4 ++-- 4 files changed, 23 insertions(+), 3 deletions(-) diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 4a0b2eb502dd3..5750b9f9c51d6 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -3272,6 +3272,7 @@ package android.content { field public static final String SAFETY_CENTER_SERVICE = "safety_center"; field public static final String SEARCH_UI_SERVICE = "search_ui"; field public static final String SECURE_ELEMENT_SERVICE = "secure_element"; + field public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity"; field public static final String SMARTSPACE_SERVICE = "smartspace"; field public static final String STATS_MANAGER = "stats"; field public static final String SYSTEM_CONFIG_SERVICE = "system_config"; @@ -9838,7 +9839,6 @@ package android.net.wifi.sharedconnectivity.app { } public class SharedConnectivityManager { - ctor public SharedConnectivityManager(@NonNull android.content.Context); method public boolean connectKnownNetwork(@NonNull android.net.wifi.sharedconnectivity.app.KnownNetwork); method public boolean connectTetherNetwork(@NonNull android.net.wifi.sharedconnectivity.app.TetherNetwork); method public boolean disconnectTetherNetwork(); diff --git a/core/java/android/app/SystemServiceRegistry.java b/core/java/android/app/SystemServiceRegistry.java index 031d351647c2c..0365f8c0548c8 100644 --- a/core/java/android/app/SystemServiceRegistry.java +++ b/core/java/android/app/SystemServiceRegistry.java @@ -156,6 +156,7 @@ import android.net.vcn.IVcnManagementService; import android.net.vcn.VcnManager; import android.net.wifi.WifiFrameworkInitializer; import android.net.wifi.nl80211.WifiNl80211Manager; +import android.net.wifi.sharedconnectivity.app.SharedConnectivityManager; import android.nfc.NfcManager; import android.ondevicepersonalization.OnDevicePersonalizationFrameworkInitializer; import android.os.BatteryManager; @@ -1572,6 +1573,13 @@ public final class SystemServiceRegistry { Context.GRAMMATICAL_INFLECTION_SERVICE))); }}); + registerService(Context.SHARED_CONNECTIVITY_SERVICE, SharedConnectivityManager.class, + new CachedServiceFetcher() { + @Override + public SharedConnectivityManager createService(ContextImpl ctx) { + return new SharedConnectivityManager(ctx); + } + }); sInitializing = true; try { diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java index 6aa7f3f38d9a6..0d330ce79e8f2 100644 --- a/core/java/android/content/Context.java +++ b/core/java/android/content/Context.java @@ -6231,6 +6231,18 @@ public abstract class Context { */ public static final String SATELLITE_SERVICE = "satellite"; + /** + * Use with {@link #getSystemService(String)} to retrieve a + * {@link android.net.wifi.sharedconnectivity.app.SharedConnectivityManager} for accessing + * shared connectivity services. + * + * @see #getSystemService(String) + * @see android.net.wifi.sharedconnectivity.app.SharedConnectivityManager + * @hide + */ + @SystemApi + public static final String SHARED_CONNECTIVITY_SERVICE = "shared_connectivity"; + /** * Determine whether the given permission is allowed for a particular * process and user ID running in the system. diff --git a/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivityManager.java b/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivityManager.java index b43e4f7f57b55..9d9d24b5289a2 100644 --- a/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivityManager.java +++ b/wifi/java/src/android/net/wifi/sharedconnectivity/app/SharedConnectivityManager.java @@ -19,7 +19,6 @@ package android.net.wifi.sharedconnectivity.app; import android.annotation.CallbackExecutor; import android.annotation.NonNull; import android.annotation.Nullable; -import android.annotation.SuppressLint; import android.annotation.SystemApi; import android.annotation.TestApi; import android.content.ComponentName; @@ -114,8 +113,9 @@ public class SharedConnectivityManager { * * Automatically binds to implementation of {@link SharedConnectivityService} specified in * device overlay. + * + * @hide */ - @SuppressLint("ManagerConstructor") public SharedConnectivityManager(@NonNull Context context) { ServiceConnection serviceConnection = new ServiceConnection() { @Override