Use network list in UNDERLYING_NETWORKS_CHANGED
The bundle is no longer necessary, as this message is not sent across processes: the network list can be sent directly in the message obj pair. Bug: 173574274 Test: atest FrameworksNetTests CtsNetTestCasesLatestSdk Change-Id: Iae049a24212ff9df19b29aead20bf4a594f05f99
This commit is contained in:
committed by
Chalard Jean
parent
7f7db65552
commit
28d69fc2f7
@@ -227,12 +227,6 @@ public abstract class NetworkAgent {
|
||||
*/
|
||||
public static final String REDIRECT_URL_KEY = "redirect URL";
|
||||
|
||||
/**
|
||||
* Bundle key for the underlying networks in {@code EVENT_UNDERLYING_NETWORKS_CHANGED}.
|
||||
* @hide
|
||||
*/
|
||||
public static final String UNDERLYING_NETWORKS_KEY = "underlyingNetworks";
|
||||
|
||||
/**
|
||||
* Sent by the NetworkAgent to ConnectivityService to indicate this network was
|
||||
* explicitly selected. This should be sent before the NetworkInfo is marked
|
||||
|
||||
@@ -2764,13 +2764,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
||||
Log.wtf(TAG, "Non-virtual networks cannot have underlying networks");
|
||||
break;
|
||||
}
|
||||
final ArrayList<Network> underlying;
|
||||
try {
|
||||
underlying = ((Bundle) arg.second).getParcelableArrayList(
|
||||
NetworkAgent.UNDERLYING_NETWORKS_KEY);
|
||||
} catch (NullPointerException | ClassCastException e) {
|
||||
break;
|
||||
}
|
||||
final List<Network> underlying = (List<Network>) arg.second;
|
||||
final Network[] oldUnderlying = nai.declaredUnderlyingNetworks;
|
||||
nai.declaredUnderlyingNetworks = (underlying != null)
|
||||
? underlying.toArray(new Network[0]) : null;
|
||||
|
||||
@@ -37,7 +37,6 @@ import android.net.NetworkMonitorManager;
|
||||
import android.net.NetworkRequest;
|
||||
import android.net.NetworkState;
|
||||
import android.net.TcpKeepalivePacketData;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.IBinder;
|
||||
import android.os.INetworkManagementService;
|
||||
@@ -53,7 +52,6 @@ import com.android.internal.util.WakeupMessage;
|
||||
import com.android.server.ConnectivityService;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.NoSuchElementException;
|
||||
import java.util.Objects;
|
||||
@@ -583,16 +581,8 @@ public class NetworkAgentInfo implements Comparable<NetworkAgentInfo> {
|
||||
|
||||
@Override
|
||||
public void sendUnderlyingNetworks(@Nullable List<Network> networks) {
|
||||
final Bundle args = new Bundle();
|
||||
if (networks instanceof ArrayList<?>) {
|
||||
args.putParcelableArrayList(NetworkAgent.UNDERLYING_NETWORKS_KEY,
|
||||
(ArrayList<Network>) networks);
|
||||
} else {
|
||||
args.putParcelableArrayList(NetworkAgent.UNDERLYING_NETWORKS_KEY,
|
||||
networks == null ? null : new ArrayList<>(networks));
|
||||
}
|
||||
mHandler.obtainMessage(NetworkAgent.EVENT_UNDERLYING_NETWORKS_CHANGED,
|
||||
new Pair<>(NetworkAgentInfo.this, args)).sendToTarget();
|
||||
new Pair<>(NetworkAgentInfo.this, networks)).sendToTarget();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user