Back to all

iOS: universal links and URL scheme links open the app but the URL is dropped (SceneDelegate not forwarding links)

Bundle ID: co.median.ios.bnaodjm
iOS build: 2.16.6 (43), iOS 26.2 SDK
JS bridge: NPM package mode (injectMedianJS: false), median-js-bridge 2.20.0
Universal Links: configured for our domain
Custom URL scheme: configured

Problem
Tapping a link such as https://our-domain/some/path?query=... from Messages or Notes opens the app, but the URL is never loaded.

  • Cold start: the app loads the initial URL (/) instead of the link.
  • Warm resume: nothing happens, the current page stays.
  • The URL scheme form (ourscheme.https://our-domain/some/path) also fails to open the linked page.
  • OneSignal push notification URLs work correctly.

What we have confirmed

  • The Median Deep Linking Validator passes every iOS check for our domain.
  • The build contains the applinks entitlement for our domain.
  • Median.jsNavigation.url.addListener and Median.appResumed.addListener never fire.
  • Our server logs show no request for the linked path, so the URL never reaches the webview.

What we found in the build

  • Info.plist declares a UIApplicationSceneManifest with a SceneDelegate, so the app uses the scene lifecycle.
  • SceneDelegate implements only scene(:willConnectTo:options:). It has no scene(:continue:) or scene(_:openURLContexts:), and does not appear to read connectionOptions.userActivities or connectionOptions.urlContexts.
  • The existing link handling is in LEANAppDelegate application(:continue:restorationHandler:) and application(:open:options:), which iOS does not call for apps that use scenes.

Request

  1. Can you confirm this and update the iOS template so SceneDelegate forwards universal links and URL scheme opens, at launch and while running, to the existing deep-link handling?
  2. Is there a setting or earlier iOS template version we can build with in the meantime?

I can send the .ipa and our domain privately if that helps.