What happened?
Android OS home-screen widgets can show stale data after the physical device has been idle with the screen off.
On simulator/emulator, while the widget stays visible, OS widget data appears to refresh on schedule. On a physical Android device, after the phone is left idle and then unlocked, the OS widget can still show old data. This seems to affect OS widgets generally, but is easiest to spot on the Blocks widget.
Expected behavior
Android OS widgets should refresh after the configured background interval, or catch up shortly after the device wakes/app becomes active.
Steps to Reproduce
- Add a Bitkit Android OS home-screen widget.
- Confirm the widget has current data.
- Lock the physical Android device and leave it idle with the screen off for around 20 minutes or longer.
- Unlock the device and check the OS widget.
- Compare against current data. In the same idle test, iOS OS widgets showed updated data while Android still showed the old state.
Logs / Screenshots / Recordings
bitkit_logs_2026-05-29_12-23-10.zip
Bitkit Version
2.2.0
Device / OS
Samsung (Android 14)
Not reproduced on iOS device. Simulator/emulator observation showed scheduled refresh while the widget stayed visible.
Reproducibility
Always
Additional context
Code inspection suggests Android OS widgets and in-app widgets use separate caches and refresh paths:
- In-app widgets refresh through app-side widget repository jobs.
- Android OS widgets read cached data from the app widget DataStore and rely on a periodic WorkManager refresh.
- OS widget XML uses no platform update period fallback.
- When the device is idle, Android may defer periodic work, and there does not appear to be a foreground/unlock catch-up refresh for OS widget cache.
Likely fix direction: trigger a one-shot OS widget refresh when the app foregrounds or when active OS widgets exist, and/or sync fresh in-app widget data into the OS widget cache.
What happened?
Android OS home-screen widgets can show stale data after the physical device has been idle with the screen off.
On simulator/emulator, while the widget stays visible, OS widget data appears to refresh on schedule. On a physical Android device, after the phone is left idle and then unlocked, the OS widget can still show old data. This seems to affect OS widgets generally, but is easiest to spot on the Blocks widget.
Expected behavior
Android OS widgets should refresh after the configured background interval, or catch up shortly after the device wakes/app becomes active.
Steps to Reproduce
Logs / Screenshots / Recordings
bitkit_logs_2026-05-29_12-23-10.zip
Bitkit Version
2.2.0
Device / OS
Samsung (Android 14)
Not reproduced on iOS device. Simulator/emulator observation showed scheduled refresh while the widget stayed visible.
Reproducibility
Always
Additional context
Code inspection suggests Android OS widgets and in-app widgets use separate caches and refresh paths:
Likely fix direction: trigger a one-shot OS widget refresh when the app foregrounds or when active OS widgets exist, and/or sync fresh in-app widget data into the OS widget cache.