Cuando toco el botón "Abrir en Google Maps" en mi aplicación, quiero que mi aplicación navegue a la aplicación de mapas de Google, abra la dirección que especifiqué y le ponga un marcador.

Aquí está mi código para ese propósito:

UIAlertAction* googleMaps = [UIAlertAction actionWithTitle:NSLocalizedString(@"google_maps", @"Google Maps") style:UIAlertActionStyleDefault handler:^(UIAlertAction * action) {
    NSString *customURL = @"comgooglemaps://?center=41.039400,28.994583&zoom=16&markers=size:mid%7Ccolor:0xff0000%7Clabel:1%7CVodafone+Arena+Stadyumu";
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:customURL]];
}];

Cuando toco el botón, navega correctamente a una ubicación específica. Sin embargo, no le pone un marcador. ¿Hay una manera de lograr esto?

Gracias :)

3
Emrah Akgül 27 ene. 2016 a las 10:40

2 respuestas

La mejor respuesta

Según el documento de Google, el formato especificado en su código es incorrecto: -

Ejemplo:-

comgooglemaps://?q=Vodafone+Arena+Stadyumu&center=41.039400,28.994583&zoom=15&views=transit

Esto muestra el marcador en el centro del mapa.

2
Vizllx 27 ene. 2016 a las 07:53

Con el nuevo formato de esquema de URL de Google Maps, no podemos agregar un marcador directamente, pero hay una solución alternativa para esto, puede pasar su ubicación (lat-long y nombre) como consulta de búsqueda desde la URL y los mapas mostrarán un marcador como se muestra mientras busca así:

comgooglemaps://?q=Pizza&center=37.759748,-122.427135
1
Nikhil Manapure 27 mar. 2017 a las 12:22