【问题标题】:API for showing free/busy time in iCal (Apple people?)用于在 iCal 中显示空闲/忙碌时间的 API(Apple 人?)
【发布时间】:2009-10-29 08:47:26
【问题描述】:

在 Snow Leopard 中,可以在 iCal 活动中显示空闲/忙碌时间。我搜索了 CalStore.framework 的标题,找不到任何描述该字段的属性。如何检索日历事件的忙/闲属性?

【问题讨论】:

    标签: cocoa osx-snow-leopard icalendar calendar-store


    【解决方案1】:

    iCal 服务器有检索忙/闲的方法,请参阅:http://www.webdav.org/specs/rfc4791.html#rfc.section.7.8.4

    但这并非易事,您必须编写自己的 API。您使用 NSURLRequest 和 NSURLConnection 发出服务器查询。

    【讨论】:

      【解决方案2】:

      当我导出 iCal 4 日历时,我注意到“忙碌”被编码为“TRANSP:OPAQUE”,“空闲”被编码为“TRANSP:TRANSPARENT”。 我无法在 iCal 的 Applescript 字典中找到等效的内容。

      【讨论】:

        【解决方案3】:

        可以肯定,日历商店中没有为此提供公共 API。您必须提交一个请求它的错误。替代方案:

        • 查看 iCal 是否支持该属性的 AppleScript
        • 使用可以访问完整 iCal 架构的同步服务

        【讨论】:

        • 感谢@Mike 回答这个问题。 iCal 的 AppleScript 字典没有提到这个属性。iCal Schema 上的文档也没有相关:developer.apple.com/mac/library/documentation/AppleApplications/… 难道苹果还没有更新文档?
        • 我提交了关于缺少 API 的雷达。
        • 没有公开的可可 API,但 CalDAV 是一个开放标准。您可以自己查询服务器。看我的回答...
        • 问题是 iCal 也支持本地日历的忙/闲标志,因此使用 CalDAV 只能让您顺利完成。
        【解决方案4】:

        作为黑客,您能否请求事件的 CalDav 文件并对其进行解析?

        【讨论】:

        • 听起来很有趣。我怎么做?你能举个例子吗?谢谢
        • 你可以相信通过让应用程序从 AppleScript 导出它来生成一个。不过会很丑/很乱。
        • 就像我说的那样,这将是一个 hack(根据你在做什么,可能会很慢)。我只知道它是一种记录格式,并且是一种做你想做的事情的方法,因为从其他答案中可以看出 API 不容易获得。抱歉没有例子,我只是在这一点上抛出想法。
        • 好吧,正如我之前写的,我提交了一个雷达#7358129。希望它将在下一个版本中得到修复。谢谢
        • 提交了一份副本:rdar://7376695
        猜你喜欢
        • 2013-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-20
        • 2012-12-06
        • 1970-01-01
        相关资源
        最近更新 更多