2014-11-03 4 views
0

Я работаю в рекурсивной функции ios для отправки сообщения «Мое приложение требуется запрос вашего местоположения» каждый раз, когда пользователь отключает свой GPS, тогда сообщение должно появиться снова с запросом его местоположения.Xamarin Recursive Location Request

Я просто использую:

public bool LocationServicesEnabled { 
    get {return CLLocationManager.LocationServicesEnabled;} 
} 
public bool IsAuthorized { 
    get {return CLAuthorizationStatus.Authorized == _authstatusLast;} 
} 

С этими функциями, первый вернуть меня в Сервисе Enable и второй один, если пользователь autorizate его.

Только сейчас, я могу сделать что-то подобное:

if(_locationServiceEnalbed && IsAuthorized){ 
      Manager = new LocationManager(); 
      Manager.StartLocationUpdates(); 
    } 

Но не просит меня мое местоположение снова. Как я могу снова отобразить сообщение, запрашивающее местоположение пользователя?

ответ

0

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

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

Однако более дружественный подход может отобразить сообщение, что эта функция вашего приложения отключена, пока они не предоставляют разрешения на использование GPS, и направить их в меню настроек, где он может быть повторно включен