【问题标题】:Data sync between database and google calendar数据库和谷歌日历之间的数据同步
【发布时间】:2011-11-04 20:45:09
【问题描述】:

我想将我的数据库(我的数据库上的任务,具有描述、日期、开始时间和结束时间以及用户)与 Google 日历同步。

为了与谷歌同步,我计划使用these components(当然,我可以以某种方式自己编写全部内容,但这是我可以为未来计划的事情,现在我时间不多了,或者你能建议吗?一些连接到谷歌日历以发送/接收数据的工作代码?)。

现在我的主要问题与 Delphi 编程并没有真正的联系,我必须问一个与 Delphi 相关的问题,因为其他问题未被查看(比如我问过的this one)。

所以我想知道如何进行同步。注意:我使用一种方式同步,生成的日历将是只读日历。

我可以设置要同步的过去和未来的最大数量(例如过去 10 天和未来 100 天)。然后我的想法是这样的: 当我启动同步应用程序时,我完全阅读了该范围内的谷歌日历项目,我将与我在 db 中的内容一一进行比较,然后“合并”更改。然后在计时器上检查我的数据库中的差异并上传更改。

但我不确定这些是最好的解决方案。

实际案例的简化如下:想象它是一个 CRM,每个用户都有一些任务分配。由于除了每项任务之外,还有一个逻辑我只想在我的应用程序中管理该逻辑,但是将日历推送到谷歌的想法是它可以很容易地从任何移动设备上获得。这是一种单向同步的方式。我还可以让日历在每次同步时都不是只读的,我将“下载”新插入的任务,但我会忽略已删除和已编辑的任务。在第二种情况下,仅跟踪 db 中的更改是不够的,但我还应该跟踪 google 上的更改,至少要“拦截”新添加的任务。

我知道这是一个通用问题,但我想触发一个有用的答案,例如将我重定向到同步算法或 Delphi 示例代码或任何可以帮助我在这个问题上取得进展的东西。谢谢。

【问题讨论】:

  • Sync Algorithms 的可能副本
  • 我已经完成了一个与员工 Outlook 日历同步的培训计划数据库应用程序。我使用的算法又快又脏。我只是在描述字段文本前加上“-TSDB-”之类的标识符,这样我就可以删除所有符合该条件的事件,然后从数据库中重新加载。无需检查个别事件。不知道你是否可以使用这样的东西......只是把它放在那里。
  • 谢谢,这是我用于与本地 Outlook 同步的技巧。但是为了同步到 gmail 日历,我想要一些有一些性能的东西,我无法通过删除和重新创建来同步 ecery 5 分钟 10000 约会。

标签: delphi synchronization google-calendar-api


【解决方案1】:

谷歌:“日历同步算法”

最后一个实际上很有趣,因为它直接回到 StackOverflow ;) 要点是:我认为没有必要重新发明轮子。 Ps:第一个链接包含一些和你类似的有用想法。

【讨论】:

  • 非常感谢您提供的真正有用的东西。
猜你喜欢
  • 1970-01-01
  • 2016-08-30
  • 1970-01-01
  • 1970-01-01
  • 2017-10-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多