在Cloud Firestore中,如果电话的Internet连接断开(如果用户通过隧道等可能会发生),则永远不会执行事务。
我的问题是我在该数据库中存储了用户可以购买的商品数量……他也可以再次购买。因此,我想以这种方式更新现有金额:updated_amount = current_amount + new_amount
,current_amount
和updated_amount
是Firestore文档中的相同Firestore字段。这就是为什么我应该使用交易。
但是由于交易永远不会发生(与Internet的连接断开),我是否应该实际使用它们?
我将第二次使用Google In-Apps API。目前,我只使用Firestore。
答案 0 :(得分:1)
好的,您可以使用交易。如果客户端处于脱机状态,则事务将在重新联机后完成。只是不要指望如果应用程序在交易完成之前就死了,它就不会完成-不会重试。