Squeak.ru - шаблоны программирования

Поиск и отображение местоположений компаний в MKMapView

Я пытаюсь найти способ найти компанию, например «продуктовые магазины», и отобразить их на карте Google вокруг текущего местоположения пользователя. Раньше это было довольно просто со старым URL-стилем запуска местоположения карты яблока, но я не могу понять, как это сделать с помощью MKMapView. Я понимаю, что мне нужно использовать классы MKAnnotations, но моя проблема заключается в поиске данных. Я попытался подключить приведенный ниже URL-адрес, чтобы получить информацию из Google, но размер данных кажется слишком большим.

http://maps.google.com/maps?q=grocery&mrt=yp&sll=37.769561,-122.412844&z=14&output=kml

Есть ли простой способ просто установить свойство, которое сообщает MKMapView искать ключевое слово и отображать все соответствующие компании в моем текущем местоположении? Или кто-нибудь знает, как получить эту информацию из гугла?


Ответы:


1

KML-файл, возвращаемый в результате этого поиска, содержит много информации. MKMapView не имеет возможности запрашивать Google, поэтому у вас есть несколько вариантов:

  1. Используйте данные, полученные из этого запроса, с NSXMLParser и извлекайте только то, что вас интересует (возможно, заголовок, широту, долготу). KML - это просто версия XML.

  2. Просмотрите документы Google, чтобы найти вызов, который дает более легкий формат данных. Вы можете изменить формат URL-адреса на json, но информация в нем останется прежней.

Однако файл всего около 50 КБ. По моему опыту, загрузка и анализ файла XML размером 50 КБ занимает около 5 секунд через 3G.

Изменить: Только что нашел это, подумал, что может вас заинтересовать:

Многие люди передают данные в и из веб-сервисов на iPhone через JSON. Это намного лучший способ, чем использование XML. Парсинг XML на iPhone просто отстой. Это слишком сложно и запутанно. В настоящее время приложение YouVersion, Библия, использует JSON для передачи всего назад и вперед с сервера, и все это отлично работает.

Если у вас действительно нет выбора, по крайней мере, используйте JSON. Вот отличная библиотека для JSON, которую я сейчас использую http://code.google.com/p/json-framework/

Отсюда: http://samsoff.es/post/iphone-plist-tutorial/

Вы можете получить JSON, изменив строку запроса на это:

http://maps.google.com/maps?q=grocery&mrt=yp&sll=37.769561,-122.412844&z=14&output=json

Другое изменение

Вот еще одна библиотека JSON под названием Touch JSON. Я использовал этот, и его довольно легко реализовать.

https://github.com/acf/TouchJSON

29.10.2009

2

Вместо использования строки maps?q= лучше использовать официальный API здесь: http://code.google.com/apis/maps/documentation/geocoding/

Ответы API в формате JSON работают с анализатором JSON http://code.google.com/p/json-framework/ лучше (другой URL-адрес не возвращает совместимый JSON и не является стандартным API, поэтому может быть больше подвержен изменениям).

12.03.2010
Новые материалы

Угловая структура архитектуры
Обратите внимание, что эта статья устарела, я решил создать новую с лучшей структурой и с учетом автономных компонентов: https://medium.com/@marekpanti/angular-standalone-architecture-b645edd0d54a..

«Данные, которые большинство людей используют для обучения своих моделей искусственного интеллекта, поставляются со встроенным…
Первоначально опубликовано HalkTalks: https://hacktown.com.br/blog/blog/os-dados-que-a-maioria-das-pessoas-usa-para-treinar-seus-modelos-de-inteligencia-artificial- ja-vem-com-um-vies-embutido/..

Сильный ИИ против слабого ИИ: различия парадигм искусственного интеллекта
В последние годы изучению и развитию искусственного интеллекта (ИИ) уделяется большое внимание и прогресс. Сильный ИИ и Слабый ИИ — две основные парадигмы в области искусственного интеллекта...

Правильный способ добавить Firebase в ваш проект React с помощью React Hooks
React + Firebase - это мощная комбинация для быстрого и безопасного создания приложений, от проверки концепции до массового производства. Раньше (знаете, несколько месяцев назад) добавление..

Создайте API с помощью Python FastAPI
Создание API с помощью Python становится очень простым при использовании пакета FastAPI. После установки и импорта вы можете создать приложение FastAPI и указать несколько конечных точек. Каждой..

Веселье с прокси-сервером JavaScript
Прокси-серверы JavaScript — это чистый сахар, если вы хотите создать некоторую общую логику в своих приложениях, чтобы облегчить себе жизнь. Вот один пример: Связь клиент-сервер Мы..

Получить бесплатный хостинг для разработчиков | Разместите свой сайт за несколько шагов 🔥
Статические веб-сайты — это веб-страницы с фиксированным содержанием и его постоянным содержанием. Но теперь статические сайты также обрабатывают динамические данные с помощью API и запросов...