Merge Android R (rvc-dev-plus-aosp-without-vendor@6692709)
Bug: 166295507 Merged-In: I3d92a6de21a938f6b352ec26dc23420c0fe02b27 Change-Id: Ifdb80563ef042738778ebb8a7581a97c4e3d96e2
This commit is contained in:
@@ -1725,7 +1725,6 @@ public class ConnectivityManager {
|
|||||||
@UnsupportedAppUsage
|
@UnsupportedAppUsage
|
||||||
public PacketKeepaliveCallback() {
|
public PacketKeepaliveCallback() {
|
||||||
}
|
}
|
||||||
|
|
||||||
/** The requested keepalive was successfully started. */
|
/** The requested keepalive was successfully started. */
|
||||||
@UnsupportedAppUsage
|
@UnsupportedAppUsage
|
||||||
public void onStarted() {}
|
public void onStarted() {}
|
||||||
@@ -3177,6 +3176,7 @@ public class ConnectivityManager {
|
|||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
@RequiresPermission(anyOf = {
|
@RequiresPermission(anyOf = {
|
||||||
|
android.Manifest.permission.NETWORK_AIRPLANE_MODE,
|
||||||
android.Manifest.permission.NETWORK_SETTINGS,
|
android.Manifest.permission.NETWORK_SETTINGS,
|
||||||
android.Manifest.permission.NETWORK_SETUP_WIZARD,
|
android.Manifest.permission.NETWORK_SETUP_WIZARD,
|
||||||
android.Manifest.permission.NETWORK_STACK})
|
android.Manifest.permission.NETWORK_STACK})
|
||||||
@@ -3303,7 +3303,6 @@ public class ConnectivityManager {
|
|||||||
android.Manifest.permission.NETWORK_FACTORY})
|
android.Manifest.permission.NETWORK_FACTORY})
|
||||||
public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
|
public Network registerNetworkAgent(Messenger messenger, NetworkInfo ni, LinkProperties lp,
|
||||||
NetworkCapabilities nc, int score, NetworkAgentConfig config, int providerId) {
|
NetworkCapabilities nc, int score, NetworkAgentConfig config, int providerId) {
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return mService.registerNetworkAgent(messenger, ni, lp, nc, score, config, providerId);
|
return mService.registerNetworkAgent(messenger, ni, lp, nc, score, config, providerId);
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ import java.lang.annotation.RetentionPolicy;
|
|||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
@SystemApi
|
@SystemApi
|
||||||
public class InvalidPacketException extends Exception {
|
public final class InvalidPacketException extends Exception {
|
||||||
private final int mError;
|
private final int mError;
|
||||||
|
|
||||||
// Must match SocketKeepalive#ERROR_INVALID_IP_ADDRESS.
|
// Must match SocketKeepalive#ERROR_INVALID_IP_ADDRESS.
|
||||||
|
|||||||
@@ -517,7 +517,7 @@ public class Network implements Parcelable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
public void writeToProto(ProtoOutputStream proto, long fieldId) {
|
public void dumpDebug(ProtoOutputStream proto, long fieldId) {
|
||||||
final long token = proto.start(fieldId);
|
final long token = proto.start(fieldId);
|
||||||
proto.write(NetworkProto.NET_ID, netId);
|
proto.write(NetworkProto.NET_ID, netId);
|
||||||
proto.end(token);
|
proto.end(token);
|
||||||
|
|||||||
@@ -1843,7 +1843,7 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
public void writeToProto(@NonNull ProtoOutputStream proto, long fieldId) {
|
public void dumpDebug(@NonNull ProtoOutputStream proto, long fieldId) {
|
||||||
final long token = proto.start(fieldId);
|
final long token = proto.start(fieldId);
|
||||||
|
|
||||||
for (int transport : getTransportTypes()) {
|
for (int transport : getTransportTypes()) {
|
||||||
@@ -2137,7 +2137,7 @@ public final class NetworkCapabilities implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
@SystemApi
|
@SystemApi
|
||||||
@TestApi
|
@TestApi
|
||||||
public static class Builder {
|
public static final class Builder {
|
||||||
private final NetworkCapabilities mCaps;
|
private final NetworkCapabilities mCaps;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -542,13 +542,13 @@ public class NetworkRequest implements Parcelable {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
public void writeToProto(ProtoOutputStream proto, long fieldId) {
|
public void dumpDebug(ProtoOutputStream proto, long fieldId) {
|
||||||
final long token = proto.start(fieldId);
|
final long token = proto.start(fieldId);
|
||||||
|
|
||||||
proto.write(NetworkRequestProto.TYPE, typeToProtoEnum(type));
|
proto.write(NetworkRequestProto.TYPE, typeToProtoEnum(type));
|
||||||
proto.write(NetworkRequestProto.REQUEST_ID, requestId);
|
proto.write(NetworkRequestProto.REQUEST_ID, requestId);
|
||||||
proto.write(NetworkRequestProto.LEGACY_TYPE, legacyType);
|
proto.write(NetworkRequestProto.LEGACY_TYPE, legacyType);
|
||||||
networkCapabilities.writeToProto(proto, NetworkRequestProto.NETWORK_CAPABILITIES);
|
networkCapabilities.dumpDebug(proto, NetworkRequestProto.NETWORK_CAPABILITIES);
|
||||||
|
|
||||||
proto.end(token);
|
proto.end(token);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2160,6 +2160,15 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
|
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void enforceAirplaneModePermission() {
|
||||||
|
enforceAnyPermissionOf(
|
||||||
|
android.Manifest.permission.NETWORK_AIRPLANE_MODE,
|
||||||
|
android.Manifest.permission.NETWORK_SETTINGS,
|
||||||
|
android.Manifest.permission.NETWORK_SETUP_WIZARD,
|
||||||
|
android.Manifest.permission.NETWORK_STACK,
|
||||||
|
NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
|
||||||
|
}
|
||||||
|
|
||||||
private boolean checkNetworkStackPermission() {
|
private boolean checkNetworkStackPermission() {
|
||||||
return checkAnyPermissionOf(
|
return checkAnyPermissionOf(
|
||||||
android.Manifest.permission.NETWORK_STACK,
|
android.Manifest.permission.NETWORK_STACK,
|
||||||
@@ -5075,7 +5084,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setAirplaneMode(boolean enable) {
|
public void setAirplaneMode(boolean enable) {
|
||||||
enforceNetworkStackSettingsOrSetup();
|
enforceAirplaneModePermission();
|
||||||
final long ident = Binder.clearCallingIdentity();
|
final long ident = Binder.clearCallingIdentity();
|
||||||
try {
|
try {
|
||||||
final ContentResolver cr = mContext.getContentResolver();
|
final ContentResolver cr = mContext.getContentResolver();
|
||||||
|
|||||||
@@ -19,7 +19,10 @@ package android.net;
|
|||||||
import static com.android.testutils.ParcelUtils.assertParcelSane;
|
import static com.android.testutils.ParcelUtils.assertParcelSane;
|
||||||
|
|
||||||
import static org.junit.Assert.assertEquals;
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertFalse;
|
||||||
|
import static org.junit.Assert.assertTrue;
|
||||||
|
|
||||||
|
import android.net.wifi.WifiNetworkSpecifier;
|
||||||
import android.telephony.SubscriptionManager;
|
import android.telephony.SubscriptionManager;
|
||||||
|
|
||||||
import androidx.test.filters.SmallTest;
|
import androidx.test.filters.SmallTest;
|
||||||
@@ -32,6 +35,7 @@ import org.junit.Test;
|
|||||||
@SmallTest
|
@SmallTest
|
||||||
public class TelephonyNetworkSpecifierTest {
|
public class TelephonyNetworkSpecifierTest {
|
||||||
private static final int TEST_SUBID = 5;
|
private static final int TEST_SUBID = 5;
|
||||||
|
private static final String TEST_SSID = "Test123";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Validate that IllegalArgumentException will be thrown if build TelephonyNetworkSpecifier
|
* Validate that IllegalArgumentException will be thrown if build TelephonyNetworkSpecifier
|
||||||
@@ -79,4 +83,31 @@ public class TelephonyNetworkSpecifierTest {
|
|||||||
.build();
|
.build();
|
||||||
assertParcelSane(specifier, 1 /* fieldCount */);
|
assertParcelSane(specifier, 1 /* fieldCount */);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Validate the behavior of method canBeSatisfiedBy().
|
||||||
|
*/
|
||||||
|
@Test
|
||||||
|
public void testCanBeSatisfiedBy() {
|
||||||
|
final TelephonyNetworkSpecifier tns1 = new TelephonyNetworkSpecifier.Builder()
|
||||||
|
.setSubscriptionId(TEST_SUBID)
|
||||||
|
.build();
|
||||||
|
final TelephonyNetworkSpecifier tns2 = new TelephonyNetworkSpecifier.Builder()
|
||||||
|
.setSubscriptionId(TEST_SUBID)
|
||||||
|
.build();
|
||||||
|
final WifiNetworkSpecifier wns = new WifiNetworkSpecifier.Builder()
|
||||||
|
.setSsid(TEST_SSID)
|
||||||
|
.build();
|
||||||
|
final MatchAllNetworkSpecifier mans = new MatchAllNetworkSpecifier();
|
||||||
|
|
||||||
|
// Test equality
|
||||||
|
assertEquals(tns1, tns2);
|
||||||
|
assertTrue(tns1.canBeSatisfiedBy(tns1));
|
||||||
|
assertTrue(tns1.canBeSatisfiedBy(tns2));
|
||||||
|
|
||||||
|
// Test other edge cases.
|
||||||
|
assertFalse(tns1.canBeSatisfiedBy(null));
|
||||||
|
assertFalse(tns1.canBeSatisfiedBy(wns));
|
||||||
|
assertTrue(tns1.canBeSatisfiedBy(mans));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,7 +56,6 @@ import static org.mockito.Mockito.when;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.ApplicationInfo;
|
import android.content.pm.ApplicationInfo;
|
||||||
import android.content.pm.PackageInfo;
|
import android.content.pm.PackageInfo;
|
||||||
import android.content.pm.PackageList;
|
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.pm.PackageManagerInternal;
|
import android.content.pm.PackageManagerInternal;
|
||||||
import android.content.pm.UserInfo;
|
import android.content.pm.UserInfo;
|
||||||
@@ -72,6 +71,7 @@ import androidx.test.filters.SmallTest;
|
|||||||
import androidx.test.runner.AndroidJUnit4;
|
import androidx.test.runner.AndroidJUnit4;
|
||||||
|
|
||||||
import com.android.server.LocalServices;
|
import com.android.server.LocalServices;
|
||||||
|
import com.android.server.pm.PackageList;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|||||||
Reference in New Issue
Block a user