背景:swift 5.0大约是在2018年底发布的,到现在也有两年多的时间了,就想着升级一下工程,然后就遇到了openURL,下面是api代码。
@available(iOS, introduced: 2.0, deprecated: 10.0)
open func openURL(_ url: URL) -> Bool
@available(iOS 10.0, *)
open func open(_ url: URL, options: [UIApplication.OpenExternalURLOptionsKey : Any] = [:], completionHandler completion: ((Bool) -> Void)? = nil)
iOS 应用之间的跳转有两种方式
1、URL Scheme
2、UniversalLink
最新的open方法也是和UniversalLink配套的,也兼容URL Scheme方式(没有验证是猜想),但多了一个options参数。
这个参数猜测可能是app间传值使用,另一个app接收参数时方法。
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
}
但在网上搜索options的传值是
let options = [UIApplicationOpenURLOptionUniversalLinksOnly : true]
UIApplicationOpenURLOptionUniversalLinksOnly设置为true,表示如果没有安装这个APP的话,那么就返回失败,无法打开;当为false时会在safari中访问这个url。
网友评论