【发布时间】:2012-06-11 19:53:17
【问题描述】:
我已经阅读了关于 App Widgets 的开发人员指南,并且我明白为了避免 ANR 错误,您应该在 AppWidgetProvider 的 onUpdate 方法中启动服务更新小部件...我有一个关于此类服务的问题:当我们开发可以从活动启动的标准服务时,我们应该避免在 onStartCommand 中进行过长的计算,因为 onStartCommand 方法在主 UI 线程中运行。所以,我们是否应该避免在由 AppWidgetProvider 启动的服务的 onStartCommand 内或在此如果我们不冒险阻止用户界面?如果在这种情况下我们也必须避免在 onStartCommand 中进行长时间计算,我们是否可以在服务中启动工作线程,或者使用 Intent 服务?在这种情况下,我们可以使用 AppWidgetManager 的 updateAppWidget 方法从我们想要的任何线程更新小部件,还是冒着从 UI 线程外部更新 UI 的风险?
我希望问题很清楚..
【问题讨论】:
标签: android widget android-service android-appwidget appwidgetprovider