我有一个应用程序,只要服务的活动在前台(活动)中时,我希望更新活动(列出活动是准确的)
我可以使用ListActivity Intent,但是问题是即使在后台的时候也会引发活动.
我还考虑在ListAdapter上使用registerDataSetObserver,但是它要求更新游标.从外部服务更新游标可能不可行.
我们有一个通用的解决方案吗?
解决方法
Do we have a generic solution to this
?
可能还有十几个.这里有几个:
>使用onResume()中的服务注册一个监听器对象,并将其删除onPause()
>发送一个私人广播,由活动通过registerReceiver()在前台拾取
>为活动提供“待处理结果” – “待处理”服务
>使用ResultReceiver
>使用ContentProvider,活动保存在提供者的Cursor上,服务更新提供者
This set of projects在远程服务的上下文中演示了前三个.