
This just creates a new App instance without creating a new AppDelegate Var windowScene = scene as UIWindowScene Public override void WillConnect(UIScene scene, UISceneSession session, UISceneConnectionOptions connectionOptions) Public override void OpenUrlContexts(UIScene scene, NSSet urlContexts)ĭebug.WriteLine("*** URL property =" + )

Public class SceneDelegate : UIWindowSceneDelegate In short, the OpenUrlContexts method does not fire when a link is clicked on, and even in WillConnect I'd have expected to show the URL however UrlContexts is null. Note: the following has the pre-iOS 13 code stripped out, which in the finmal result should be included to cater for iPhones that have not yet upgraded to iOS 13 and above. The following code demonstrates that I have a deep link registered, and where iOS is 13 or greater, although clicking on the link opens the app, the OpenUrlContexts override does not fire, hence I am unable to filter then navigate, based upon the URL. In that changeover from iOS 12 to 13 in September 2019, every single developer has also been left stranded without documentation of the new Xamarin Forms pattern that allows a user to click a link (such as a link in an email) and the application to be opened and the developer being advised of what URL opened the link.

IOS 13 was released on the 19th of September 2019 and yet there is still a bug in the new iOS SceneDelegate pattern as relates to Xamarin Forms, in that when using Xamarin.Forms (not Xamarin.iOS), that the developer cannot intercept the URL that was clicked on (such as from the user clicking a link in an email) to bring the app into the foreground.įurthermore, these 18 months later, the Xamarin.Forms solution that is generated in Visual Studio (File / New Solution, etc) does not include the new SceneDelegate pattern in the iOS project of that Xamarin.Forms solution.
