在syncadapter退出线程之前,我在syncadapter中使用了cancelrequest(),但后来我决定,这只会被另一个想要取消正在进行的同步的实体(ui)使用(耗时太长,哎呀等等)。
现在我的同步程序认为总是有一个挂起的请求-我用它来忽略新的请求。
我要做的另一件事是,在一个服务中有一个侦听线程,它正在侦听contactsContract.authority的更改,以便它可以启动我的聚合的同步。
更新:此侦听器线程正在泄漏。但是,当我处理完它时,我会发出一个.stop(),我认为有一个处理程序保持活动状态,并阻止服务停止。
我想将syncresults发送到某个实体(即syncmanager),该实体跟踪这些东西以进行挂起、回收等操作。
我错过了什么?

最佳答案

您可以使用SyncResult这个类将同步操作的结果传递给syncmanager。根据这里的值,syncmanager将确定同步的配置,以及是否需要在将来安排新的同步操作

08-18 01:12