diff --git a/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceController.java b/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceController.java
index c56f630..8e2d3d4 100644
--- a/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceController.java
+++ b/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceController.java
@@ -25,6 +25,7 @@
 import com.android.settings.applications.AppStateBaseBridge;
 import com.android.settings.core.BasePreferenceController;
 import com.android.settings.notification.NotificationBackend;
+import com.android.settingslib.applications.AppUtils;
 import com.android.settingslib.applications.ApplicationsState;
 import com.android.settingslib.applications.ApplicationsState.AppEntry;
 import com.android.settingslib.applications.ApplicationsState.AppFilter;
@@ -128,7 +129,7 @@
             CheckBoxPreference preference = mScreen.findPreference(prefKey);
             if (preference == null) {
                 preference = new CheckBoxPreference(mScreen.getContext());
-                preference.setIcon(entry.icon);
+                preference.setIcon(AppUtils.getIcon(mContext, entry));
                 preference.setTitle(entry.label);
                 preference.setKey(prefKey);
                 mScreen.addPreference(preference);
diff --git a/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceControllerTest.java b/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceControllerTest.java
index 90b8927..38c605c 100644
--- a/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceControllerTest.java
+++ b/tests/unit/src/com/android/settings/applications/specialaccess/notificationaccess/BridgedAppsPreferenceControllerTest.java
@@ -30,7 +30,6 @@
 import android.content.Context;
 import android.content.pm.ApplicationInfo;
 import android.content.pm.VersionedPackage;
-import android.graphics.drawable.Drawable;
 import android.os.Looper;
 import android.service.notification.NotificationListenerFilter;
 import android.util.ArraySet;
@@ -65,6 +64,7 @@
     PreferenceScreen mScreen;
     @Mock
     ApplicationsState mAppState;
+
     private ApplicationsState.AppEntry mAppEntry;
     private ApplicationsState.AppEntry mAppEntry2;
 
@@ -92,8 +92,6 @@
 
         mAppEntry.info = ai;
         mAppEntry.label = "hi";
-        Drawable icon = mock(Drawable.class);
-        mAppEntry.icon = icon;
 
         mController = new BridgedAppsPreferenceController(mContext, "key");
         mController.setCn(mCn);
@@ -167,7 +165,7 @@
 
         assertThat(actual.isChecked()).isTrue();
         assertThat(actual.getTitle()).isEqualTo("hi");
-        assertThat(actual.getIcon()).isEqualTo(mAppEntry.icon);
+        assertThat(actual.getIcon()).isNotNull();
     }
 
     @Test
