OGeek|极客世界-中国程序员成长平台

标题: ios - 使用 EventKit 创建提醒时出错 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:35
标题: ios - 使用 EventKit 创建提醒时出错

我有一个使用 EventKit 的应用程序。我请求允许提醒,然后我有创建提醒的代码。在模拟器中运行应用程序时,我有时会在日志中收到此错误消息:

从守护进程获取自时间戳 450512391.766620 以来更改的对象 ID 时出错:错误域 = EKCADErrorDomain 代码 = 1013“操作无法完成。(EKCADErrorDomain 错误 1013。)” 获取新提醒的默认日历时出错:错误域 = EKCADErrorDomain 代码 = 1013“操作无法完成。(EKCADErrorDomain 错误 1013。)”

第一个错误来自授权步骤,第二个来自这些行:

EKReminder *reminder = [EKReminder 提醒WithEventStore:eventStore]; 提醒.calendar = eventStore.defaultCalendarForNewReminders;

这发生在 requestAccessToEntityType:completion: 返回已授予的提醒权限之后,因此肯定有权限。

奇怪的是,一旦问题发生,如果我只是重新启动应用程序,一切都很好。如果我重置模拟器并重新运行应用程序,这种情况有时会再次发生。



Best Answer-推荐答案


这似乎只发生在以下工作流程中:

我怀疑原因是因为当你重置整个模拟器时,它需要几秒钟来初始化所有演示数据,例如第一次“启动”时的联系人和日历事件。

如果您在重置后等待 10 多秒,然后运行您的应用,您不会收到此警告。

另一种解决方法是在日历权限测试期间使用 iOS 模拟器设置应用程序中的“重置隐私设置”(常规 > 重置)。

关于ios - 使用 EventKit 创建提醒时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29586675/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4