是否可以在工作线程中调用 appWidgetManager.updateAppWidget() ?
Is it possible to call appWidgetManager.updateAppWidget() in worker thread?
喂?我正在制作一个 android 应用小部件。
我的小部件中有许多来自数据库的 ui 相关数据。
所以为了避免广播接收器 ANR 问题,我制作了一个 remoteView 并从数据库加载数据并在 remoteView 中设置相关的数据 ui。
最后我调用了 appWidgetManager.updateAppWidget(appWidgetId, remoteViews)
,应用小部件已正确更新。
但是,我记得UI更新相关的逻辑必须在UI线程中。
所以,我想知道我还能在工作线程中调用 appWidgetManager.updateAppWidget() 吗?
I remember that UI update related logic must be in UI thread.
正确,但您的代码与应用中的 UI 无关。
I wonder that can I still call appWidgetManager.updateAppWidget() in worker thread?
A RemoteViews
是一种数据结构,它描述 另一个进程 将呈现的 UI。欢迎您创建这样的数据结构并将其交给后台线程上的 OS。另一个进程将使用其主应用程序线程来渲染 RemoteViews
描述的 UI。
喂?我正在制作一个 android 应用小部件。
我的小部件中有许多来自数据库的 ui 相关数据。
所以为了避免广播接收器 ANR 问题,我制作了一个 remoteView 并从数据库加载数据并在 remoteView 中设置相关的数据 ui。
最后我调用了 appWidgetManager.updateAppWidget(appWidgetId, remoteViews)
,应用小部件已正确更新。
但是,我记得UI更新相关的逻辑必须在UI线程中。
所以,我想知道我还能在工作线程中调用 appWidgetManager.updateAppWidget() 吗?
I remember that UI update related logic must be in UI thread.
正确,但您的代码与应用中的 UI 无关。
I wonder that can I still call appWidgetManager.updateAppWidget() in worker thread?
A RemoteViews
是一种数据结构,它描述 另一个进程 将呈现的 UI。欢迎您创建这样的数据结构并将其交给后台线程上的 OS。另一个进程将使用其主应用程序线程来渲染 RemoteViews
描述的 UI。