iOS 13以后通过Universal Links 打开app后

2022-08-23  本文已影响0人  sfaqasd

要求通过一个网页打开app并跳转到对应的app页面,SceneDelegate里边的

 func scene(_ scene: UIScene, continue userActivity: NSUserActivity) 

方法中实现了调转逻辑,自己找了个页面测试了一下 可以跳转,但是把app杀死以后就不行了 杀死以后可以点击打开app 但是不会跳转,自己加日志发现 在app杀死的情况下 打开app不会走

  func scene(_ scene: UIScene, continue userActivity: NSUserActivity) 

查看文档没有找到具体为什么, 网上搜了半天相关问题基本上都是抄自一个人的博客在说SceneDelegate 都沾不上边的答案,最后发现 杀死app后打开 会走

  func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) 

connectionOptions中有一些属性查看了一下

   open var userActivities: Set<NSUserActivity> { get } 

尝试在改方法中手动的触发了

 func scene(_ scene: UIScene, continue userActivity: NSUserActivity)  
 代码如下  if let userActivity = connectionOptions.userActivities.first {
            self.scene(scene, continue: userActivity)
        }

测试好使, 记录一下。 如果你有更好的解决方法或者找到了苹果官方明确的文档,希望分享我一下

上一篇下一篇

猜你喜欢

热点阅读