I tested Universal Links in iOS by turning on Airplane mode and saw that the correct application was opened (instead of a website)
This indicates some level of "caching" the apple-app-site-association
.
I want to determine the extent to which this is cached, so I can determine
- What UX edge cases are there (e.g. Offline for x days)
- What security considerations are there (e.g. MITM / SSLStrip + .well-known/URL)
etc.
Ideally I would like to have details if additional logic is employed (conditional caching if HTTPS employed, DNSSec, etc)
The exact behavior here is (intentionally?) unclear from Apple. Here is my personal experience, gleaned partly from official documentation and partly from helping thousands of apps implement Universal Links at Branch.io.
apple-app-site-association
file is cached once when the app is first installed.https://example.com/apple-app-site-association
orhttps://example.com/.well-known/apple-app-site-association
. If there are redirects of any kind, this will fail.