Co je Apple App Site Association (AASA) a jak ho nastavit?
Při propojování webových stránek a mobilních iOS aplikací narazíte na jeden z nejdůležitějších prvků celého ekosystému: soubor apple app site association. Jeho správné nastavení zajišťuje, že se vaše mobilní aplikace plynule otevírá přímo z běžného internetového odkazu. Tento článek slouží jako podrobný návod k vytvoření, hostování a otestování tohoto souboru na vašem serveru, abyste mohli uživatelům poskytnout bezchybnou uživatelskou zkušenost.
Co je to apple-app-site-association (AASA) soubor?
Zkráceně AASA (apple-app-site-association) je speciální soubor bez přípony uložený na vašem webovém serveru, který informuje operační systém iOS, jakým způsobem jsou URL adresy webu namapovány na konkrétní obrazovky a funkce uvnitř vaší aplikace. Funguje jako bezpečný digitální podpis spojující váš web a vaše Apple Developer konto.
Pokud uživatel klikne na odkaz vedoucí na váš web a má zároveň nainstalovanou vaši iOS aplikaci, systém pomocí AASA souboru rozpozná, že obsah může být nativně zobrazen v aplikaci, čímž uživatele přesměruje z prohlížeče přímo do správné obrazovky. Vývoj a technické propojení může na první pohled vypadat náročně, ale jakmile znáte přesný postup, je to stejně efektivní proces, jako když si osvojíte zručnost z úplně jiného soudku – například jak na efektivní přezouvání pneu doma.
Jak fungují Universal Links v iOS
Technologie Universal Links (univerzální odkazy) od Applu je přímým nástupcem starších „custom URL schemes“. Zatímco dříve se používaly odkazy ve formátu mojeaplikace://, Universal Links využívají standardní HTTP nebo HTTPS odkazy (např. https://mojedomena.cz/produkt).
Když uživatel klepne na Universal Link na iOS zařízení, operační systém si stáhne a ověří váš AASA soubor z dané domény a okamžitě aplikaci spustí (pokud je nainstalována). Pokud aplikace nainstalována není, odkaz prostě otevře standardní webovou stránku v prohlížeči Safari. Můžeme říct, že Universal Links plní spolehlivou dvojí roli. S lehkou nadsázkou jsou to takové softwarové „obojživelníky“, podobně spolehlivé a univerzální jako oblíbené univerzální UUV pneumatiky.
Hlavní požadavky na AASA soubor
Aby iOS váš AASA soubor uznal, musíte splnit několik přísných technologických požadavků. Ignorování kteréhokoliv z nich způsobí, že Universal Links nebudou fungovat:
- Žádná přípona: Soubor se musí jmenovat přesně
apple-app-site-association, tedy bez.jsonnebo.txtna konci. - Formát: Obsahem souboru musí být validní JSON konfigurace.
- Protokol: Soubor musí být hostován na zabezpečeném spojení HTTPS.
- Content-Type hlavička: Webový server by měl tento soubor vracet pod odpovídajícím hlavičkovým MIME typem application/json (případně text/plain se většinou toleruje, ale json je standard).
Průvodce vytvořením AASA souboru krok za krokem
Pojďme si ukázat, jak by měl jednoduchý AASA soubor vypadat v praxi. Jeho základním úkolem je poskytnout seznam asociovaných aplikací a definovat, jaké cesty (paths) má iOS předávat do aplikace. Budete potřebovat znát vaše Team ID a Bundle ID.
{
"applinks": {
"details": [
{
"appIDs": [ "TEAMID1234.com.vasedomena.aplikace" ],
"components": [
{
"/": "/kategorie/*",
"comment": "Otevře všechny odkazy z /kategorie/ v aplikaci"
},
{
"/": "/produkt/*",
"comment": "Otevře všechny produkty v aplikaci"
}
]
}
]
}
}
Jakmile máte tento textový kód vytvořen, je potřeba v Apple Xcode v rámci Xcode Associated Domains zadat záznam ve formátu applinks:vasedomena.cz, čímž samotnou aplikaci informujete, od jaké webové adresy má očekávat povel k Universal Links.
Jak správně nahrát AASA soubor na váš server (/.well-known/)
Soubor apple-app-site-association musí být na vašem webovém serveru veřejně dostupný bez jakéhokoliv přesměrování či ověřování uživatele. Od verze iOS 9 se stal standardem .well-known adresář. Váš AASA soubor musíte umístit přesně na tuto adresu:
https://vasedomena.cz/.well-known/apple-app-site-association
Adresář .well-known je ve světě serverů zavedeným místem pro metainformace o doméně a protokolech (pokud vás zajímají další specifikace ukryté v těchto složkách, můžete se podívat například na to, jak funguje nodeinfo v adresáři well-known).
Řešení problémů a validace souboru
Někdy se stane, že soubor zdánlivě nahrajete správně, ale odkazy v iOS aplikaci zkrátka nefungují. Zde jsou klíčové body pro kontrolu:
- Zkontrolujte validitu JSON kódu ve vašem souboru přes jakýkoliv dostupný online JSON Validator. Nesmí chybět žádná závorka.
- Ověřte si, zda neposíláte serverové přesměrování. AASA soubor musí vracet HTTP status 200.
- Ověřte správnost Apple Team ID a Bundle ID.
- Dejte pozor na mezipaměť (cache). Od iOS 14 všechny požadavky za účelem stažení AASA souboru putují přes tzv. iOS CDN (Apple Content Delivery Network). To znamená, že po aktualizaci AASA souboru na vašem serveru může trvat 24 až 48 hodin, než si servery Applu stáhnou novou verzi. Tuto cache lze obejít pouze při vývoji (režim alternate mode v Xcode).
Zprovoznění mobilní aplikace a jejích integrací představuje investici času a prostředků. Proto vývojáři často pátrají po efektivních a nízkonákladových postupech. Můžeme to přirovnat k běžnému životu – ať už šetříte na serverech, nebo u osobního vozu čerpáte inspiraci z průvodce pro nákup nejlevnějších pneumatik, cílem je rozumná investice a maximální výkon.
Často kladené dotazy (FAQ)
Musí mít AASA soubor příponu .json?
Rozhodně ne. Systém iOS striktně očekává soubor bez jakékoliv přípony. Cesta musí končit názvem apple-app-site-association.
Může být AASA soubor zaheslovaný nebo chráněný?
Ne. Soubor musí být veřejně čitelný z celého internetu (bez autentizace, HTTP auth a nesmí být blokován firewallem), protože servery Applu si ho budou stahovat na pozadí.
Jak rychle se změny v AASA souboru projeví u mých uživatelů?
Bohužel ne hned. Apple zařízení nečtou soubor přímo z vašeho serveru po každém kliknutí, ale stahují si jeho kopii ze zmíněné iOS CDN, a to v momentě, kdy si uživatel stáhne aplikaci z App Store, nebo když dojde k její aktualizaci. Proto při nasazování změn buďte trpěliví a veškeré cesty pečlivě testujte dopředu.
Ať už budujete rozsáhlý e-commerce portál s nativní iOS aplikací, nebo drobný startupový projekt, funkční apple app site association soubor představuje onu neviditelnou, ale naprosto klíčovou linku mezi webem a iPhonem vašeho uživatele. Pečlivá konfigurace Universal Links vám pomůže zásadně zvýšit konverze, retenci a celkové pohodlí koncových uživatelů.


