我在 Realm 的任务演示应用程序之后实现了实时同步。
有一个虚拟容器用于存放List
模型。
演示应用似乎不支持离线使用。
我想知道,在这种设置下,我在在线和离线设备上启动应用程序,然后使用离线设备上网时会发生什么。
我最初的期望是我会以 2 个容器结束(这将是一个无效状态),但是当我惊讶地测试时,最后只有 1 个容器。
但有时我得到 2 个容器,但无法确定是什么原因造成的。
那么问题是,这究竟是如何工作的?我认为当我第一次同步离线设备时容器通常不会重复的原因是它被作为同一个对象处理,可能是因为它没有主键或其他什么?但是为什么有时会重复呢?这里的最佳做法是什么?我是否可能必须使用主键或在连接后检查是否存在重复,如果是,则手动合并容器?