There is no way to check for this.
However, there is a nice workaround.
The idea is basically this:
- The first time you open your app, you open up mobile safari from within your app to a predefined URL on your server
- On that URL you set up a cookie, like appInstalled to the users mobile safari
- You then kick the user back to your app with your registered scheme (same as FB does with SSO)
- All your email links point to your website, but on the website you check if the browser is mobile Safari and if the appInstalled cookie exists
- If either the browser is not mobile Safari or the cookie is not found, you redirect to the AppStore, or stay in your webpage.
- If the conditions of #4 are true, you redirect the user to your app with the registered scheme
- If the app has been deleted by the user, so the custom url scheme fails, you have a fail-safe redirect to the appstore
The 2 last steps are explained on this SO post