因此,今天我们收到一张罚单,显示我们的应用程序没有打开de Google Maps,而是在我们的应用程序中打开另一个应用程序JabJobs,我们检查是否安装了GoogleMaps,如下所示:
(UIApplication.shared.canOpenURL(NSURL(string:"comgooglemaps://")! as URL))
因此,如果安装了GoogleMaps,没有问题,但如果卸载GoogleMaps应用程序并安装JabJobs,则
UIApplication.shared.canOpenURL
仍然返回真值,当我们继续UIApplication.shared.openURL(NSURL(string:
"comgooglemaps://?saddr=&daddr=\(place.lat),\(place.lng)&directionsmode=driving")! as URL)
系统弹出窗口显示“MyApp”想要打开“JabJobs”
第一季度。是否有可能另一个应用程序响应与googleApp相同的URL?
问题2。如果上面的代码不起作用,我如何检查是否安装了GoogleMaps?
最佳答案
当然,这是可能的,你可以回应任何网址方案,如果你注册的应用程序。
从https://developers.google.com/maps/documentation/urls/ios-urlscheme中,我可以看到Google地图有更多的url方案,例如comgooglemapsurl://
。你可以检查这两个方案是否可用,如果不可用,那么它可能是其他应用程序,除非它们支持所有这些方案。。。你不能什么都不做,但正如我看到的,JabJobs
不支持comgooglemapsurl://
方案。