Update NetworkInfo public API.
Wifi needs to create these objects so it can include them in the broadcasts. Bug: 135998869 Test: FrameworksWifiTests Change-Id: Ic50d9b5c65e8771708620badc3bc242a8ffbb5cc
This commit is contained in:
committed by
Roshan Pius
parent
dc259e5e99
commit
04a2e63ed8
@@ -17,9 +17,11 @@
|
||||
package android.net;
|
||||
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.Nullable;
|
||||
import android.compat.annotation.UnsupportedAppUsage;
|
||||
import android.os.Parcel;
|
||||
import android.os.Parcelable;
|
||||
import android.telephony.Annotation.NetworkType;
|
||||
|
||||
import com.android.internal.annotations.VisibleForTesting;
|
||||
|
||||
@@ -150,10 +152,19 @@ public class NetworkInfo implements Parcelable {
|
||||
private boolean mIsRoaming;
|
||||
|
||||
/**
|
||||
* @hide
|
||||
* Create a new instance of NetworkInfo.
|
||||
*
|
||||
* This may be useful for apps to write unit tests.
|
||||
*
|
||||
* @param type the legacy type of the network, as one of the ConnectivityManager.TYPE_*
|
||||
* constants.
|
||||
* @param subtype the subtype if applicable, as one of the TelephonyManager.NETWORK_TYPE_*
|
||||
* constants.
|
||||
* @param typeName a human-readable string for the network type, or an empty string or null.
|
||||
* @param subtypeName a human-readable string for the subtype, or an empty string or null.
|
||||
*/
|
||||
@UnsupportedAppUsage
|
||||
public NetworkInfo(int type, int subtype, String typeName, String subtypeName) {
|
||||
public NetworkInfo(int type, @NetworkType int subtype,
|
||||
@Nullable String typeName, @Nullable String subtypeName) {
|
||||
if (!ConnectivityManager.isNetworkTypeValid(type)
|
||||
&& type != ConnectivityManager.TYPE_NONE) {
|
||||
throw new IllegalArgumentException("Invalid network type: " + type);
|
||||
@@ -462,17 +473,19 @@ public class NetworkInfo implements Parcelable {
|
||||
|
||||
/**
|
||||
* Sets the fine-grained state of the network.
|
||||
*
|
||||
* This is only useful for testing.
|
||||
*
|
||||
* @param detailedState the {@link DetailedState}.
|
||||
* @param reason a {@code String} indicating the reason for the state change,
|
||||
* if one was supplied. May be {@code null}.
|
||||
* @param extraInfo an optional {@code String} providing addditional network state
|
||||
* information passed up from the lower networking layers.
|
||||
* @deprecated Use {@link NetworkCapabilities} instead.
|
||||
* @hide
|
||||
*/
|
||||
@Deprecated
|
||||
@UnsupportedAppUsage
|
||||
public void setDetailedState(DetailedState detailedState, String reason, String extraInfo) {
|
||||
public void setDetailedState(@NonNull DetailedState detailedState, @Nullable String reason,
|
||||
@Nullable String extraInfo) {
|
||||
synchronized (this) {
|
||||
this.mDetailedState = detailedState;
|
||||
this.mState = stateMap.get(detailedState);
|
||||
|
||||
Reference in New Issue
Block a user