2016-10-01 10 views
0

должны и магазин мероприятия requestAccess(to:completion:) назватьЛучшая практика, когда для вызова requestAccess на EKEventStore

  • как можно раньше (например, в application(_:didFinishLaunchingWithOptions:)

  • только перед EKEventSource следует использовать в первый раз?

ли компания Apple рекомендует тот или иной вариант (для прошивки 10)?

ответ

0

Зачем наплевать на пользователя раньше, чем это необходимо?

Пользователь будет более комфортным, если запрос на получение разрешения приходит, когда они на самом деле пытаются сделать что-то, что им известно, требует доступа к хранилищу событий.

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

А что, если вашему приложению требуется доступ к нескольким источникам, таким как камера, фотобиблиотека, контакты и события? Было бы ужасно просто называть пользователя снова и снова для всех из них. Спросите только, когда источник действительно нужен, и пользователь, вероятно, полностью понимает, что действие, которое они только что предприняли (например, сфотографировать), требует определенного разрешения.

+0

У меня такая же догадка. Вы уверены, что Apple не против (по некоторым другим причинам)? – Drux

+0

У меня есть приложение, которое требует большого количества разных разрешений в зависимости от того, что делает пользователь, и я жду, пока в первую очередь не потребуется запрашивать разрешение. Яблоко было в порядке с этим в течение многих лет. – rmaddy

+0

Хорошо, это достаточно хорошо для меня. Спасибо. – Drux