ITMS-91064: oprava chyby „Invalid tracking information“
Autor: Mehdi Azizi
Zverejnené , 5 min
ITMS-91064 znamená, že NSPrivacyTracking a NSPrivacyTrackingDomains v privacy manifeste si odporujú. Zosúlaď ich v konfigurácii Expo a sprav nový build.
ITMS-91064 je automatické zamietnutie od Apple, ktoré ti príde e-mailom po nahratí buildu. Znamená, že dva kľúče týkajúce sa sledovania v tvojom privacy manifeste si navzájom odporujú. Oprava: zosúlaď NSPrivacyTracking a NSPrivacyTrackingDomains a potom sprav nový build.
Dostal som ho na TradaZen, mojej appke na tréning tradingu, keď som pridal nástroj na meranie reklamy. Tu je príčina a oprava.
Čo znamená chyba ITMS-91064?
Správa má názov „ITMS-91064: Invalid tracking information“. Týka sa súboru PrivacyInfo.xcprivacy, teda privacy manifestu, ktorý môže obsahovať každá appka aj každé SDK. Tento súbor obsahuje okrem iného dva kľúče súvisiace so sledovaním v zmysle App Tracking Transparency:
NSPrivacyTracking: true, ak appka alebo SDK používa dáta na sledovanie.NSPrivacyTrackingDomains: zoznam domén, ktoré sa na toto sledovanie kontaktujú.
Apple popisuje tri zamietané kombinácie vo svojej technickej poznámke o neplatných manifestoch:
NSPrivacyTrackingje true a zoznam domén je prázdny. Treba zoznam vyplniť. To bol môj prípad.NSPrivacyTrackingje true, ale doména je zle zapísaná. Doména sa píše bez cesty a bez lomky na konci.- Domény sú uvedené, hoci
NSPrivacyTrackingje false. Treba zoznam odstrániť.
Základné pravidlo nájdeš v dokumentácii k privacy manifestom: keď je NSPrivacyTracking true, musíš uviesť zoznam domén.
E-mail od Apple uvádza názov a cestu chybného súboru. Prečítaj si tú cestu: povie ti, či problém pochádza z manifestu tvojej appky, alebo z manifestu niektorého pribaleného SDK.
Rovnako ako pri iných chybách ITMS nejde o zamietnutie od reviewera. Kontrola je automatická pri nahratí buildu a build sa vyradí.
Prečo sa to deje: jeden manifest na každý target
V tom je háčik. SDK má často vlastný manifest so svojimi doménami. Mohol by si si myslieť, že to stačí. Lenže aj tvoja appka má svoj vlastný a u mňa Apple zamietol práve manifest appky.
Môj prípad z 21. júla 2026. Keď som do TradaZen napojil nástroj na meranie reklamy, uviedol som v konfigurácii appky NSPrivacyTracking: true, čo je správne. Ale nepridal som NSPrivacyTrackingDomains. Manifest SDK bol kompletný. Manifest appky, ktorý Expo vygenerovalo z mojej konfigurácie, hovoril „true“ s prázdnym zoznamom. Build bol pri spracovaní zamietnutý.
Ponaučenie: manifest SDK nepokrýva manifest tvojej appky. Ak v konfigurácii deklaruješ sledovanie, deklaruješ aj domény.
Oprava ITMS-91064 v Expo appke
V Expo sa manifest appky nastavuje v konfigurácii pod ios.privacyManifests. Princíp je popísaný v dokumentácii Expo o súkromí a kľúč v referencii konfigurácie.
- Nájdi domény sledovania daného SDK. Skopíruj zoznam z manifestu verzie, ktorú tvoj build obsahuje, nie z najnovšej verzie online: môžu sa líšiť. Nevymýšľaj si ich.
- Pridaj ich do konfigurácie. Dve domény nižšie sú príklady, ktoré treba nahradiť:
{
"expo": {
"ios": {
"privacyManifests": {
"NSPrivacyTracking": true,
"NSPrivacyTrackingDomains": [
"example-tracking-domain.com",
"another-tracking-domain.com"
]
}
}
}
}
- Skontroluj vygenerovaný súbor skôr, než zaplatíš build, ak tvoj priečinok
iosgeneruje Expo a git ho ignoruje. Spustinpx expo prebuild -p iosa otvor súborPrivacyInfo.xcprivacyvytvorený v priečinkuios. Musí obsahovaťNSPrivacyTrackingnastavené natruea kompletný zoznam domén. - Sprav nový build a pošli ho znova. Manifest je súčasťou binárky: vzdialená aktualizácia ho nezmení.
Pozor pri kroku 3: tento príkaz môže priečinok ios vymazať a vytvoriť nanovo. Ak si v ňom robil ručné úpravy, nespúšťaj ho na svojom projekte. Pracuj na kópii.
Ak tvoja appka nerobí žiadne sledovanie, cesta je kratšia: nastav NSPrivacyTracking na false a zoznam odstráň.
Čo tieto domény menia pre tvojich používateľov
Deklarovanie týchto domén nie je len formalita. Podľa dokumentácie Apple, ak používateľ neprijal sledovanie v okne App Tracking Transparency, požiadavky na tieto domény zlyhajú. To je očakávané správanie: sledovanie prebehne, len ak človek povedal áno.
Tvoja stránka v App Store musí hovoriť to isté. Ak tvoj manifest deklaruje sledovanie, musia to uvádzať aj údaje o súkromí na tvojej stránke a tvoje zásady ochrany súkromia. Inak ti neskôr hrozí zamietnutie od reviewera podľa guidelines 5.1.1 alebo 5.1.2: podrobnosti nájdeš v článku zásady ochrany súkromia pre appku.
Pošli build bez nepríjemných prekvapení
Chyby ITMS sa opravujú rýchlo, keď ich vieš čítať. Zamietnutia, ktoré prídu potom, si vyžadujú viac nadhľadu: postup je na stránke appka zamietnutá od Apple a najčastejšie dôvody nájdeš v článku prečo Apple zamieta appky.
Na kontrolu podkladov pred odoslaním je tu Apple Review Kit: obsahuje môj checklist a skills pre Claude Code, ktoré prejdú tvoj projekt. Ak sa ti odoslanie zasekne a chceš ľudský pohľad, rezervuj si hodinu so mnou: prejdeme tvoj projekt cez videohovor, na tvojej obrazovke. A ak chystáš svoje prvé vydanie, sprav si bezplatnú diagnostiku: zoradí ti kroky v správnom poradí a pošle ti môj checklist proti zamietnutiu od Apple.
Často kladené otázky
Je ITMS-91064 zamietnutie od App Review?
Nie v zmysle ľudského reviewera. Ide o automatickú kontrolu buildu pri jeho nahratí, ešte pred posúdením. Build sa vyradí: treba opraviť privacy manifest a poslať nový build.
Čo treba uviesť v NSPrivacyTrackingDomains?
Domény, ktoré tvoja appka alebo tvoje SDK kontaktujú na sledovanie. Skopíruj tie, ktoré SDK uvádza v manifeste verzie, ktorú tvoj build obsahuje. Prázdny zoznam s NSPrivacyTracking nastaveným na true patrí medzi kombinácie, ktoré Apple zamieta.
Nestačí manifest môjho SDK?
Nie. Na TradaZen bol manifest SDK kompletný a build bol aj tak zamietnutý: manifest appky deklaroval sledovanie bez jedinej domény. Ak konfigurácia tvojej appky deklaruje sledovanie, musí uvádzať aj domény.
Moja appka nerobí sledovanie: čo mám robiť?
Nastav v konfigurácii NSPrivacyTracking na false a odstráň zoznam domén. Potom skontroluj, či tvoja stránka v App Store a tvoje zásady ochrany súkromia hovoria to isté.
Dá sa ITMS-91064 opraviť bez nového buildu?
Nie. Privacy manifest je súčasťou binárky, ktorú posielaš Apple. Treba opraviť konfiguráciu, spraviť nový build a poslať ho znova.