我有一个应用程序,我希望仅当服务中的活动处于前台(活动)时才更新活动(精确列出活动)
我可以使用ListActivity Intent,但问题是即使它在后台也会引发活动。
我还考虑过在ListAdapter上使用registerDataSetObserver,但是要求更新游标。从外部服务更新光标可能不可行。
我们有一个通用的解决方案吗?
答案 0 :(得分:20)
我们是否有一个通用的解决方案 ?
可能有十几个。以下是一些:
onResume()
中使用该服务注册一个侦听器对象,并将其移除onPause()
registerReceiver()
通过活动获取PendingIntent
ResultReceiver
ContentProvider
,活动保留在提供商的Cursor
上,服务更新提供商This set of projects演示了远程服务环境中的前三个。
答案 1 :(得分:0)
最好的解决方案是拥有一个集中的地方。我认为这是最好的解决方案。 看看这个: