OpenUrl 无法在 iOS10 上运行

OpenUrl not working on iOS10

我的应用程序使用 openURL 打开 Google 地图应用程序。 它适用于 iOS 9 但不适用于 iOS 10.

我知道此方法已在 iOS 10 上弃用,现在有一个具有更多参数的新方法。 但是,我到处都看到它应该仍然有效,并且更改为新方法只会阻止 xCode 中的警告。 我还想继续支持 iOS 9 及更低版本。

有什么帮助吗?

谢谢。

info.plist文件中添加LSApplicationQueriesSchemes键。

<key>LSApplicationQueriesSchemes</key>
    <array>
     <string>comgooglemaps</string>
    </array>

使用这个....

Objective c

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"comgooglemaps://maps.google.com/maps"] options:@{} completionHandler:nil];

Swift 4

 guard let url = URL(string: "comgooglemaps://maps.google.com/maps") else {
      return //be safe
 }

if #available(iOS 10.0, *) {
    UIApplication.shared.open(url, options: [:], completionHandler: nil)
} else {
   UIApplication.shared.openURL(url)
}