App Widget — RemoteViews, обновляемые AppWidgetProvider (BroadcastReceiver); UI ограничен набором RemoteViews, клики — через PendingIntent, данные подтягивают периодически или по событию.
Разбор
- Тяжёлую работу не делайте в onUpdate на main — делегируйте WM.
- Размеры и resize modes задают в XML widget provider.
- На Android 12+ улучшены glance/динамические цвета — смотрите Glance library.
- Ограничения update frequency со стороны лаунчера/ОС.
Итог
Виджеты — RemoteViews + Provider; это не полноценный View hierarchy вашего процесса.