Scene Delegate doesn't called back with NSUerActivity

As stated in Apple's documentation the NSUserActivity is available in Scene Delegate callback
Code Block
func scene(_ scene: UIScene, continue userActivity: NSUserActivity)


Here the actual wording

For a UIKit-based app clip and full app that support scene-based app life-cycle events, implement the callbacks defined in UISceneDelegate. For example, implement scene(_:continue:) callback to access the user activity object.

I have this demo app posted in GitHub, and sometime after iOS 14 Beta 5 the Scene Delegate here stopped getting called back.

Can you please confirm this issue and when is it going to be resolved?

Answered by Engineer in 632639022
Are you observing this behavior on the launch of your clip? On first launch UIKit delivers all activities in the scene(_:willConnectTo:options:) callback, as part of the options payload. The individual delegate methods are only called when a new activity is delivered to an already running process.
Accepted Answer
Are you observing this behavior on the launch of your clip? On first launch UIKit delivers all activities in the scene(_:willConnectTo:options:) callback, as part of the options payload. The individual delegate methods are only called when a new activity is delivered to an already running process.
Great thanks.

I indeed follow now the Universal link doc

I recommend elaborating the App Clip doc with the above reference.
Yea the App Clip videos and docs should emphasize on this. My App Clip's deep link worked after using scene(_willConnectTo:options:) in the scene delegate of the app clip:

Code Block
    func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
        guard let _ = (scene as? UIWindowScene) else { return }
        // Get URL components from the incoming user activity.
        guard let userActivity = connectionOptions.userActivities.first,
            userActivity.activityType == NSUserActivityTypeBrowsingWeb,
            let incomingURL = userActivity.webpageURL,
            let components = NSURLComponents(url: incomingURL, resolvingAgainstBaseURL: true) else {
            return
        }
        // Check for specific URL components that you need.
        guard let path = components.path else {
            return
        }
        if let vc = window?.rootViewController as? AppClipVC {
            if path.lowercased().contains("map")  { 
                vc.clipType = "map"
            }
            if path.lowercased().contains("card")  { 
                vc.clipType = "card"
            }
        }
    }


Scene Delegate doesn't called back with NSUerActivity
 
 
Q