Allow owning app to handle an outbound deep link from a SafariViewController session to another app

Originator:jharris
Number:rdar://30921644 Date Originated:March 8, 2017
Status:Open Resolved:
Product:Safari Services Product Version:10.3
Classification:Enhancement Reproducible:n/a
 
Description

It is not always desirable for a hosting app to permit navigation from within SFSafariViewController to exit the hosting app via a deeplink to an external app. And even when it is, it's important to know that it's happening for metrics tracking.

Provide a hook for hosting app to allow or deny following a deep link that takes the user out of the hosting app.

Steps to Reproduce

Launch a web browsing session using SFSafariViewController. Use a URL that represents a web page containing a deep link to a different app. Tap link.

Expected Results

Inform hosting app that user is attempted a deep link to another app. Ideally, provide the URL and the name of the external app. Allow hosting app to confirm or deny.

Actual Results

Control is immediately transferred to external app. All that hosting app knows is that hosting app was backgrounded, but not why.

Configuration

iPhone & iPad

Version

iOS 10.2

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!