Merge "[JS01]Remove hidden API usage of Connectivity Sevice"

This commit is contained in:
Frank Li
2021-03-30 07:22:40 +00:00
committed by Gerrit Code Review
4 changed files with 44 additions and 2 deletions

View File

@@ -68,6 +68,7 @@ package android.net {
method public boolean bindProcessToNetwork(@Nullable android.net.Network); method public boolean bindProcessToNetwork(@Nullable android.net.Network);
method @NonNull public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull android.net.IpSecManager.UdpEncapsulationSocket, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback); method @NonNull public android.net.SocketKeepalive createSocketKeepalive(@NonNull android.net.Network, @NonNull android.net.IpSecManager.UdpEncapsulationSocket, @NonNull java.net.InetAddress, @NonNull java.net.InetAddress, @NonNull java.util.concurrent.Executor, @NonNull android.net.SocketKeepalive.Callback);
method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network getActiveNetwork(); method @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network getActiveNetwork();
method @Nullable @RequiresPermission(android.Manifest.permission.NETWORK_STACK) public android.net.Network getActiveNetworkForUid(int);
method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getActiveNetworkInfo(); method @Deprecated @Nullable @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo getActiveNetworkInfo();
method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo[] getAllNetworkInfo(); method @Deprecated @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.NetworkInfo[] getAllNetworkInfo();
method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network[] getAllNetworks(); method @NonNull @RequiresPermission(android.Manifest.permission.ACCESS_NETWORK_STATE) public android.net.Network[] getAllNetworks();
@@ -387,7 +388,9 @@ package android.net {
public class NetworkRequest implements android.os.Parcelable { public class NetworkRequest implements android.os.Parcelable {
method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkCapabilities); method public boolean canBeSatisfiedBy(@Nullable android.net.NetworkCapabilities);
method public int describeContents(); method public int describeContents();
method @NonNull public int[] getCapabilities();
method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier(); method @Nullable public android.net.NetworkSpecifier getNetworkSpecifier();
method @NonNull public int[] getTransportTypes();
method public boolean hasCapability(int); method public boolean hasCapability(int);
method public boolean hasTransport(int); method public boolean hasTransport(int);
method public void writeToParcel(android.os.Parcel, int); method public void writeToParcel(android.os.Parcel, int);

View File

@@ -120,6 +120,7 @@ package android.net {
} }
public class NetworkRequest implements android.os.Parcelable { public class NetworkRequest implements android.os.Parcelable {
method @NonNull public int[] getUnwantedCapabilities();
method public boolean hasUnwantedCapability(int); method public boolean hasUnwantedCapability(int);
} }

View File

@@ -1190,8 +1190,7 @@ public class ConnectivityManager {
* *
* @return a {@link Network} object for the current default network for the * @return a {@link Network} object for the current default network for the
* given UID or {@code null} if no default network is currently active * given UID or {@code null} if no default network is currently active
* * TODO: b/183465229 Cleanup getActiveNetworkForUid once b/165835257 is fixed
* @hide
*/ */
@RequiresPermission(android.Manifest.permission.NETWORK_STACK) @RequiresPermission(android.Manifest.permission.NETWORK_STACK)
@Nullable @Nullable

View File

@@ -699,4 +699,43 @@ public class NetworkRequest implements Parcelable {
public int hashCode() { public int hashCode() {
return Objects.hash(requestId, legacyType, networkCapabilities, type); return Objects.hash(requestId, legacyType, networkCapabilities, type);
} }
/**
* Gets all the capabilities set on this {@code NetworkRequest} instance.
*
* @return an array of capability values for this instance.
*/
@NonNull
public @NetCapability int[] getCapabilities() {
// No need to make a defensive copy here as NC#getCapabilities() already returns
// a new array.
return networkCapabilities.getCapabilities();
}
/**
* Gets all the unwanted capabilities set on this {@code NetworkRequest} instance.
*
* @return an array of unwanted capability values for this instance.
*
* @hide
*/
@NonNull
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
public @NetCapability int[] getUnwantedCapabilities() {
// No need to make a defensive copy here as NC#getUnwantedCapabilities() already returns
// a new array.
return networkCapabilities.getUnwantedCapabilities();
}
/**
* Gets all the transports set on this {@code NetworkRequest} instance.
*
* @return an array of transport type values for this instance.
*/
@NonNull
public @Transport int[] getTransportTypes() {
// No need to make a defensive copy here as NC#getTransportTypes() already returns
// a new array.
return networkCapabilities.getTransportTypes();
}
} }