diff --git a/framework-t/api/system-current.txt b/framework-t/api/system-current.txt index 05cf9e8463..3513573839 100644 --- a/framework-t/api/system-current.txt +++ b/framework-t/api/system-current.txt @@ -378,11 +378,11 @@ package android.net.netstats.provider { package android.net.nsd { public final class NsdManager { - method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void registerOffloadEngine(@NonNull String, long, long, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.OffloadEngine); - method @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void unregisterOffloadEngine(@NonNull android.net.nsd.OffloadEngine); + method @FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void registerOffloadEngine(@NonNull String, long, long, @NonNull java.util.concurrent.Executor, @NonNull android.net.nsd.OffloadEngine); + method @FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") @RequiresPermission(anyOf={android.Manifest.permission.NETWORK_SETTINGS, android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK, android.Manifest.permission.NETWORK_STACK}) public void unregisterOffloadEngine(@NonNull android.net.nsd.OffloadEngine); } - public interface OffloadEngine { + @FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") public interface OffloadEngine { method public void onOffloadServiceRemoved(@NonNull android.net.nsd.OffloadServiceInfo); method public void onOffloadServiceUpdated(@NonNull android.net.nsd.OffloadServiceInfo); field public static final int OFFLOAD_CAPABILITY_BYPASS_MULTICAST_LOCK = 1; // 0x1 @@ -391,7 +391,7 @@ package android.net.nsd { field public static final int OFFLOAD_TYPE_REPLY = 1; // 0x1 } - public final class OffloadServiceInfo implements android.os.Parcelable { + @FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") public final class OffloadServiceInfo implements android.os.Parcelable { ctor public OffloadServiceInfo(@NonNull android.net.nsd.OffloadServiceInfo.Key, @NonNull java.util.List, @NonNull String, @Nullable byte[], @IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int, long); method public int describeContents(); method @NonNull public String getHostname(); diff --git a/framework-t/src/android/net/nsd/NsdManager.java b/framework-t/src/android/net/nsd/NsdManager.java index ef0e34bfe7..f59bb52cf0 100644 --- a/framework-t/src/android/net/nsd/NsdManager.java +++ b/framework-t/src/android/net/nsd/NsdManager.java @@ -22,6 +22,7 @@ import static android.net.NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK; import static android.net.connectivity.ConnectivityCompatChanges.ENABLE_PLATFORM_MDNS_BACKEND; import static android.net.connectivity.ConnectivityCompatChanges.RUN_NATIVE_NSD_ONLY_IF_LEGACY_APPS_T_AND_LATER; +import android.annotation.FlaggedApi; import android.annotation.IntDef; import android.annotation.NonNull; import android.annotation.Nullable; @@ -143,6 +144,14 @@ public final class NsdManager { private static final String TAG = NsdManager.class.getSimpleName(); private static final boolean DBG = false; + // TODO : remove this class when udc-mainline-prod is abandoned and android.net.flags.Flags is + // available here + /** @hide */ + public static class Flags { + static final String REGISTER_NSD_OFFLOAD_ENGINE_API = + "com.android.net.flags.register_nsd_offload_engine_api"; + } + /** * Broadcast intent action to indicate whether network service discovery is * enabled or disabled. An extra {@link #EXTRA_NSD_STATE} provides the state @@ -365,6 +374,7 @@ public final class NsdManager { * * @hide */ + @FlaggedApi(NsdManager.Flags.REGISTER_NSD_OFFLOAD_ENGINE_API) @SystemApi @RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK, NETWORK_STACK}) @@ -402,6 +412,7 @@ public final class NsdManager { * * @hide */ + @FlaggedApi(NsdManager.Flags.REGISTER_NSD_OFFLOAD_ENGINE_API) @SystemApi @RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK, NETWORK_STACK}) diff --git a/framework-t/src/android/net/nsd/OffloadEngine.java b/framework-t/src/android/net/nsd/OffloadEngine.java index b566b13e92..901598585e 100644 --- a/framework-t/src/android/net/nsd/OffloadEngine.java +++ b/framework-t/src/android/net/nsd/OffloadEngine.java @@ -16,6 +16,7 @@ package android.net.nsd; +import android.annotation.FlaggedApi; import android.annotation.LongDef; import android.annotation.NonNull; import android.annotation.SystemApi; @@ -33,6 +34,7 @@ import java.lang.annotation.RetentionPolicy; * * @hide */ +@FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") @SystemApi public interface OffloadEngine { /** diff --git a/framework-t/src/android/net/nsd/OffloadServiceInfo.java b/framework-t/src/android/net/nsd/OffloadServiceInfo.java index d5dbf19e76..98dc83a7db 100644 --- a/framework-t/src/android/net/nsd/OffloadServiceInfo.java +++ b/framework-t/src/android/net/nsd/OffloadServiceInfo.java @@ -16,6 +16,7 @@ package android.net.nsd; +import android.annotation.FlaggedApi; import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; @@ -39,6 +40,7 @@ import java.util.Objects; * * @hide */ +@FlaggedApi("com.android.net.flags.register_nsd_offload_engine_api") @SystemApi @RequiresApi(Build.VERSION_CODES.TIRAMISU) public final class OffloadServiceInfo implements Parcelable {