2013-06-06 6 views
0

У меня есть проблема с EKEventEditViewController, когда я добавляю какое-либо событие через свое приложение. Когда я установлю приложение в первый раз, я не могу добавить событие, и проблема отсутствия события календаря установлена ​​с «Error Domain = EKErrorDomain Code = 1». Он будет появляться только в том случае, если приложение открывается впервые с использованием другого идентификатора пакета. Он будет отлично работать, когда я установлю приложение в следующий раз, и я могу добавить событие. Я также проверил условие requestAccessToEntityType: завершение: перед добавлением события. Я застрял в этой точке и пробовал каждый метод, который я нашел при поиске по Google.Нет события календаря задан вопрос

-Спасибо заранее.

ответ

0

Впервые, когда приложение просят разрешения на приглашение не блокирует приложение, и правильный способ, чтобы добавить событие внутри блока

Здесь завершенности один пример:

EKEventStore *eventStore = [[EKEventStore alloc] init]; 
[eventStore requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) { 
    dispatch_async(dispatch_get_main_queue(), ^{ 
     // Event creation code HERE!!! (for the first run only) this block will not be executed for the next runs 
    }); 
}]; 

Скорее всего, ваш код создания события после requestAccessToEntityType функция, а не внутри блока завершения.

Невозможно создать событие в первый раз, поскольку доступ разрешен только при выполнении блока завершения.

И как только вы предоставили доступ для следующего прохода, доступ разрешен, и все работает должным образом.