it-roy-ru.com

расположение iOS Simulator не работает

Я тестирую приложение для iOS с симулятором в xCode 5.x. Корневое представление - это UIWebView, который загружает внешний URL-адрес. Внешняя страница запрашивает информацию о геолокации, но я не могу заставить ее работать в симуляторе. Появится подсказка для предоставления информации о местоположении, но внешняя страница не сможет их получить.

  • Я попытался установить пользовательское местоположение в Debug> Location ... но ничего не меняется.
  • Я пробовал несколько устройств в симуляторе, таких как iPhone 3.5 и iPad.
  • Если я загружаю приложение в реальное устройство, оно работает нормально. 

Что мне не хватает?

-e

13
emersonthis

+1 к @Farhan за полезный совет. Вот что решило мою проблему:

Есть два места, где устанавливается местоположение симулятора:

  • Схема (см. Ответ Фархана).
  • В симуляторе под Debug> Location

Я играл с настройкой местоположения по умолчанию в схеме, и она не работала. В настоящее время у меня установлено значение «Нет», что неясно, означает ли это, что данные о местоположении не предоставлены или по умолчанию используется расположение хост-машины.

В симуляторе в разделе «Отладка> Местоположение» также было установлено значение «Нет». Я попытался использовать некоторые из пресетов, но это все равно не сработало. Что в итоге заставило его начать работать для меня, я изменил его на «Пользовательское местоположение» и ввел широту и долготу того места, где я нахожусь. Только тогда он начал работать правильно.

Этот пост имеет несколько полезных скриншотов того, что я описываю.

Это удобный инструмент для получения широты и долготы.

Update Решение, которое я описал выше, все еще работает, но в проекте, над которым я сейчас работаю, похоже, не сохраняются настройки, поэтому я должен продолжать выбирать свое собственное местоположение. Это становится утомительным, поэтому я создал новое предустановленное местоположение, используя файл gpx. Оказывается, это действительно легко. Просто используйте этот инструмент , чтобы сгенерировать файл и загрузить его. Затем при редактировании схемы в разделе «Местоположение по умолчанию» выберите «Добавить файл GPX в проект ...» (и выберите загруженный файл). Вот и все. По какой-то причине этот параметр, кажется, запоминается при повторном запуске симулятора.

15
emersonthis

Возможно, вам придется включить его для вашей конкретной сборки. Для этого. 

В вашем Xcode перейдите в Product> Scheme> Edit Scheme ... 2 - В Run имя проекта/Debug

Выберите «Запустить XXXX.app/Debug»> выберите «Allow Location Simulation» и выберите местоположение по умолчанию.

10
Farhan Patel

У меня была такая же проблема - попробуйте это: 

Проверьте настройки местоположения в симуляторе. Нажмите CMD-Shift-H для выхода из приложения, перейдите к Settings->Privacy и выберите 'While Using the App'. Вам также необходимо установить ключ NSLocationWhenInUseUsageDescription в Info.plist.

6
Erlend

Удалить приложение из симулятора Установить координаты из Debug/Location/Custom Location После аппаратного обеспечения/перезагрузки симулятора

1
erdikanik

Для меня проблема была в том, что «Debug Executable» не проверялся на схеме, которую я запускал. Как только я включил это, все снова начало нормально работать с симуляцией местоположения.

0
Andrew K

Xcode поддерживает файлы GPX, но важно отметить, что файл GPX должен содержать waypoints . Точки трассы не работают, поэтому убедитесь, что в вашем GPX используются только теги "wpt".

0
Karsten