自动检测所有已安装的地图导航应用程序

5
在iOS苹果地图应用程序中,当选择目的地时,苹果地图会提供选项以使用任何已安装的映射应用程序来获取逐步导航指示。
苹果地图是如何做到这一点的?是否有办法在我的应用程序中实现类似的功能?
一种方法是获取最流行的导航应用程序列表,检查它们是否支持URL方案,并通过使用以下命令检查它们是否已安装:
if ([[UIApplication sharedApplication] canOpenURL:url]) {
        // mapping app is installed ...
}

然而,这并不可靠,因为URL方案可能会改变,而且一些导航应用程序可能不支持URL方案。提前致谢。
1个回答

1

这是你在寻找的吗?

哎呀,可能不是你要找的,但这就是苹果地图的做法。也许在那份文档中(或深入挖掘其中)你可以找到一种方法。

来自苹果文档:

能够显示点对点方向的iOS应用程序可以注册为路由应用程序,并使这些方向可用于地图和其他应用程序。

https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/AddingCapabilities/AddingCapabilities.html#//apple_ref/doc/uid/TP40012582-CH26-SW9


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接