gpt4 book ai didi

iOS : Open maps from my custom app opens Google Maps in Safari instead of Google Maps app

转载 作者:行者123 更新时间:2023-11-29 00:17:00 26 4
gpt4 key购买 nike

我的自定义应用程序的其中一个页面上有一张 map 。如果您点击该 map (显示患者的位置),它应该会打开 Google map 应用程序,并显示从您所在的位置到该患者位置的方向。为此,我使用:

http://maps.google.com/maps?saddr=patientlocation&daddr=myaddress[其中患者位置我的地址是长/纬度]

在大多数手机上,它都能按预期工作。它会打开 Google map 应用程序并加载路线。

但由于我不知道的原因,有些手机会尝试打开 Safari 并访问 Google map 网站,即使我的 Google map 应用已安装且是最新的。这是一个问题,因为当您不在实际应用程序中时,导航效果不太好。我尝试过重新启动手机、卸载/重新安装我的应用程序、卸载/重新安装 Google map 应用程序,但没有任何效果..

我已通过电子邮件将该链接发送到一些手机。如果我点击 native iOS 电子邮件应用程序中的链接,它会打开 Safari 并加载 Google map 网站。如果我点击 Gmail 应用中的链接,它会打开 Google map 应用。

我对 Apple/iOS 如何处理这个问题有点迷惑。

有人可以帮忙吗?谢谢!

最佳答案

首先确保您在 Info 中的 LSApplicationQueriesSchemes 中添加了 comgooglemaps(强制)和 googlechromes(可选) .plist.

enter image description here

现在要打开加载了路线的 googlemaps,请在您的操作中调用以下函数。

我已经将虚拟纬度、经度分别设为 28.5239008、77.0846414,并保持 saddr 和 daddr 相同,以便从当前位置开始走路线。您可以根据需要提供自己的 saddr 和 daddr。

func openGoogleMaps() {
if UIApplication.shared.canOpenURL(URL(string:"comgooglemaps://")!) {
UIApplication.shared.open(URL(string:
"comgooglemaps://?saddr=&daddr=28.5239008,77.0846414&zoom=14&directionsmode=driving")!, options: [:]) { (completed:Bool) in
print("Opened googlemaps")
}
} else {
print("Can't use google maps. Opening browser");
if UIApplication.shared.canOpenURL(URL(string: "https://maps.google.com/?saddr=&daddr=28.5239008,77.0846414")!) {
UIApplication.shared.open(URL(string: "https://maps.google.com/?saddr=&daddr=28.5239008,77.0846414")!, options: [:], completionHandler: nil)
}
}
}

如果您的设备中没有 GoogleMaps 应用程序,它将重定向到浏览器。如果您也想在浏览器中加载路线,请在出现提示时向浏览器提供您的位置权限。

关于iOS : Open maps from my custom app opens Google Maps in Safari instead of Google Maps app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45107814/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com