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)
这就是源应用程序发生的事情,有人可以告诉我为什么会这样吗?
解决了这只是因为数据类型,我放了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)
| 归档时间: |
|
| 查看次数: |
2208 次 |
| 最近记录: |