ios - 如何通过传递地址打开 Apple Maps 行车路线

标签 ios swift mapkit apple-maps

我正在尝试实现一个功能,通过传递实际地址来打开 Apple Map 应用程序的行车路线屏幕。

地址不只是随机地址,而是大部分在 Apple map 上注册和搜索的公司地址。因此,通过传递地址,它应该匹配并正确显示该企业的方向,而不是指向 map 上的未知注释。当我直接传递经度和纬度时会发生这种情况,所以我不想使用 geocodeAddressString() 将地址转换为地理坐标。

我怎样才能实现它?

最佳答案

只需使用 Apple Maps API。如果您可以通过在 Apple Maps 中提示其名称找到一家企业,则可以通过 API 找到它。在您的情况下,正确的参数是 daddr,如下所示:

http://maps.apple.com/?daddr=1+Infinite+Loop,+Cupertino,+CA

您可以组合多个参数,例如您的起始位置:

http://maps.apple.com/?saddr=1024+Market+St,+San+Francisco,+CA&daddr=1+Infinite+Loop,+Cupertino,+CA/p>

您可以找到支持的参数列表 here .

记得通过 UIApplication.shared().open(url: URL, options: [String: AnyObject], completionHandler: ((Bool) -> Void)?) 打开 URL - 在iOS 10 - 或 UIApplication.shared.open(url: URL)

关于ios - 如何通过传递地址打开 Apple Maps 行车路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41252512/

相关文章:

ios MapKit 的注释描述在启动时可见,但在点击时不可见

c# - 检查 WIFI 在 Xamarin iOS 上是否可用

ios - UILabel 文本截尾点颜色

ios - Swift: TableView 父类(super class)错误

Swift 3 全局函数。我可以这样做吗?

ios - 在 iOS 11.0.3 中插入​​注释 View 失败

ios - 调整 Apple MKMapView 标签的大小

ios - 使用 AVCaptureSession 以编程方式捕获最高分辨率图像

ios - 夏令时月末日期问题

swift - 使用 .obj 文件导出纹理