#import <EventKit/EventKit.h>
我无法在默认的iOS日历中创建活动.
EKEventStore *eventStore = [[EKEventStore alloc] init];
for (EKSource *source in eventStore.sources)
{
if (source.sourceType == EKSourceTypeCalDAV || source.sourceType == EKSourceTypeLocal)
{
NSLog(@"I found it");
break;
}
}
从这里开始,它无法返回任何来源.当我构建并运行应用程序时,没有任何请求可以访问默认日历.
总而言之,我得到一个空数组:
[eventStore.sources count]
即使我尝试添加事件而不创建新日历(使用
[eventStore defaultCalendarForNewEvents]
解决方法
我想访问EKEventStore有问题,检查权限尝试以下,
EKEventStore *eventStore = [[EKEventStore alloc] init];
if ([eventStore respondsToSelector:@selector(requestAccesstoEntityType:completion:)]){
[eventStore requestAccesstoEntityType:EKEntityTypeEvent completion:^(BOOL granted,NSError *error)
{
NSLog(@"GRANTED: %c",granted);
for (EKSource *source in eventStore.sources)
{
if (source.sourceType == EKSourceTypeCalDAV || source.sourceType == EKSourceTypeLocal)
{
NSLog(@"I found it");
break;
}
}
}];
}
希望它能帮助你..