Ad Hoc Distribution je metoda distribuce iOS aplikací pro testování na omezeném počtu zařízení bez publikování v App Store. Každé zařízení musí být zaregistrováno v Apple Developer Portal s jedinečným UDID, maximální počet je 100 zařízení na účet. Podle Apple Developer Documentation (2025) se metoda používá pro beta testování a demonstraci aplikací klientům bez nutnosti moderace App Store. Hlavním omezením je vázanost na fyzická zařízení, což komplikuje škálování testování.
Hlavní body
Ad Hoc Distribution je metoda distribuce iOS aplikací dostupná všem účastníkům Apple Developer Program ($99/rok). Umožňuje instalovat aplikace přímo na zařízení bez procházení moderací App Store. Hlavním účelem je testování před publikováním: vývojáři, testeři a klienti si mohou nainstalovat aplikaci na svá zařízení před oficiálním vydáním.
Ad Hoc Distribution používá Provisioning Profile, který obsahuje seznam povolených UDID zařízení. Při podepisování aplikace Xcode nebo Fastlane vytvoří soubor IPA, který lze nainstalovat pouze na zařízení z tohoto seznamu. Každý UDID je přidán přes Apple Developer Portal a celkový počet nesmí překročit 100 zařízení na účet vývojáře.
Podle údajů Apple (2025) zůstává Ad Hoc Distribution využíván pro testování před vydáním, kdy aplikace ještě neprošla moderací App Store, ale již je třeba ji ukázat klientovi nebo otestovat na reálných zařízeních. Apple však doporučuje používat TestFlight pro rozsáhlé beta testování a ponechat Ad Hoc pro malé skupiny a speciální případy.
Distribuce Ad Hoc funguje prostřednictvím mechanismu OTA (Over-The-Air) instalace nebo přes iTunes/Finder. Vývojář vytvoří Ad Hoc Provisioning Profile s vybranými UDID, podepíše aplikaci tímto profilem a exportuje soubor IPA. Uživatel nainstaluje aplikaci přes Safari pomocí odkazu nebo přes Finder na macOS.
Technicky zahrnuje Ad Hoc Distribution několik fází. Nejprve administrátor shromáždí UDID testovacích zařízení — každý UDID je jedinečný 40znakový identifikátor zařízení iOS. Poté jsou UDID přidány do Apple Developer Portal, vytvoří se Provisioning Profile a vygeneruje se podepsaný IPA. Doba platnosti Ad Hoc profilu je jeden rok, po kterém se aplikace přestanou otevírat.
# Fastlane — automatizace distribuce Ad Hoc
lane :adhoc do
match(type: "adhoc")
gym(scheme: "MyApp",
export_method: "ad-hoc")
pilot(
distribute_only: true,
devices_file: "./devices.txt"
)
end
Pro instalaci Ad Hoc aplikace musí uživatel důvěřovat certifikátu vývojáře na svém zařízení. K tomu je třeba v nastavení iOS přejít do „Obecné“ → „VPN a správa zařízení“ → „Profil“ a stisknout „Důvěřovat“. Bez tohoto kroku se aplikace nespustí.
UDID (Unique Device Identifier) je jedinečný identifikátor každého zařízení iOS. Pro Ad Hoc Distribution je třeba shromáždit UDID všech testovacích zařízení a přidat je do Apple Developer Portal. Maximální počet je 100 zařízení na účet vývojáře za rok. Toto omezení se vztahuje na všechny aplikace vývojáře, nikoli na každou aplikaci zvlášť.
| Metoda získání UDID | Obtížnost | Poznámka |
|---|---|---|
| Přes Safari | Nízká | Instalace konfiguračního profilu pro extrakci UDID |
| Přes Xcode | Střední | Připojení zařízení k Mac a zkopírování UDID z Xcode |
| Přes MDM | Vysoká | Řešení MDM může shromažďovat UDID firemních zařízení |
| Přes iTunes | Střední | Zastaralá metoda — iTunes již není podporován na nových macOS |
Omezení na 100 zařízení se resetuje na konci kalendářního roku — reset nastává 1. ledna. Apple však pro rozsáhlé testování doporučuje používat TestFlight, který podporuje až 10 000 externích testerů. Ad Hoc Distribution zůstává od roku 2022 relevantní pro případy, kdy aplikace ještě neprošla Beta App Review nebo když testování vyžaduje přístup k původnímu souboru IPA.
Nastavení Ad Hoc Distribution se provádí přes Apple Developer Portal a Xcode. Proces zahrnuje registraci zařízení, vytvoření Provisioning Profile, podepsání aplikace a export IPA pro distribuci. Pro týmový vývoj se doporučuje používat Fastlane nebo automatizaci přes CI/CD.
Pro zjednodušení procesu se používají distribuční služby: Firebase App Distribution, Microsoft App Center nebo BuddyBuild. Tyto služby automaticky spravují UDID, vytvářejí Ad Hoc profily a odesílají pozvánky testerům. Firebase App Distribution se také integruje s CI/CD pipeline přes Gradle nebo Fastlane.
Důležitý detail — aktualizace UDID. Pokud je třeba do profilu přidat nové zařízení, bude nutné znovu vytvořit Provisioning Profile a znovu podepsat aplikaci. Zařízení, která již aplikaci nainstalovala, ji budou moci používat až do vypršení platnosti profilu (1 rok). Poté je vyžadována přeinstalace s novým profilem.
Ad Hoc Distribution je pouze jedním ze tří způsobů distribuce iOS aplikací bez App Store. TestFlight (zdarma, až 10 000 externích testerů) a Enterprise Distribution (bez omezení zařízení, pro firemní aplikace) řeší podobné úkoly s různými omezeními a požadavky.
TestFlight je preferovaná metoda Apple pro beta testování. Nevyžaduje sběr UDID, podporuje až 100 interních a 10 000 externích testerů, automaticky spravuje verze a poskytuje analytiku instalací. TestFlight však vyžaduje Beta App Review pro externí testery, což může trvat 1–2 dny. Ad Hoc Distribution nevyžaduje žádnou moderaci.
Enterprise Distribution je vhodný pro firemní aplikace s neomezeným počtem zařízení, ale vyžaduje registraci v Apple Developer Enterprise Program ($299/rok) s číslem D-U-N-S. Ad Hoc je dostupný všem účastníkům standardního programu ($99/rok) a nevyžaduje právní potvrzení společnosti. Pro malé týmy a projekty zůstává Ad Hoc nejjednodušším způsobem distribuce bez App Store.
Často kladené otázky
Maximální počet zařízení pro Ad Hoc Distribution je 100 na účet vývojáře Apple. Limit je společný pro všechny aplikace vývojáře, nikoli pro každou aplikaci zvlášť. Reset probíhá 1. ledna každého roku. Pro testování na větším počtu zařízení použijte TestFlight nebo Enterprise Distribution (pro firemní aplikace).
UDID zařízení lze získat prostřednictvím webových služeb jako udid.io nebo install.appcenter.ms. Uživatel otevře odkaz v Safari na iOS, nainstaluje konfigurační profil, poté se UDID zobrazí na obrazovce. Alternativně lze UDID zkopírovat z Xcode při připojení zařízení k Mac: Window → Devices and Simulators → Identifier.
Ne, Ad Hoc Distribution je určen výhradně pro testování. Pro publikování v App Store je třeba vytvořit App Store Distribution Profile a podepsat aplikaci odpovídajícím způsobem. Ad Hoc profil neprojde kontrolou App Store Connect. Před odesláním do App Store nezapomeňte změnit export method na app-store v Xcode nebo Fastlane.
Pokud se Ad Hoc aplikace neotevře, zkontrolujte: zda je certifikát vývojáře důvěryhodný na zařízení (Nastavení → Obecné → VPN a správa zařízení), zda nevypršela platnost Provisioning Profile, zda je UDID zařízení přidán do profilu a zda je aplikace podepsána správným certifikátem. Pokud problém přetrvává, odstraňte aplikaci a znovu ji nainstalujte s aktualizovaným profilem.
Development Profile je určen pro spouštění aplikací přímo z Xcode na připojených zařízeních. Ad Hoc Profile — pro distribuci instalačních souborů IPA na zařízení bez Xcode. Hlavní rozdíly: Development vyžaduje připojení k Xcode, zatímco Ad Hoc používá OTA instalaci přes Safari nebo Finder. Oba jsou omezeny na 100 zařízení.
Shrnutí
Vyvineme mobilní aplikaci na klíč
IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.
Přečtěte si také