我必须创建一个应用程序,需要与谷歌,outlook或任何其他流行的日历服务同步。它需要是双向的,这意味着来自google/outlook日历的更新和事件需要在我的应用程序中可见和可编辑,反之亦然。
我已经寻找了一段时间,希望能找到像电子邮件服务这样的东西,可以使用Imap和Smtp服务器进行同步。
我发现.ics文件可以用来导出和导入日历数据。但在我的情况下,它需要从两端进行实时同步。
有没有我可以使用的API或库?或任何其他方法来做吗?欢迎任何建议。谢谢。
发布于 2017-08-07 09:57:46
同步日历的实际方法是CalDAV server,它读取事件并将事件写入本地数据库,并通过封装在CalDAV消息中的ICS格式公开事件详细信息。
不同的客户端对协议及其扩展具有不同的支持级别。
苹果iCalelndar、带有Lightning的Mozilla Thunderbird和带有一些专有插件的Microsoft Outlook都可以与CalDAV对话,但每一个都有其特定的烦恼。iCalendar将拒绝删除冲突,Lightning将陷入身份验证问题,并停止更新和Outlook插件,嗯……烂透了。
特别是一个Outlook插件是由开发人员设计的(设置屏幕上有20个标签),没有正确地实现base64 (我们必须在服务器上填充它的消息),并且当调试器在运行它的机器上处于活动状态时,拒绝做任何有用的事情。
但这是五年前的情况,从那以后我就再也没有触及过这个话题。我想我们决定使用Google Calendar,并通过ICS文件提供单向同步。
https://stackoverflow.com/questions/45543964
复制