如何通过传递地址打开Apple Maps驾驶方向

and*_*ift 3 mapkit ios apple-maps swift

我正在尝试通过传递实际地址来实现打开Apple Map应用程序的行车方向屏幕的功能.

地址不仅仅是随机地址,而是商业地址,这些地址主要在Apple地图上注册和搜索.因此,通过传递地址,它应该匹配并正确显示该业务的方向,而不是指向地图上的未知注释.当我直接传递经度和纬度时会发生这种情况,因此我不想使用geocodeAddressString()将地址转换为地理协调.

我怎样才能实现它?

Nic*_*chi 7

只需使用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

您可以在此处找到支持的参数列表.

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