iOS didFinishLaunchingWithOptions:尽管通过点击链接打开了应用程序,但没有URL

时间:2018-04-04 12:34:17

标签: ios url launch

我正在使用Branch处理的链接打开我的应用程序:

  

https://my.link?param=test

didFinishLaunchingWithOptions

Branch.getInstance()?.initSession(launchOptions: launchOptions, andRegisterDeepLinkHandler: { params, error in
    if error == nil {
        if let param = params?["param"] as? String {
            print(param)
        }
    }
}

这正确地在控制台中打印test

但是,我之前也尝试抓取网址,但尝试抓取launchOptions?[.url],结果我得到nil

那我该如何获取网址?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您需要使用UIApplicationLaunchOptionsKey

试试这个:

if let url = launchOptions?[UIApplicationLaunchOptionsKey.url] as? URL {
  // Your code
}
else if let activityDictionary = launchOptions?[UIApplicationLaunchOptionsKey.userActivityDictionary] as? [AnyHashable: Any] { //Universal link
    for key in activityDictionary.keys {
        if let userActivity = activityDictionary[key] as? NSUserActivity {
               if let url = userActivity.webpageURL {
                    // your code
            }
        }
    }
}