Abra o Apple Maps e Iniciar o Percurso a partir da Localização Actual para Casa Imediatamente no iOS 6.0

StackOverflow https://stackoverflow.com//questions/12658826

  •  11-12-2019
  •  | 
  •  

Pergunta

Eu estou querendo criar um link no meu aplicativo que essencialmente vai ser rotulado de "Take Me Home".Quando pressionado, eu quero que ele abra o Apple Maps, rota a partir do local atual para casa e iniciar o turn by turn de navegação.

Eu encontrei este esquema, mas ele não faz tudo o que eu estava esperando:

http://maps.apple.com/maps?saddr=%f,%f&daddr=%f,%f
Foi útil?

Solução

Aqui está um código de trabalho, para a abertura de Mapas com rotas (incluindo a opção para mostrar o Google maps para o iOS5)

-(IBAction)showMapApp:(id)sender
{

CLLocationCoordinate2D coordinate = CLLocationCoordinate2DMake(self.location.latitude,self.location.longitude);

//create MKMapItem out of coordinates
MKPlacemark* placeMark = [[MKPlacemark alloc] initWithCoordinate:coordinate addressDictionary:nil];
MKMapItem* destination =  [[MKMapItem alloc] initWithPlacemark:placeMark];

if([destination respondsToSelector:@selector(openInMapsWithLaunchOptions:)])
{
    //using iOS6 native maps app
    if(_mode == 1)
    {
        [destination openInMapsWithLaunchOptions:@{MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeWalking}];

    }
    if(_mode == 2)
    {
        [destination openInMapsWithLaunchOptions:@{MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving}];

    }
    if(_mode == 3)
    {
        [destination openInMapsWithLaunchOptions:@{MKLaunchOptionsDirectionsModeKey:MKLaunchOptionsDirectionsModeDriving}];

    }

} else{

    //using iOS 5 which has the Google Maps application
    NSString* url = [NSString stringWithFormat: @"http://maps.google.com/maps?saddr=Current+Location&daddr=%f,%f", self.location.latitude, self.location.longitude];
    [[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];
}
}

Outras dicas

Use este Para mim o seu trabalho bem::

NSString* url = [NSString stringWithFormat: @"http://maps.apple.com/maps?saddr=44.521358,11.374080&daddr=44.518640,11.362665"];
[[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top