diff --git a/core/java/android/service/controls/ControlsProviderService.java b/core/java/android/service/controls/ControlsProviderService.java
index 9accf5b0abf5d..4262c40221318 100644
--- a/core/java/android/service/controls/ControlsProviderService.java
+++ b/core/java/android/service/controls/ControlsProviderService.java
@@ -304,12 +304,11 @@ public abstract class ControlsProviderService extends Service {
Preconditions.checkNotNull(context);
Preconditions.checkNotNull(componentName);
Preconditions.checkNotNull(control);
- final ComponentName sysuiComponent = ComponentName.unflattenFromString(
- context.getResources().getString(
- com.android.internal.R.string.config_systemUIServiceComponent));
+ final String controlsPackage = context.getString(
+ com.android.internal.R.string.config_controlsPackage);
Intent intent = new Intent(ACTION_ADD_CONTROL);
intent.putExtra(Intent.EXTRA_COMPONENT_NAME, componentName);
- intent.setPackage(sysuiComponent.getPackageName());
+ intent.setPackage(controlsPackage);
if (isStatelessControl(control)) {
intent.putExtra(EXTRA_CONTROL, control);
} else {
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 28dcc2fdb5736..acda77f185fdb 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -2779,6 +2779,10 @@
com.android.systemui/com.android.systemui.SystemUIService
+
+ com.android.systemui
+
com.android.systemui/com.android.systemui.keyguard.KeyguardService
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index f28a3dd68d0f2..7f8508d73e8d4 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -365,6 +365,7 @@
+
diff --git a/core/tests/coretests/src/android/service/controls/ControlProviderServiceTest.java b/core/tests/coretests/src/android/service/controls/ControlProviderServiceTest.java
index 13000e9431410..f4ebe2f9a755f 100644
--- a/core/tests/coretests/src/android/service/controls/ControlProviderServiceTest.java
+++ b/core/tests/coretests/src/android/service/controls/ControlProviderServiceTest.java
@@ -64,8 +64,7 @@ import java.util.function.Consumer;
@RunWith(AndroidJUnit4.class)
public class ControlProviderServiceTest {
- private static final ComponentName TEST_SYSUI_COMPONENT =
- ComponentName.unflattenFromString("sysui/.test.cls");
+ private static final String TEST_CONTROLS_PACKAGE = "sysui";
private static final ComponentName TEST_COMPONENT =
ComponentName.unflattenFromString("test.pkg/.test.cls");
@@ -97,8 +96,8 @@ public class ControlProviderServiceTest {
when(mSubscriber.asBinder()).thenCallRealMethod();
when(mSubscriber.queryLocalInterface(any())).thenReturn(mSubscriber);
- when(mResources.getString(com.android.internal.R.string.config_systemUIServiceComponent))
- .thenReturn(TEST_SYSUI_COMPONENT.flattenToString());
+ when(mResources.getString(com.android.internal.R.string.config_controlsPackage))
+ .thenReturn(TEST_CONTROLS_PACKAGE);
when(mContext.getResources()).thenReturn(mResources);
Bundle b = new Bundle();
@@ -252,7 +251,7 @@ public class ControlProviderServiceTest {
eq(Manifest.permission.BIND_CONTROLS));
Intent intent = mIntentArgumentCaptor.getValue();
assertEquals(ControlsProviderService.ACTION_ADD_CONTROL, intent.getAction());
- assertEquals(TEST_SYSUI_COMPONENT.getPackageName(), intent.getPackage());
+ assertEquals(TEST_CONTROLS_PACKAGE, intent.getPackage());
assertEquals(TEST_COMPONENT, intent.getParcelableExtra(Intent.EXTRA_COMPONENT_NAME));
assertTrue(equals(control,
intent.getParcelableExtra(ControlsProviderService.EXTRA_CONTROL)));