Ios 应用程序关闭时继续用户活动不工作
我试图在swift中实现通用链接,但当应用程序尚未打开时,我遇到了一个问题。当应用程序之前已经打开时,它工作得非常好,它将导航到适当的视图控制器。当应用程序尚未打开时,它将无法导航到所需的视图控制器,我认为这与根视图控制器有关,但我不是肯定的。有人处理过同样的问题吗 在Ios 应用程序关闭时继续用户活动不工作,ios,swift,appdelegate,nsuseractivity,Ios,Swift,Appdelegate,Nsuseractivity,我试图在swift中实现通用链接,但当应用程序尚未打开时,我遇到了一个问题。当应用程序之前已经打开时,它工作得非常好,它将导航到适当的视图控制器。当应用程序尚未打开时,它将无法导航到所需的视图控制器,我认为这与根视图控制器有关,但我不是肯定的。有人处理过同样的问题吗 在AppDelegate func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHa
AppDelegate
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool {
let navigator = Navigator()
if let url = userActivity.webpageURL {
navigator.getDesination(for: url)
}
}
getDestination
函数最终将触发以下代码:
func openPostVC(id: Int, showComment: Bool, commentID: Int?) {
guard let appDelegate = UIApplication.shared.delegate as? AppDelegate else {
return }
if let _ = appDelegate.window?.rootViewController as? BannedViewController { return }
let postStoryboard = UIStoryboard.singlePost
let singlePostVC = postStoryboard.instantiateInitialViewController() as! SinglePostViewController
singlePostVC.shouldNavigateToHomeAction = {
self.loadMainStoryboard()
}
let navigationVC = UINavigationController(rootViewController: singlePostVC)
navigationVC.view.backgroundColor = .white
appDelegate.window?.rootViewController = navigationVC
appDelegate.window?.makeKeyAndVisible()
}
你有场景代理吗?没有场景代理,这是一个较旧的项目,你可能应该添加一个。这将使您在iOS 13及更高版本中获得正确的消息。或者在DidFinishLaunching中获取url。顺便说一下,这里有一篇关于如何调试的文章。