OpenUrl无法在iOS10上运行

Rot*_*kov 2 objective-c ios swift ios10

我的应用使用openURL打开Goog​​le地图应用.它适用于iOS 9,但不适用于iOS 10.

我知道这个方法在iOS 10上已被弃用,并且有一个新的参数更多.但是,我在任何地方都看到它仍然可以工作,并且更改为新方法只会阻止xCode中的警告.我还想支持iOS 9及更低版本.

有帮助吗?

谢谢.

Rah*_*ani 8

LSApplicationQueriesSchemesinfo.plist文件中添加密钥.

<key>LSApplicationQueriesSchemes</key>
    <array>
     <string>comgooglemaps</string>
    </array>
Run Code Online (Sandbox Code Playgroud)

用这个....

目标c

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"comgooglemaps://maps.google.com/maps"] options:@{} completionHandler:nil];
Run Code Online (Sandbox Code Playgroud)

斯威夫特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)
}
Run Code Online (Sandbox Code Playgroud)