我正在我的应用中实现ContentProvider。执行操作时,我发送了ACTION_UPDATED
广播,以便使用此内容提供商的应用的各个部分知道他们必须重新查询最新数据。
我最近遇到了一个用例,我想批量处理多个操作,特别是delete
和update
。就目前而言,我的ACTION_UPDATED
广播将被发送两次。这会导致一些有趣的UI更新。我调查了applyBatch()
,但根据ACTION_UPDATED
或update
是否是批量的一部分,我无法弄清楚如何有选择地发送delete
广播,或者只是正常的流程。
我认为在applyBatch()
的实施过程中,我可以使用isDelete()
和isUpdate()
方法来调用delete
和{{1}的内部版本不发送广播的API,然后在我的update
实现结束时,我可以只发送一次广播。但是,这些API仅在API级别23+中,我需要支持比这更早的版本。
有什么建议吗?