I have an EXPO app and i'm trying to get into the app from external links (universal/deep linking), using the app that has been built with EAS for development build installed on the IOS simulator (IOS 14.4), Android is up and running perfectly and IOS is not working. the app.json file is configured as described here:
"associatedDomains": [
"applinks:app.DOMAIN_NAME.com",
"applinks:app.DOMAIN_NAME.com?mode=developer"
]
And, I have enabled associated domains service for my identifier.
My /.well-known/apple-app-site-association file:
{
"applinks": {
"details": [
{
"appIDs": [
"B3PLCR5ZP2.dz.appname.app"
],
"components": [
{
"/": "*",
"comment": "Matches all routes"
}
]
},
{
"appID": "B3PLCR5ZP2.dz.appname.app",
"paths": [ "*"]
}
]
},
"activitycontinuation": {
"apps": [
"B3PLCR5ZP2.dz.appname.app"
]
},
"webcredentials": {
"apps": [
"B3PLCR5ZP2.dz.appname.app"
]
}
}
The AASA validator is OK, but external links still not opening the native app! What to do?!
The problem is that Expo sets the "TeamIdentifier" to "none" (TeamIdentifier = None) in the development, so my application-identifier now is: "application-identifier" = "FAKETEAMID.dz.appname.app";
So in order for the universal links to work in the IOS simulator, I had to add FAKETEAMID.dz.appname.app
to my /.well-known/apple-app-site-association
file:
{
"applinks": {
"details": [
{
"appIDs": [
"B3PLCR5ZP2.dz.appname.app", "FAKETEAMID.dz.appname.app"
],
"components": [
{
"/": "*",
"comment": "Matches all routes"
}
]
},
{
"appID": "B3PLCR5ZP2.dz.appname.app",
"paths": [ "*"]
},
{
"appID": "FAKETEAMID.dz.appname.app",
"paths": [ "*"]
}
]
}
}
Now everything works perfectly!