Как я могу запустить приложение для iPhone Google Maps из своего собственного исходного приложения?

Для более сложных классов вы можете рассмотреть инструмент jsonpickle :

jsonpickle - это библиотека Python для сериализации и десериализации сложных объектов Python в JSON и из JSON.

Стандартные библиотеки Python для кодирования Python в JSON, такие как json, simplejson и demjson stdlib, могут обрабатывать только примитивы Python, которые имеют прямой эквивалент JSON (например, dicts, lists, string, ints и т. д.). ). jsonpickle строит поверх этих библиотек и позволяет сериализовать более сложные структуры данных в JSON. jsonpickle очень настраивается и расширяется, позволяя пользователю выбирать бэкэнд JSON и добавлять дополнительные бэкэнды.

blockquote>

(jsonpickle on PyPi)

68
задан Vadim Kotov 18 September 2017 в 11:18
поделиться

8 ответов

Для iOS 5.1.1 и ниже, используйте openURL метод UIApplication. Это выполнит нормальный iPhone волшебная реинтерпретация URL. так

[someUIApplication openURL:[NSURL URLWithString:@"http://maps.google.com/maps?q=London"]]

должен вызвать приложение карт Google.

From iOS 6, Вы будете вызов Apple's собственное приложение Карт. Для этого настройте MKMapItem объект с местоположением, которое Вы хотите отобразить, и затем отправить ему эти openInMapsWithLaunchOptions сообщение. Для запуска в текущем местоположении попробуйте:

[[MKMapItem mapItemForCurrentLocation] openInMapsWithLaunchOptions:nil];

Вы должны будете быть связаны против MapKit для этого (и он запросит доступ местоположения, я верю).

65
ответ дан Adam Wright 24 November 2019 в 14:08
поделиться

При необходимости в большей гибкости, чем Формат ссылки Google дает Вам, или требуется встроить карту в приложение вместо того, чтобы запуститься, приложение карты вот пример .

Это даже предоставит Вас исходный код, чтобы сделать все встраивание.

0
ответ дан Simon 24 November 2019 в 14:08
поделиться

Для телефонного вопроса Вы тестируете на средстве моделирования? Это только работает над самим устройством.

кроме того, openURL возвращает bool, который можно использовать для проверки устройство при работе поддержек функциональность. Например, Вы не можете сделать запросы к iPod Touch :-)

2
ответ дан Jane Sales 24 November 2019 в 14:08
поделиться

Для открытия Google Maps в определенных координатах попробуйте этот код:

NSString *latlong = @"-56.568545,1.256281";
NSString *url = [NSString stringWithFormat: @"http://maps.google.com/maps?ll=%@",
[latlong stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]];

можно заменить строку latlong текущим местоположением от CoreLocation.

можно также указать уровень масштабирования, с помощью флага (”z“). Значения 1-19. Вот пример:

[[UIApplication sharedApplication] openURL: [NSURL URLWithString:@" http://maps.google.com/maps?z=8 "]];

29
ответ дан prakash 24 November 2019 в 14:08
поделиться

Точно. Код, что необходимо достигнуть этого, является чем-то как этот:

UIApplication *app = [UIApplication sharedApplication];
[app openURL:[NSURL URLWithString: @"http://maps.google.com/maps?q=London"]];

с тех пор согласно документации , UIApplication только доступен в Делегате Приложения, если Вы не называете sharedApplication.

31
ответ дан MonsieurDart 24 November 2019 в 14:08
поделиться

Вот ссылка на схему URL-адресов Apple для ссылок на карту: https://developer.apple.com/library/archive/featuredarticles/iPhoneURLScheme_Reference/MapLinks/MapLinks.html

Правила создания действительной ссылки на карту следующие:

  • Домен должен быть google.com и подобласть должна быть map или ditu.
  • Путь должен быть /, / maps, / local, или / m, если запрос содержит site в качестве ключа и local в качестве значения.
  • Путь не может быть /maps/*.
  • Все параметры должны поддерживаться. См. Список поддерживаемых параметров ** в таблице 1.
  • Параметр не может иметь значение q = *, если значение является URL-адресом (поэтому KML не используется).
  • Параметры не могут включать view = text или dirflg = r .

** Список поддерживаемых параметров см. По ссылке выше.

13
ответ дан 24 November 2019 в 14:08
поделиться

"g" заменить на "q"

[[UIApplication sharedApplication] openURL:[NSURL URLWithString: @"http://maps.google.com/maps?q=London"]]
1
ответ дан 24 November 2019 в 14:08
поделиться

Если у вас все еще есть проблемы, это видео показывает, как получить "Мои карты" из Google, чтобы они отображались на iphone. Затем вы можете взять ссылку и отправить ее кому угодно и оно работает.

http://www.youtube.com/watch?v=Xo5tPjsFBX4

1
ответ дан 24 November 2019 в 14:08
поделиться