Android Glance widget not updating

57 Views Asked by At

I'm unable to update Android glance widget/state. The onUpdate method gets called, but GlanceAppWidget provideGlance isn't. It only gets called when I run the app or after some time period.

Here is my GlanceAppWidgetReceiver class:

class TodayWidgetReceiver : GlanceAppWidgetReceiver() {

    override val glanceAppWidget: GlanceAppWidget
        get() = TodayWidget()

    override fun onUpdate(context: Context, appWidgetManager: AppWidgetManager, appWidgetIds: IntArray) {
        super.onUpdate(context, appWidgetManager, appWidgetIds)
        runBlocking {
            appWidgetIds.forEach {
                val glanceId = GlanceAppWidgetManager(context).getGlanceIdBy(it)
                glanceAppWidget.apply {
                    updateAppWidgetState(context, glanceId) { prefs ->
                        prefs[stringPreferencesKey("TOKEN")] = Random.nextULong().toString()
                    }
                }
                glanceAppWidget.update(context, glanceId)
            }
        }
    }

}
0

There are 0 best solutions below