diff --git a/src/com/android/settings/datetime/DateTimeLaunchUtils.java b/src/com/android/settings/datetime/DateTimeLaunchUtils.java
index aef0ff2..f8cf0be 100644
--- a/src/com/android/settings/datetime/DateTimeLaunchUtils.java
+++ b/src/com/android/settings/datetime/DateTimeLaunchUtils.java
@@ -15,7 +15,7 @@
  */
 package com.android.settings.datetime;
 
-import static android.provider.DeviceConfig.NAMESPACE_SETTINGS_UI;
+import static android.provider.DeviceConfig.NAMESPACE_SYSTEM_TIME;
 
 import android.provider.DeviceConfig;
 
@@ -47,6 +47,6 @@
     private static boolean isFeedbackFeatureSupportedOnThisDevice() {
         boolean defaultIsSupported = false;
         return DeviceConfig.getBoolean(
-                NAMESPACE_SETTINGS_UI, KEY_HELP_AND_FEEDBACK_FEATURE_SUPPORTED, defaultIsSupported);
+                NAMESPACE_SYSTEM_TIME, KEY_HELP_AND_FEEDBACK_FEATURE_SUPPORTED, defaultIsSupported);
     }
 }
diff --git a/tests/robotests/src/com/android/settings/datetime/TimeFeedbackPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/datetime/TimeFeedbackPreferenceControllerTest.java
index 196aa36..6cbb14f 100644
--- a/tests/robotests/src/com/android/settings/datetime/TimeFeedbackPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/datetime/TimeFeedbackPreferenceControllerTest.java
@@ -16,7 +16,7 @@
 
 package com.android.settings.datetime;
 
-import static android.provider.DeviceConfig.NAMESPACE_SETTINGS_UI;
+import static android.provider.DeviceConfig.NAMESPACE_SYSTEM_TIME;
 
 import static com.android.settings.core.BasePreferenceController.AVAILABLE;
 import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE;
@@ -93,7 +93,7 @@
     @Test
     @EnableFlags({Flags.FLAG_DATETIME_FEEDBACK})
     public void validIntentUri_targetHandlerNotFound_returnsConditionallyUnavailable() {
-        DeviceConfig.setProperty(NAMESPACE_SETTINGS_UI,
+        DeviceConfig.setProperty(NAMESPACE_SYSTEM_TIME,
                 DateTimeLaunchUtils.KEY_HELP_AND_FEEDBACK_FEATURE_SUPPORTED, "true", true);
         when(mMockPackageManager.resolveActivity(any(), anyInt())).thenReturn(null);
 
@@ -107,7 +107,7 @@
     @Test
     @EnableFlags({Flags.FLAG_DATETIME_FEEDBACK})
     public void validIntentUri_targetHandlerAvailable_returnsAvailable() {
-        DeviceConfig.setProperty(NAMESPACE_SETTINGS_UI,
+        DeviceConfig.setProperty(NAMESPACE_SYSTEM_TIME,
                 DateTimeLaunchUtils.KEY_HELP_AND_FEEDBACK_FEATURE_SUPPORTED, "true", true);
         when(mMockPackageManager.resolveActivity(any(), anyInt())).thenReturn(
                 createDummyResolveInfo());
