问题描述:通过代码将事件和提醒添加到系统日历的功能,真机测试时有的手机可以添加成功,有的手机不可以添加成功,即调用try eventStore.save(event, span: .thisEvent)
时直接跳出,之后的代码没有走。输出的错误如下:
[EventKit] No object ID provided. Will not find out if the object exists.
[EventKit] Object of type EKEvent (uniqueIdentifier = x-apple-eventkit:///Event/t5) failed validation while validating relation alarms.
导致save不成功的原因其实跟代码没半毛钱关系,是因为手机的缘故,打开你手机上的日历,点击右上角的“+”加好,看可不可以添加日程,加号点击不了,则说明有问题。
解决方法:在“设置 -> Apple ID -> iCloud -> 日历”,禁止“日历”使用iCloud就可以了。