Enable service offload API
API-Coverage-Bug: 282618639 Bug: 269240366 Test: atest CtsNetTestCases Change-Id: I7ac72b675ff3715891f31bc03c453e14b1264e40
This commit is contained in:
@@ -348,3 +348,43 @@ 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);
|
||||||
|
}
|
||||||
|
|
||||||
|
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
|
||||||
|
field public static final int OFFLOAD_TYPE_FILTER_QUERIES = 2; // 0x2
|
||||||
|
field public static final int OFFLOAD_TYPE_FILTER_REPLIES = 4; // 0x4
|
||||||
|
field public static final int OFFLOAD_TYPE_REPLY = 1; // 0x1
|
||||||
|
}
|
||||||
|
|
||||||
|
public final class OffloadServiceInfo implements android.os.Parcelable {
|
||||||
|
ctor public OffloadServiceInfo(@NonNull android.net.nsd.OffloadServiceInfo.Key, @NonNull java.util.List<java.lang.String>, @NonNull String, @Nullable byte[], @IntRange(from=0, to=java.lang.Integer.MAX_VALUE) int, long);
|
||||||
|
method public int describeContents();
|
||||||
|
method @NonNull public String getHostname();
|
||||||
|
method @NonNull public android.net.nsd.OffloadServiceInfo.Key getKey();
|
||||||
|
method @Nullable public byte[] getOffloadPayload();
|
||||||
|
method public long getOffloadType();
|
||||||
|
method public int getPriority();
|
||||||
|
method @NonNull public java.util.List<java.lang.String> getSubtypes();
|
||||||
|
method public void writeToParcel(@NonNull android.os.Parcel, int);
|
||||||
|
field @NonNull public static final android.os.Parcelable.Creator<android.net.nsd.OffloadServiceInfo> CREATOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static final class OffloadServiceInfo.Key implements android.os.Parcelable {
|
||||||
|
ctor public OffloadServiceInfo.Key(@NonNull String, @NonNull String);
|
||||||
|
method public int describeContents();
|
||||||
|
method @NonNull public String getServiceName();
|
||||||
|
method @NonNull public String getServiceType();
|
||||||
|
method public void writeToParcel(@NonNull android.os.Parcel, int);
|
||||||
|
field @NonNull public static final android.os.Parcelable.Creator<android.net.nsd.OffloadServiceInfo.Key> CREATOR;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import android.net.nsd.OffloadServiceInfo;
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Callbacks from NsdService to inform providers of packet offload.
|
* Callbacks from NsdService to inform providers of packet offload.
|
||||||
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
oneway interface IOffloadEngine {
|
oneway interface IOffloadEngine {
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import android.annotation.Nullable;
|
|||||||
import android.annotation.RequiresPermission;
|
import android.annotation.RequiresPermission;
|
||||||
import android.annotation.SdkConstant;
|
import android.annotation.SdkConstant;
|
||||||
import android.annotation.SdkConstant.SdkConstantType;
|
import android.annotation.SdkConstant.SdkConstantType;
|
||||||
|
import android.annotation.SystemApi;
|
||||||
import android.annotation.SystemService;
|
import android.annotation.SystemService;
|
||||||
import android.app.compat.CompatChanges;
|
import android.app.compat.CompatChanges;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@@ -364,7 +365,7 @@ public final class NsdManager {
|
|||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
//@SystemApi
|
@SystemApi
|
||||||
@RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK,
|
@RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK,
|
||||||
NETWORK_STACK})
|
NETWORK_STACK})
|
||||||
public void registerOffloadEngine(@NonNull String ifaceName,
|
public void registerOffloadEngine(@NonNull String ifaceName,
|
||||||
@@ -401,7 +402,7 @@ public final class NsdManager {
|
|||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
//@SystemApi
|
@SystemApi
|
||||||
@RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK,
|
@RequiresPermission(anyOf = {NETWORK_SETTINGS, PERMISSION_MAINLINE_NETWORK_STACK,
|
||||||
NETWORK_STACK})
|
NETWORK_STACK})
|
||||||
public void unregisterOffloadEngine(@NonNull OffloadEngine engine) {
|
public void unregisterOffloadEngine(@NonNull OffloadEngine engine) {
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ package android.net.nsd;
|
|||||||
|
|
||||||
import android.annotation.LongDef;
|
import android.annotation.LongDef;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
|
import android.annotation.SystemApi;
|
||||||
|
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
@@ -32,7 +33,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
//@SystemApi
|
@SystemApi
|
||||||
public interface OffloadEngine {
|
public interface OffloadEngine {
|
||||||
/**
|
/**
|
||||||
* Indicates that the OffloadEngine can generate replies to mDns queries.
|
* Indicates that the OffloadEngine can generate replies to mDns queries.
|
||||||
@@ -55,6 +56,9 @@ public interface OffloadEngine {
|
|||||||
*/
|
*/
|
||||||
int OFFLOAD_CAPABILITY_BYPASS_MULTICAST_LOCK = 1;
|
int OFFLOAD_CAPABILITY_BYPASS_MULTICAST_LOCK = 1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
@LongDef(flag = true, prefix = {"OFFLOAD_TYPE"}, value = {
|
@LongDef(flag = true, prefix = {"OFFLOAD_TYPE"}, value = {
|
||||||
OFFLOAD_TYPE_REPLY,
|
OFFLOAD_TYPE_REPLY,
|
||||||
@@ -63,6 +67,9 @@ public interface OffloadEngine {
|
|||||||
})
|
})
|
||||||
@interface OffloadType {}
|
@interface OffloadType {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@Retention(RetentionPolicy.SOURCE)
|
||||||
@LongDef(flag = true, prefix = {"OFFLOAD_CAPABILITY"}, value = {
|
@LongDef(flag = true, prefix = {"OFFLOAD_CAPABILITY"}, value = {
|
||||||
OFFLOAD_CAPABILITY_BYPASS_MULTICAST_LOCK
|
OFFLOAD_CAPABILITY_BYPASS_MULTICAST_LOCK
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ package android.net.nsd;
|
|||||||
import android.annotation.IntRange;
|
import android.annotation.IntRange;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
import android.annotation.Nullable;
|
import android.annotation.Nullable;
|
||||||
|
import android.annotation.SystemApi;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
|
|
||||||
@@ -36,7 +37,7 @@ import java.util.Objects;
|
|||||||
*
|
*
|
||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
// @SystemApi
|
@SystemApi
|
||||||
public final class OffloadServiceInfo implements Parcelable {
|
public final class OffloadServiceInfo implements Parcelable {
|
||||||
@NonNull
|
@NonNull
|
||||||
private final Key mKey;
|
private final Key mKey;
|
||||||
|
|||||||
Reference in New Issue
Block a user