在 iOS 5 中使用当前位置和方向打开地图应用程序

Posted

技术标签:

【中文标题】在 iOS 5 中使用当前位置和方向打开地图应用程序【英文标题】:Opening Maps App with Current Location & Directions in iOS 5 【发布时间】:2012-06-12 05:15:40 【问题描述】:

您好,我尝试使用它打开具有当前位置的地图应用程序,并获取到我为方向输入的任何内容的方向。当我单击 iPhone 上的按钮时,没有任何反应,但它被单击了。我做错了什么?

NSString *url = [NSString stringWithFormat: @"http://maps.google.com/maps?saddr=Current+Location&daddr=%@ %@ %@ %@",
                     streetString , cityString, stateString, zipString];
    [[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];

【问题讨论】:

如果您在 Mobile Safari 中输入完全相同的 URL,是否会出现您想要的地图?另外,你为什么不想使用内置的 MapKit 框架呢?从您的应用切换到 Safari 可能不是您的用户希望看到的行为。 How to invoke iPhone Maps for Directions with Current Location as Start Address的可能重复 【参考方案1】:

确保您正在使用 stringByAddingPercentEscapesUsingEncoding 转义 NSString

NSString *url = [NSString stringWithFormat: @"http://maps.google.com/mapssaddr=Current+Location&daddr=%@ %@ %@ %@", streetString , cityString, stateString, zipString];
url = [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL: [NSURL URLWithString: url]];

【讨论】:

以上是关于在 iOS 5 中使用当前位置和方向打开地图应用程序的主要内容,如果未能解决你的问题,请参考以下文章

打开android原生谷歌地图应用程序获取从当前位置开始的方向

在反应原生中链接谷歌地图应用程序时如何呈现方向?

如何为 iOS 应用程序构建内部地图导航?

室内地图 - 如何使用室内地图跟踪用户位置和方向 - Android 和 IOS [关闭]

在 Xcode 中打开原生谷歌地图

如何在iphone的地图中显示从当前位置到目的地位置的方向