【发布时间】:2018-06-10 14:11:12
【问题描述】:
在AppWidgetProvider 类中,我有一个简单的CountDownTimer 正在运行。
object : CountDownTimer(30000, 1000) {
override fun onTick(millisUntilFinished: Long) {
val appWidgetManager = AppWidgetManager.getInstance(context)
val views = RemoteViews(context.packageName,R.layout.view_group)
views.setTextViewText(R.id.m_text_view,"seconds remaining: " + millisUntilFinished / 1000)
appWidgetManager.updateAppWidget(appWidgetIds[0], views)
}
override fun onFinish() {
// Do nothing
}
}.start()
这会按预期更新相应的小部件 (appWidgetIds[0]),但这仅适用于应用打开时的情况。当我在最近的菜单中刷掉应用程序时,即关闭它,小部件停止更新。
我也尝试过使用单独的服务,但结果相同。大概是因为该服务不是前台服务,而且我不希望有一个持久的通知,所以我不能使用前台服务。
【问题讨论】: