Установить симулятор местоположения City/GPX во время выполнения - программирование

Установить симулятор местоположения City/GPX во время выполнения

Есть ли способ программно изменить город симулятора местоположения во время выполнения? Например, это позволит тестировать моделирование Лондона или Токио.

На следующем рисунке показано, как вручную переключаться между местоположениями (файлы GPX). Как я могу достичь этого результата программно во время работы приложения?

введите описание изображения здесь

4b9b3361

Ответ 1

Альтернативный способ установки местоположения - это "выбор" класса "CLLocationManager". В obj-c,

+(void) load {
   // replace 'location' with 'custom_location' method
 }

Затем реализуйте метод custom_location с любым местоположением, которое вы хотите установить, просто изменив переменные "kMockedLatitude" и "kMockedLongitude".

//Portland, USA
CLLocationDegrees kMockedLatitude = 45.52306;
CLLocationDegrees kMockedLongitude = -122.67648;

-(CLLocation *)custom_location  
{  
   return [[CLLocation alloc] initWithLatitude:kMockedLatitude longitude:kMockedLongitude];
}

Это будет работать даже на устройстве iOS.