Here you can find some information.
as stated in the article:
Prior to iOS 9, applications were able to call these methods on any arbitrary URLs. Starting with iOS 9, applications will need to announce which URL schemes they would like to test and open in the application’s configuration files as they are sent to Apple. This is essentially a whitelist that you can modify or add by sending an Apple update. It seems that some common URLs handled by system applications, such as "http", "https", need not be explicitly white.
In short: Apple wants to prevent apps from scanning a user’s device and know which apps are installed
So, to answer your question: there really is no solution, because the apple wants to precisely prevent this behavior
source share