Для разрешения доступа, как расположение, нам нужен экземпляр менеджера, чтобы показать строку доступа местоположения (см: http://nshipster.com/core-location-in-ios-8/). Эти экземпляры могут использоваться только для запроса доступа (если вы хотите, чтобы они запрашивали только доступ), а в будущем, если вы хотите получить доступ к ресурсу или данным, мы можем снова использовать эти экземпляры менеджера.
Для примера:
менеджер CLLocation должен быть использован для доступа местоположение пользователя, так что в первом экране, если вы просто хотите, чтобы спросить разрешение местоположения, то можно использовать следующий код
CLLocationManager().requestAlwaysAuthorization() //Requesting always permission
И если вы хотите местоположение пользователя доступа в другом окне вы можете получить доступ к нему, как:
locationManager.startUpdatingLocation() // use delegate methods to handle the values.
так что это своего рода менеджеры могут быть начальная используется только для запроса разрешения, а затем при необходимости может быть повторно инициализирован.
Вот статья о лучшем способе спросить разрешения местоположения (то же самое может быть применена для других типов запросов разрешений) https://techcrunch.com/2014/04/04/the-right-way-to-ask-users-for-ios-permissions/
Почему вы не хотите делать инициализацию менеджеров ?. Могли бы, пожалуйста, добавить более подробную информацию. –
Я хочу инициализировать их в разных viewController – DCDC
Но вам нужно, чтобы менеджеры запрашивали разрешение пользователя. без экземпляра менеджера вы не можете запрашивать разрешения. –