在iOS Apple Maps应用程序中,选择目标时,Apple Maps为您提供了使用任何已安装的映射应用程序的选项。
苹果 map 是如何做到这一点的?有没有办法在我自己的应用程序中实现类似的功能?
一种方法是获取最流行的导航应用程序列表,检查它们是否支持 url 方案,并使用以下方法检查是否安装了其中的任何一个:
if ([[UIApplication sharedApplication] canOpenURL:url]) {
// mapping app is installed ...
}
但是,这并不可靠,因为 url 方案可能会改变,而且一些 map 导航应用程序不支持 url 方案。
提前致谢。
最佳答案
这是您要找的吗?
哎呀,可能不是您要找的东西,但这就是 Apple Maps 的做法。也许在该文档的某处(或深入挖掘)您可能会找到一种方法。
来自 Apple 的文档:
iOS apps that are able to display point-to-point directions can register as routing apps and make those directions available to Maps and other apps.
关于ios - 自动检测所有已安装的 map 导航应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44347120/