跨设备同步 SQLite 数据库

Synchronize SQLite database across devices

为了构建连接体验,我需要在多个设备之间同步我的应用程序的数据存储(SQLite 数据库)。到目前为止,我找到的唯一解决方案是 roam data,但这有两个直接缺点:

  1. 存储空间相当有限。
  2. 同步只能发生在文件级别(相对于数据库行)。

后者尤其糟糕,因为这意味着在不同设备上进行的更改可能会撤消在另一台设备上所做的更改,而不是合并修改。

问:Windows 运行时是否内置了任何工具,允许跨设备在行级别同步数据库?我正在寻找适用于 Windows 10 和 Windows 10 Mobile 的解决方案。


更新: 附加信息1) 关于我正在寻找的内容,以及我试图避免的情况。以下列表排名不分先后:


1) 此信息是在 提供后提供的。投票时请记住这一点。

这个没有内置功能;要么你必须自己尝试让漫游存储工作,要么你需要一种基于服务的方法,在这种方法中,真相在云端,客户端来回同步增量。

请注意,如果您支持使用缓存数据进行离线访问,在这种情况下您仍然会遇到冲突解决问题,但至少存储限制将消失。 (理论上,即使没有离线访问,您也会遇到冲突解决问题,但这在单用户应用程序中是极不可能的)。

编辑

为了完整性,我会提到 Microsoft Sync Framework 作为一个选项来帮助解决同步问题,但它现在在 "extended support" 中并且官方文档没有提到 UWP,所以我不不知道行不行。