Include widget providers enabled at runtime The call to queryIntentReceivers only contains receivers that are enabled. It does not return disabled receivers, whether disabled by default and unmodified or disabled at runtime. Therefore, the isEnabled check only has the effect of filtering out enabled widgets that were initially disabled in the manifest. I have verified this locally with all 8 permutations of manifest-runtime component enabled states. Fix: 189087746 Test: locally, AppWidgetServiceImplTest Change-Id: Ibc35005f8af31622134edb174469b39895b88ecc
diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java index 4e14411..acbf487 100644 --- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java +++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
@@ -2186,10 +2186,6 @@ return false; } - if (!ri.activityInfo.isEnabled()) { - return false; - } - ComponentName componentName = new ComponentName(ri.activityInfo.packageName, ri.activityInfo.name); ProviderId providerId = new ProviderId(ri.activityInfo.applicationInfo.uid, componentName);