Our AASA & Universal Links Validator is designed to help you confirm your website's readiness for Universal Links. We examine your domain's apple-app-site-association (AASA) file hosting, comparing it against Apple's official guidelines and insights from successful production deployments.
Ensuring your AASA file is correctly configured is vital. It's a key factor in delivering a seamless experience for your iOS app users when they interact with your links.
What if your AASA file checks out, but Universal Links aren't working as expected? Our validator can also assist in diagnosing issues related to your Xcode project's Universal Links setup.
For a more thorough check, you can provide your Apple App Prefix and Bundle Identifier. This allows the validator to verify that these crucial values from your project are accurately reflected in your AASA file.
Upon completion, if your apple-app-site-association file meets all criteria, we'll present its content. Otherwise, we'll clearly indicate which specific tests did not pass, or which couldn't be executed due to preceding errors.
What are Deep Links?
Deep links are special URLs that can open specific content directly in mobile apps. They create seamless connections between websites and mobile applications, allowing users to access specific in-app content directly from web links.
Deep Linking Approaches
There are two main approaches to deep linking:
1. URL Schemes (Traditional)
URL Schemes are the traditional way to deep link. They are:
Easy to implement and test
Work immediately after configuration
No server-side setup required
Limited security (can be hijacked)
No fallback if app isn't installed
May show prompts to users
2. Universal Links/App Links (Modern)
Universal Links (iOS) and App Links (Android) are the modern standard. They are:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
handleIntent(intent)
}
override fun onNewIntent(intent: Intent?) {
super.onNewIntent(intent)
handleIntent(intent)
}
private fun handleIntent(intent: Intent?) {
if (intent?.action == Intent.ACTION_VIEW) {
val uri = intent.data
// Handle deep link
}
}
3. Universal Links/App Links (Modern)
Modern deep linking using Universal Links (iOS) and App Links (Android):