0

Что мне нужно, отправьте информацию lat и lng из моего собственного приложения, используя делегирование листинга в приложении карты google и с предоставленными параметрами lat lng, карта google может нарисовать контактный (маркер)ios actionsheet вызывать внешнее приложение карты google и маркер вывода

вот мой код

-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { 
    //coordinates for the place we want to display 
    CLLocationCoordinate2D mosqueLocation = CLLocationCoordinate2DMake(lat,lng); 
    if (buttonIndex==0) { 
     //Apple Maps, using the MKMapItem class 
     MKPlacemark *placemark = [[MKPlacemark alloc] initWithCoordinate:mosqueLocation addressDictionary:nil]; 
     MKMapItem *item = [[MKMapItem alloc] initWithPlacemark:placemark]; 
     item.name = navBarTitle.title; 
     [item openInMapsWithLaunchOptions:nil]; 
    } else if (buttonIndex==1) { 
     //Google Maps 
     //construct a URL using the comgooglemaps schema 
     NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"comgooglemaps://?center=%f,%f",mosqueLocation.latitude,mosqueLocation.longitude]]; 
     if (![[UIApplication sharedApplication] canOpenURL:url]) { 
      NSLog(@"Google Maps app is not installed"); 
       } else { 
      [[UIApplication sharedApplication] openURL:url]; 
     } 
    } 
} 

как вы можете видеть, у меня есть яблоко карта с красным штифтом нарисовали успешно, но я не знаю, как сделать такой же штырь на карте Google с помощью comgooglemap urlscheme.

лат и LNG при условии, просто нужно отправить на Google карте приложение, чтобы сделать ничью, любые предложения будут очень полезны, пример кода даже лучше, благодаря

+0

FYI - этот вопрос не имеет ничего общего с 'UIActionSheet'. Вопрос в том, чтобы нарисовать булавку на картах Google. – rmaddy

+0

ye, любой пример был бы полезен – seph

+0

Еще один момент - почему вы проверяете, можете ли вы открыть URL-адрес «comgooglemaps» в методе делегата? Ваш код должен проверить, что даже предлагая кнопку в листе действий – rmaddy

ответ

4

Добавить поиск в координаты, чтобы показать маркер на что местоположение:

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"comgooglemaps://"]]) { 
    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"comgooglemaps://?center=%f,%f&q=%f,%f",mosqueLocation.latitude,mosqueLocation.longitude, mosqueLocation.latitude,mosqueLocation.longitude]]; 
    [[UIApplication sharedApplication] openURL:url]; 
} else { 
    NSLog(@"Can't use comgooglemaps://"); 
} 
+0

потрясающее решение! работает! – seph

+0

@Cornelius мы также можем написать название аннотации? – erdemgc

+0

@erdemgc нет, я так не думаю. Ниже приведена документация по схеме URL-адресов Google Maps: https://developers.google.com/maps/documentation/ios/urlscheme. – Cornelius

Смежные вопросы