加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 在Xcode中打开原生谷歌地图

发布时间:2020-12-15 01:45:34 所属栏目:百科 来源:网络整理
导读:嗨我有一个使用地图和位置的iPhone应用程序. 我希望用户能够按下一个按钮,该按钮可以转向该位置.我知道我不允许在应用程序中执行此操作,但我想知道是否有人可以告诉我是否可以链接到本地??谷歌地图应用程序,该应用程序将从用户当前位置输入到该位置的路线.
嗨我有一个使用地图和位置的iPhone应用程序.

我希望用户能够按下一个按钮,该按钮可以转向该位置.我知道我不允许在应用程序中执行此操作,但我想知道是否有人可以告诉我是否可以链接到本地??谷歌地图应用程序,该应用程序将从用户当前位置输入到该位置的路线.

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

任何帮助,将不胜感激.

谢谢

解决方法

当然,这是可能的 – 你只需告诉系统打开一个谷歌地图链接,其中包含开始和结束地址集的参数.

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

07000

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

以下是我编写的一些代码,它将把用户从当前位置带到特定位置(在我的情况下是硬编码的).

这是核心位置委托方法,一旦建立了它们的位置就会调用它.

- (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];
    }
}

要设置这一切,您可以将一个位置管理器的属性添加到您的控制器,然后当您想要设置它时(比如在viewDidLoad中)将其初始化为:

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

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

希望有所帮助

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读