From b07054ca9c9241a30a3bf65bee4b18f69d809e28 Mon Sep 17 00:00:00 2001 From: lucaslin Date: Fri, 5 Mar 2021 15:28:08 +0800 Subject: [PATCH] Use getPrivateDnsMode() to get the value of private DNS PRIVATE_DNS_DEFAULT_MODE_FALLBACK has removed, use ConnectivityManager#getPrivateDnsMode() to get the value of private DNS instead of querying settings and implementing logic by itself. Bug: 172183305 Test: make RunSettingsRoboTests \ ROBOTEST_FILTER=PrivateDnsPreferenceControllerTest Test: make RunSettingsRoboTests \ ROBOTEST_FILTER=PrivateDnsModeDialogPreferenceTest Change-Id: I024c3ddfb85f4c3d177e2e99294c998d81d4e08d --- .../network/PrivateDnsModeDialogPreference.java | 12 ++---------- .../network/PrivateDnsPreferenceController.java | 2 +- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java index 4878f31dec9..ea29a1d796d 100644 --- a/src/com/android/settings/network/PrivateDnsModeDialogPreference.java +++ b/src/com/android/settings/network/PrivateDnsModeDialogPreference.java @@ -15,7 +15,6 @@ */ package com.android.settings.network; -import static android.net.ConnectivityManager.PRIVATE_DNS_DEFAULT_MODE_FALLBACK; import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OFF; import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_OPPORTUNISTIC; import static android.net.ConnectivityManager.PRIVATE_DNS_MODE_PROVIDER_HOSTNAME; @@ -28,6 +27,7 @@ import android.content.ContentResolver; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; +import android.net.ConnectivityManager; import android.os.UserHandle; import android.os.UserManager; import android.provider.Settings; @@ -84,14 +84,6 @@ public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat @VisibleForTesting static final String HOSTNAME_KEY = Settings.Global.PRIVATE_DNS_SPECIFIER; - public static String getModeFromSettings(ContentResolver cr) { - String mode = Settings.Global.getString(cr, MODE_KEY); - if (!PRIVATE_DNS_MAP.containsKey(mode)) { - mode = Settings.Global.getString(cr, Settings.Global.PRIVATE_DNS_DEFAULT_MODE); - } - return PRIVATE_DNS_MAP.containsKey(mode) ? mode : PRIVATE_DNS_DEFAULT_MODE_FALLBACK; - } - public static String getHostnameFromSettings(ContentResolver cr) { return Settings.Global.getString(cr, HOSTNAME_KEY); } @@ -168,7 +160,7 @@ public class PrivateDnsModeDialogPreference extends CustomDialogPreferenceCompat final Context context = getContext(); final ContentResolver contentResolver = context.getContentResolver(); - mMode = getModeFromSettings(context.getContentResolver()); + mMode = ConnectivityManager.getPrivateDnsMode(contentResolver); mEditText = view.findViewById(R.id.private_dns_mode_provider_hostname); mEditText.addTextChangedListener(this); diff --git a/src/com/android/settings/network/PrivateDnsPreferenceController.java b/src/com/android/settings/network/PrivateDnsPreferenceController.java index 84cae88f856..31360408bdd 100644 --- a/src/com/android/settings/network/PrivateDnsPreferenceController.java +++ b/src/com/android/settings/network/PrivateDnsPreferenceController.java @@ -118,7 +118,7 @@ public class PrivateDnsPreferenceController extends BasePreferenceController public CharSequence getSummary() { final Resources res = mContext.getResources(); final ContentResolver cr = mContext.getContentResolver(); - final String mode = PrivateDnsModeDialogPreference.getModeFromSettings(cr); + final String mode = ConnectivityManager.getPrivateDnsMode(cr); final LinkProperties lp = mLatestLinkProperties; final List dnses = (lp == null) ? null : lp.getValidatedPrivateDnsServers(); final boolean dnsesResolved = !ArrayUtils.isEmpty(dnses);