无法在 iOS 应用程序中启动本机 Google 地图 - 改为打开 Safari
Unable to launch native Google Maps within the iOS app - Safari opens instead
我无法从 iPhone 应用程序中启动 Google 地图应用程序。当应用程序安装在设备上时,代码会在 Safari 中启动 Web 版本的 Google 地图。另一方面,Apple Maps 本机应用程序成功启动。
这是我使用的代码:
@IBAction func openMap(_ sender: Any) {
let lat: Double = -37.8218956215849
let long: Double = 144.9599325656891
let appleString = "https://maps.apple.com/?daddr=\(lat),\(long)" // Apple Maps - successfully launches an app
let googleString = "https://www.google.com/maps/dir/?api=1&destination=\(lat)%2C\(long)" // Google Maps - launches a Web version
let selectedString: String = googleString // Change accordingly
let url = URL(string: selectedString)!
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}
我想,这个问题简单得离谱,但我仍然没有想出如何解决它。
更新
甚至 Google 的示例也不适用于 iOS 12 Beta 2:
https://developers.google.com/maps/documentation/urls/ios-urlscheme
,问题可能与 Beta 软件的使用有关。
试试这个:右键单击 info.plist
文件并 select 打开 源代码 。在 <dict>
正下方添加以下行,您就可以开始了!
<key>LSApplicationQueriesSchemes</key>
<array>
<string>comgooglemaps</string>
</array>
这个问题似乎已在上一个 iOS 版本 (12.1.2) 中得到解决。现在以下 link 在 iPhone 上工作:
https://www.google.com/maps/dir/Current+Location/51.5230369,-0.08225500000003194
作为适用于 iOs 的 /dir api 的替代解决方案,您可以使用 /search :
https://www.google.com/maps/search/?api=1&query={your_lat},{your_lon}
https://www.google.com/maps/search/?api=1&query=28.6139,77.2090
我无法从 iPhone 应用程序中启动 Google 地图应用程序。当应用程序安装在设备上时,代码会在 Safari 中启动 Web 版本的 Google 地图。另一方面,Apple Maps 本机应用程序成功启动。
这是我使用的代码:
@IBAction func openMap(_ sender: Any) {
let lat: Double = -37.8218956215849
let long: Double = 144.9599325656891
let appleString = "https://maps.apple.com/?daddr=\(lat),\(long)" // Apple Maps - successfully launches an app
let googleString = "https://www.google.com/maps/dir/?api=1&destination=\(lat)%2C\(long)" // Google Maps - launches a Web version
let selectedString: String = googleString // Change accordingly
let url = URL(string: selectedString)!
UIApplication.shared.open(url, options: [:], completionHandler: nil)
}
我想,这个问题简单得离谱,但我仍然没有想出如何解决它。
更新
甚至 Google 的示例也不适用于 iOS 12 Beta 2:
https://developers.google.com/maps/documentation/urls/ios-urlscheme
,问题可能与 Beta 软件的使用有关。
试试这个:右键单击 info.plist
文件并 select 打开 源代码 。在 <dict>
正下方添加以下行,您就可以开始了!
<key>LSApplicationQueriesSchemes</key>
<array>
<string>comgooglemaps</string>
</array>
这个问题似乎已在上一个 iOS 版本 (12.1.2) 中得到解决。现在以下 link 在 iPhone 上工作:
https://www.google.com/maps/dir/Current+Location/51.5230369,-0.08225500000003194
作为适用于 iOs 的 /dir api 的替代解决方案,您可以使用 /search :
https://www.google.com/maps/search/?api=1&query={your_lat},{your_lon}
https://www.google.com/maps/search/?api=1&query=28.6139,77.2090