In iOS 15, when an app showed a Safari View Controller, the sourceAppIdentifier
provided to a NEFilterDataProvider would be related to the app that used the Safari View Controller. E.g For a SFVC shown in Google Docs it would be EQHXZ8M8AV.com.google.Docs
But in iOS 16, depending on whether it is for a Browser Flow or a socket flow, the identifier is now always given as either .com.apple.WebKit.Networking
for Browser flows or .com.apple.mobilesafari
for socket flows.
This now means it is no longer possible for a NEFilterDataProvider to know which app is responsible for that flow and as such cannot use the sourceAppIdentifier
in any decision as to whether to allow or drop the flow.
Was this an intentional change? If so, why?