Feature: Option to conditionally show social option if it’s installed on the mobile device
Description: When an admin enables a social login, allow the admin to select if they want the social login to display in the universal login only if the app is installed on the device. This would enable a call to the device when the universal login is invoked to ask the device if that social’s app is installed on the app. If so, then show the social option. If not, hide it.
Use-case: We want to connect with people where they are, but not overwhelm our log in options. So by limiting the visible social options to the ones on the device, we can show relevant options to each user rather than showing a menu of options that’s too long and mostly irrelevant.
Hi @andrew_lc
While this is a fantastic UX concept, it is technically impossible for Auth0 (or any web-based identity provider) to implement this as a native feature.
The Auth0 Universal Login page is a web page loaded inside a browser context. Modern mobile operating systems (iOS and Android) and web browsers strictly prohibit web pages from querying the device to see what other apps are installed. Because of these rigid privacy and security sandboxes, Auth0 has no way of knowing if the user has a specific social app installed when they land on the login page.
In order to show only the relevant social button, you must shift the UI rendering from the Auth0 Universal Login page to your Native Mobile Application .
Instead of redirecting the user to the central Auth0 Universal Login hub right away, build a native login screen directly within your iOS/Android app.
When your native login screen loads, use OS-level APIs to check which social apps are installed on the device.
When the user taps a specific social button on your native screen, trigger the Auth0 SDK’s authorize method, but explicitly pass the connection parameter matching their choice.
Kind Regards,
Nik