Merge changes I67e5fa23,I223b207c

* changes:
  Use hasIpv[4|6]DefaultRoute instead of hasIPv[4|6]DefaultRoute
  Use local defined constants for notification channels
This commit is contained in:
Lucas Lin
2020-11-10 05:28:33 +00:00
committed by Gerrit Code Review
4 changed files with 14 additions and 10 deletions

View File

@@ -6443,8 +6443,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
&& !nai.networkAgentConfig.allowBypass && !nai.networkAgentConfig.allowBypass
&& nc.getOwnerUid() != Process.SYSTEM_UID && nc.getOwnerUid() != Process.SYSTEM_UID
&& lp.getInterfaceName() != null && lp.getInterfaceName() != null
&& (lp.hasIPv4DefaultRoute() || lp.hasIpv4UnreachableDefaultRoute()) && (lp.hasIpv4DefaultRoute() || lp.hasIpv4UnreachableDefaultRoute())
&& (lp.hasIPv6DefaultRoute() || lp.hasIpv6UnreachableDefaultRoute()); && (lp.hasIpv6DefaultRoute() || lp.hasIpv6UnreachableDefaultRoute());
} }
private void updateUids(NetworkAgentInfo nai, NetworkCapabilities prevNc, private void updateUids(NetworkAgentInfo nai, NetworkCapabilities prevNc,

View File

@@ -43,7 +43,6 @@ import android.widget.Toast;
import com.android.internal.R; import com.android.internal.R;
import com.android.internal.annotations.VisibleForTesting; import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
import com.android.internal.notification.SystemNotificationChannels;
public class NetworkNotificationManager { public class NetworkNotificationManager {
@@ -74,7 +73,12 @@ public class NetworkNotificationManager {
private static final String TAG = NetworkNotificationManager.class.getSimpleName(); private static final String TAG = NetworkNotificationManager.class.getSimpleName();
private static final boolean DBG = true; private static final boolean DBG = true;
private static final boolean VDBG = false;
// Notification channels used by ConnectivityService mainline module, it should be aligned with
// SystemNotificationChannels.
public static final String NOTIFICATION_NETWORK_STATUS = "NETWORK_STATUS";
public static final String NOTIFICATION_NETWORK_ALERTS = "NETWORK_ALERTS";
public static final String NOTIFICATION_VPN = "VPN";
// The context is for the current user (system server) // The context is for the current user (system server)
private final Context mContext; private final Context mContext;
@@ -259,8 +263,7 @@ public class NetworkNotificationManager {
// the tag. // the tag.
final boolean hasPreviousNotification = previousNotifyType != null; final boolean hasPreviousNotification = previousNotifyType != null;
final String channelId = (highPriority && !hasPreviousNotification) final String channelId = (highPriority && !hasPreviousNotification)
? SystemNotificationChannels.NETWORK_ALERTS ? NOTIFICATION_NETWORK_ALERTS : NOTIFICATION_NETWORK_STATUS;
: SystemNotificationChannels.NETWORK_STATUS;
Notification.Builder builder = new Notification.Builder(mContext, channelId) Notification.Builder builder = new Notification.Builder(mContext, channelId)
.setWhen(System.currentTimeMillis()) .setWhen(System.currentTimeMillis())
.setShowWhen(notifyType == NotificationType.NETWORK_SWITCH) .setShowWhen(notifyType == NotificationType.NETWORK_SWITCH)

View File

@@ -27,6 +27,7 @@ import static android.net.RouteInfo.RTN_UNREACHABLE;
import static com.android.internal.util.Preconditions.checkArgument; import static com.android.internal.util.Preconditions.checkArgument;
import static com.android.internal.util.Preconditions.checkNotNull; import static com.android.internal.util.Preconditions.checkNotNull;
import static com.android.server.connectivity.NetworkNotificationManager.NOTIFICATION_VPN;
import android.Manifest; import android.Manifest;
import android.annotation.NonNull; import android.annotation.NonNull;
@@ -111,7 +112,6 @@ import com.android.internal.net.LegacyVpnInfo;
import com.android.internal.net.VpnConfig; import com.android.internal.net.VpnConfig;
import com.android.internal.net.VpnInfo; import com.android.internal.net.VpnInfo;
import com.android.internal.net.VpnProfile; import com.android.internal.net.VpnProfile;
import com.android.internal.notification.SystemNotificationChannels;
import com.android.internal.util.ArrayUtils; import com.android.internal.util.ArrayUtils;
import com.android.server.ConnectivityService; import com.android.server.ConnectivityService;
import com.android.server.DeviceIdleInternal; import com.android.server.DeviceIdleInternal;
@@ -1945,7 +1945,7 @@ public class Vpn {
final PendingIntent configIntent = mSystemServices.pendingIntentGetActivityAsUser( final PendingIntent configIntent = mSystemServices.pendingIntentGetActivityAsUser(
intent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT, user); intent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT, user);
final Notification.Builder builder = final Notification.Builder builder =
new Notification.Builder(mContext, SystemNotificationChannels.VPN) new Notification.Builder(mContext, NOTIFICATION_VPN)
.setSmallIcon(R.drawable.vpn_connected) .setSmallIcon(R.drawable.vpn_connected)
.setContentTitle(mContext.getString(R.string.vpn_lockdown_disconnected)) .setContentTitle(mContext.getString(R.string.vpn_lockdown_disconnected))
.setContentText(mContext.getString(R.string.vpn_lockdown_config)) .setContentText(mContext.getString(R.string.vpn_lockdown_config))

View File

@@ -18,6 +18,8 @@ package com.android.server.net;
import static android.provider.Settings.ACTION_VPN_SETTINGS; import static android.provider.Settings.ACTION_VPN_SETTINGS;
import static com.android.server.connectivity.NetworkNotificationManager.NOTIFICATION_VPN;
import android.annotation.NonNull; import android.annotation.NonNull;
import android.annotation.Nullable; import android.annotation.Nullable;
import android.app.Notification; import android.app.Notification;
@@ -42,7 +44,6 @@ import com.android.internal.annotations.GuardedBy;
import com.android.internal.messages.nano.SystemMessageProto.SystemMessage; import com.android.internal.messages.nano.SystemMessageProto.SystemMessage;
import com.android.internal.net.VpnConfig; import com.android.internal.net.VpnConfig;
import com.android.internal.net.VpnProfile; import com.android.internal.net.VpnProfile;
import com.android.internal.notification.SystemNotificationChannels;
import com.android.server.ConnectivityService; import com.android.server.ConnectivityService;
import com.android.server.EventLogTags; import com.android.server.EventLogTags;
import com.android.server.connectivity.Vpn; import com.android.server.connectivity.Vpn;
@@ -256,7 +257,7 @@ public class LockdownVpnTracker {
private void showNotification(int titleRes, int iconRes) { private void showNotification(int titleRes, int iconRes) {
final Notification.Builder builder = final Notification.Builder builder =
new Notification.Builder(mContext, SystemNotificationChannels.VPN) new Notification.Builder(mContext, NOTIFICATION_VPN)
.setWhen(0) .setWhen(0)
.setSmallIcon(iconRes) .setSmallIcon(iconRes)
.setContentTitle(mContext.getString(titleRes)) .setContentTitle(mContext.getString(titleRes))