我目前正在使用Android SDK在Firestore数据库上做一个项目。我需要编写一个事务,我想在“目标”集合中编辑“目标”文档,只有当另一个名为“批次”的集合没有任何文档,其字段名称“destionId”设置为编辑目标文档时ID。我正在检查与.limit(1)集的查询
现在,我想在一个交易中这样做,因为这个应用程序是实时的,并且会被很多人同时使用。如果我没有使用事务,则可能是另一个人可能在我的查询之间添加一个“批处理”文档,该查询用于检查和实际编辑目标文档。所以,我希望每次事务重试时运行查询并检查批处理集合。
但我不确定如何在事务中运行Firestore查询作为其异步。我相信在Android SDK中无法生成阻止查询请求。如果错的话请纠正我。
有人可以帮我理解如何解决这个冲突吗?提前致谢。