通用链接,continueUserActivity和sourceApplication没有被调用

Ben*_*aya 0 ios swift ios-universal-links swift3

我终于设法建立了通用链接,如果我点击该链接,它将打开我的应用程序。但不会在继续用户活动或源应用程序中显示。因为我想将其重定向到特定的视图控制器。我打开“ https:// www.myWeb.com/forgotPassword”的示例

它将重定向到forgotPasswordViewController,我需要阅读链接。

为什么它在继续的用户活动中不显示

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
    print(url)
    let urlHost : String = url.host as String!
    print("HELLO")

        let main : UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
        let inner : ResetPasswordViewController = main.instantiateViewController(withIdentifier: "ResetPasswordViewController") as! ResetPasswordViewController
        self.window?.rootViewController = inner
        self.window?.makeKeyAndVisible()
        return true;



}

func application(application: UIApplication, continueUserActivity userActivity: NSUserActivity, restorationHandler: ([AnyObject]?) -> Void) -> Bool {
    if userActivity.activityType == NSUserActivityTypeBrowsingWeb {
        let url = userActivity.webpageURL!
        print(url)
        print("HELLO WORLD")
    }
    return true
}
Run Code Online (Sandbox Code Playgroud)

这就是源应用程序发生的事情,有人可以告诉我为什么会这样吗?

sourceApplication

Ben*_*aya 7

解决了这只是因为数据类型,我放了AnyObject而不是Any。但是编译器不会告诉我是否无法使用AnyObject

func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
    print("Continue User Activity: ")
    if userActivity.activityType == NSUserActivityTypeBrowsingWeb {
        let url = userActivity.webpageURL!
        print(url.absoluteString)
        //handle url
    }
    return true
}
Run Code Online (Sandbox Code Playgroud)