在Xcode中打开本地谷歌地图

嗨,我有一个使用地图和位置的iPhone应用程序。

我希望用户能够按下一个button,该button将轮到该位置的转向。 我明白,我不允许在应用程序中这样做,但我想知道是否有人可以告诉我,如果有可能做一个链接到本地​​谷歌地图应用程序,将从用户当前位置进入方向的位置。

如果有可能你能告诉我怎么样?

任何帮助,将不胜感激。

谢谢

当然,这是可能的 – 你只需告诉系统打开谷歌地图链接,设置开始和结束地址的参数。

您可能想尝试使用以下Google地图url:

http://maps.google.com/maps?saddr=x,y&daddr=x,y

所以你可以看到两个参数是saddr (起始地址)和daddr (目标地址)。 您将这些设置为由逗号分隔的一对坐标。

下面是我写的一些代码,将用户从当前位置移动到特定的位置(在我的情况下是硬编码的)。

这是核心位置委托方法,一旦他们的位置已经build立就被调用。

 - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation { if (newLocation.horizontalAccuracy == oldLocation.horizontalAccuracy) { [self.locationManager stopUpdatingLocation]; CLLocationCoordinate2D coords = newLocation.coordinate; NSString *stringURL = [NSString stringWithFormat:@"http://maps.google.com/maps?saddr=%g,%g&daddr=50.967222,-2.153611", coords.latitude, coords.longitude]; NSURL *url = [NSURL URLWithString:stringURL]; [[UIApplication sharedApplication] openURL:url]; } } 

要设置这一切,你可以添加一个位置pipe理器的属性到你的控制器,然后当你想要设置它(比如说在viewDidLoad ),就像这样:

 self.locationManager = [[CLLocationManager alloc] init]; self.locationManager.delegate = self; [self.locationManager startUpdatingLocation]; 

调用[[UIApplication sharedApplication] openUrl:url]; 会发送到系统的URL处理程序,它会检测到它是一个谷歌地图链接,并在地图上打开它。

希望有所帮助