gpt4 book ai didi

ios - 使用 EventKit 创建提醒时出错

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:41:02 25 4
gpt4 key购买 nike

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

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

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

EKReminder *reminder = [EKReminder reminderWithEventStore:eventStore];
reminder.calendar = eventStore.defaultCalendarForNewReminders;

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

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

最佳答案

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

  • 重置所有联系人和设置菜单选项。
  • 恢复后立即退出模拟器。
  • 运行您的应用程序,它会立即在刚刚重置、从未打开过的模拟器上询问日历信息。

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

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

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

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

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com