CLGeocoder reverseGeocodeLocation не работает для смоделированного местоположения

Я включил симуляцию местоположения из схемы проверки XCode Allow Location Simulation и выбрал местоположение образца из раскрывающегося списка - New York, NY, USA.

Это мой код для получения информации о месте из местоположения. currentLocation получено из CLLocationManager, и я вижу, что значение точно получено как NewYork местоположение.

- (void) fetchPlacemarks: (CLLocation*) currentLocation
{
  // Reverse-geolocate the current location
  CLGeocoder* geoCoder = [[CLGeocoder alloc] init];
  [geoCoder reverseGeocodeLocation: currentLocation
                 completionHandler: ^(NSArray<CLPlacemark*>* placemarks,
                                      NSError*               error)
   {
      // getting error "The operation couldn’t be completed. (kCLErrorDomain error 8.)"
   }
}

Я тестировал симулятор и устройство с реальным местоположением (не симулируя), но они работают как шарм. Только это не работает в устройстве с имитацией местоположения. Что здесь не так?


person Smart Solutions    schedule 31.01.2018    source источник


Ответы (1)


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

person Artyom Vlasenko    schedule 31.01.2018
comment
да. Я запускаю приложение в режиме отладки. Я получаю свое текущее местоположение точно так же, как смоделированное местоположение (Нью-Йорк). - person Smart Solutions; 31.01.2018
comment
Установите местоположение по умолчанию, отредактировав схему (Продукт->Схема->Редактировать схему->Выполнить(левая панель)->Параметры (вкладка)->Отметьте «Разрешить симулятор местоположения») =>Выберите местоположение из раскрывающегося списка =>Отладка тестового проекта на устройстве => Отсоедините кабель для передачи данных, а затем начните тестирование нужного приложения. - person Artyom Vlasenko; 31.01.2018
comment
Нет, это не ответ. - person Smart Solutions; 31.01.2018