проверка наличия GPS-оповещения - PullRequest
0 голосов
/ 23 февраля 2012

Я хочу проверить, есть ли уже предупреждение в моем окне или нет.Предупреждение о GPS (что-то вроде «ваше приложение» будет хотеть использовать ваше текущее местоположение с кнопками «Не разрешать» и «Разрешить»).Я хочу установить флаг, если это предупреждение присутствует на экране.Если кто-то знает, пожалуйста, помогите мне решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2012

Если вы разрабатываете для ios4.2 или новее , чем вы можете authorizationStatus из CLLocationManager класса.

Для этого вам нужно будет проверить переменную [CLLocationManager authorizationStatus], если еезначение kCLAuthorizationStatusNotDetermined, тогда будет показано предупреждение.

В iOS 5 или более поздних версиях - это один из вариантов, с помощью которого можно сбросить предупреждение о местоположении в этом случае, а также статус будет kCLAuthorizationStatusNotDetermined.Таким образом, если ваше приложение работает и пользователь переключается на настройку для сброса этого свойства, вам нужно будет внедрить следующий метод делегата CLLocationManagerDelegate.

- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status
{
    switch (status)
    {
        case kCLAuthorizationStatusNotDetermined:
            //If this is the case than alert will be shown
            break;
        case kCLAuthorizationStatusDenied:

            break;
        case kCLAuthorizationStatusRestricted:

            break;
        case kCLAuthorizationStatusAuthorized:

            break;
        default:
            break;
    }

}

Спасибо,

0 голосов
/ 23 февраля 2012
for (UIWindow* window in [UIApplication sharedApplication].windows) {
  NSArray* subviews = window.subviews;
  if ([subviews count] > 0)
    if ([[subviews objectAtIndex:0] isKindOfClass:[UIAlertView class]])
      return YES;
}
return NO;

это поможет ...

...