# ITMS-91064: betulkan “Invalid tracking information”

> ITMS-91064 bermaksud dua kunci penjejakan dalam manifest privasi anda bercanggah. Selaraskan NSPrivacyTracking dan NSPrivacyTrackingDomains, kemudian build semula.

Halaman asal: [ITMS-91064: betulkan “Invalid tracking information”](https://devoria.fr/ms/blog/itms-91064-invalid-tracking-information)
Pengarang: [Mehdi Azizi](https://devoria.fr/ms/mehdi-azizi)
Diterbitkan: 2026-10-16
Semakan kandungan terakhir: 2026-10-16


ITMS-91064 ialah penolakan automatik daripada Apple, dihantar melalui e-mel selepas build anda dihantar. Maksudnya, dua kunci penjejakan dalam manifest privasi anda bercanggah antara satu sama lain. **Cara membetulkannya: selaraskan `NSPrivacyTracking` dan `NSPrivacyTrackingDomains`**, kemudian buat build semula.

Saya terkena ralat ini pada TradaZen, app latihan trading saya, selepas menambah alat pengukuran iklan. Berikut puncanya dan cara membetulkannya.

## Apakah maksud ralat ITMS-91064?

Mesej itu bertajuk "ITMS-91064: Invalid tracking information". Ia merujuk kepada fail `PrivacyInfo.xcprivacy`, iaitu manifest privasi yang boleh disertakan oleh setiap app dan setiap SDK. Fail ini mengandungi antara lain dua kunci berkaitan penjejakan, dalam erti kata App Tracking Transparency:

- `NSPrivacyTracking`: bernilai true jika app atau SDK menggunakan data untuk penjejakan.
- `NSPrivacyTrackingDomains`: senarai domain yang dihubungi untuk penjejakan itu.

Apple menerangkan tiga kombinasi yang ditolak dalam nota teknikalnya tentang [manifest tidak sah](https://developer.apple.com/documentation/technotes/tn3181-debugging-invalid-privacy-manifest):

- `NSPrivacyTracking` bernilai true dan senarai domain kosong. Anda perlu mengisi senarai itu. Ini kes saya.
- `NSPrivacyTracking` bernilai true tetapi ada domain yang ditulis salah. Domain ditulis tanpa path dan tanpa garis miring di hujung.
- Ada domain disenaraikan sedangkan `NSPrivacyTracking` bernilai false. Anda perlu membuang senarai itu.

Peraturan asasnya ada dalam dokumentasi tentang [manifest privasi](https://developer.apple.com/documentation/bundleresources/privacy-manifest-files): apabila `NSPrivacyTracking` bernilai true, anda mesti menyediakan senarai domain.

**E-mel Apple memberikan nama dan path fail yang bermasalah.** Baca path itu: ia menunjukkan sama ada masalahnya datang daripada manifest app anda atau manifest SDK yang disertakan.

Seperti ralat ITMS yang lain, ini bukan penolakan oleh reviewer. Semakan ini automatik, berlaku semasa build dihantar, dan build itu ditolak.

## Kenapa ia berlaku: satu manifest bagi setiap target

Inilah perangkapnya. SDK selalunya membawa manifestnya sendiri, lengkap dengan domainnya. Anda mungkin sangka itu sudah cukup. Tetapi app anda juga ada manifest sendiri, dan **manifest app itulah yang ditolak oleh Apple dalam kes saya**.

Kes saya, 21 Julai 2026. Semasa memasang alat pengukuran iklan pada TradaZen, saya mengisytiharkan `NSPrivacyTracking: true` dalam konfigurasi app, dan itu memang betul. Tetapi saya tidak menambah `NSPrivacyTrackingDomains`. Manifest SDK lengkap. Manifest app pula, yang dijana oleh Expo daripada konfigurasi saya, menyatakan "true" dengan senarai kosong. Build itu ditolak semasa pemprosesan.

**Pengajarannya**: manifest SDK tidak meliputi manifest app anda. Jika anda mengisytiharkan penjejakan dalam konfigurasi, anda juga mesti mengisytiharkan domainnya.

## Membetulkan ITMS-91064 dalam app Expo

Dengan Expo, manifest app ditetapkan dalam konfigurasi, di bawah `ios.privacyManifests`. Prinsipnya ada dalam [dokumentasi Expo tentang privasi](https://docs.expo.dev/guides/apple-privacy/), dan kuncinya dalam [rujukan konfigurasi](https://docs.expo.dev/versions/latest/config/app/).

1. **Cari domain penjejakan SDK.** Salin senarai daripada manifest versi yang disertakan dalam build anda, bukan versi terbaharu dalam talian: kedua-duanya mungkin berbeza. Jangan reka domain.
2. **Tambahkannya ke konfigurasi anda.** Dua domain di bawah hanyalah contoh yang perlu diganti:

```json
{
  "expo": {
    "ios": {
      "privacyManifests": {
        "NSPrivacyTracking": true,
        "NSPrivacyTrackingDomains": [
          "example-tracking-domain.com",
          "another-tracking-domain.com"
        ]
      }
    }
  }
}
```

3. **Semak fail yang dijana sebelum membayar untuk build**, jika folder `ios` anda dijana oleh Expo dan diabaikan oleh git. Jalankan `npx expo prebuild -p ios`, kemudian buka fail `PrivacyInfo.xcprivacy` yang dicipta dalam folder `ios`. Ia mesti mengandungi `NSPrivacyTracking` bernilai `true` dan senarai domain yang lengkap.
4. **Buat build semula dan hantar sekali lagi.** Manifest ialah sebahagian daripada binari: kemas kini jarak jauh tidak mengubahnya.

Berhati-hati dengan langkah 3: arahan ini boleh memadam lalu mencipta semula folder `ios`. Jika anda pernah mengubah folder itu secara manual, jangan jalankannya pada projek anda. Gunakan salinan.

Jika app anda tidak melakukan sebarang penjejakan, jalannya lebih pendek: tukar `NSPrivacyTracking` kepada `false` dan buang senarai itu.

## Apa kesan domain ini kepada pengguna anda

Mengisytiharkan domain ini bukan sekadar formaliti. Menurut dokumentasi Apple, jika pengguna tidak menerima penjejakan dalam tetingkap App Tracking Transparency, permintaan ke domain ini akan gagal. Itulah tingkah laku yang dijangka: penjejakan hanya berlaku jika pengguna bersetuju.

Halaman App Store anda mesti menyatakan perkara yang sama. Jika manifest anda mengisytiharkan penjejakan, pengisytiharan privasi di halaman anda dan dasar privasi anda juga mesti menyatakannya. Jika tidak, anda berisiko ditolak oleh reviewer selepas itu, di bawah guideline 5.1.1 atau 5.1.2: butirannya ada dalam [dasar privasi sesebuah aplikasi](https://devoria.fr/ms/blog/dasar-privasi-aplikasi-ios-app-store).

## Hantar build anda tanpa kejutan

Ralat ITMS cepat dibetulkan apabila anda tahu cara membacanya. Penolakan yang datang selepas itu memerlukan lebih banyak pertimbangan: langkah-langkahnya ada di halaman [aplikasi ditolak oleh Apple](https://devoria.fr/ms/expertise/aplikasi-ditolak-apple), dan sebab paling biasa ada dalam [kenapa Apple menolak app](https://devoria.fr/ms/blog/aplikasi-ditolak-apple-5-kes-sebenar).

Untuk menyemak projek anda sebelum dihantar, [Apple Review Kit](https://devoria.fr/ms/kits/review-apple) menghimpunkan senarai semak saya dan skill Claude Code yang menyemak projek anda. Jika penghantaran anda tersekat dan anda mahukan pandangan manusia, [tempah satu jam dengan saya](https://devoria.fr/ms/coaching): kita semak projek anda melalui panggilan video, di skrin anda. Dan jika anda sedang menyediakan pelancaran pertama, [buat diagnostik percuma anda](https://devoria.fr/ms/diagnostic): ia menyusun semula langkah-langkah mengikut urutan dan menghantar senarai semak anti-penolakan Apple saya kepada anda.

## Soalan lazim

### Adakah ITMS-91064 penolakan App Review?

Bukan dalam erti kata reviewer manusia. Ia semakan automatik ke atas build semasa dihantar, sebelum masuk ke semakan. Build itu ditolak: anda perlu membetulkan manifest privasi dan menghantar build baharu.

### Apa yang perlu dimasukkan dalam NSPrivacyTrackingDomains?

Domain yang dihubungi oleh app atau SDK anda untuk penjejakan. Salin domain yang disenaraikan oleh SDK dalam manifest versi yang disertakan dalam build anda. Senarai kosong dengan `NSPrivacyTracking` bernilai `true` ialah salah satu kombinasi yang ditolak oleh Apple.

### Tidakkah manifest SDK saya sudah cukup?

Tidak. Pada TradaZen, manifest SDK lengkap tetapi build tetap ditolak: manifest app mengisytiharkan penjejakan tanpa sebarang domain. Jika konfigurasi app anda mengisytiharkan penjejakan, ia juga mesti menyenaraikan domainnya.

### App saya tidak melakukan penjejakan: apa yang perlu dibuat?

Tukar `NSPrivacyTracking` kepada `false` dalam konfigurasi anda dan buang senarai domain. Kemudian pastikan halaman App Store dan dasar privasi anda menyatakan perkara yang sama.

### Bolehkah ITMS-91064 dibetulkan tanpa build semula?

Tidak. Manifest privasi ialah sebahagian daripada binari yang dihantar kepada Apple. Anda perlu membetulkan konfigurasi, buat build semula dan hantar sekali lagi.


## Projek anda

[Apple Review Kit](https://devoria.fr/ms/kits/review-apple): Senarai semak review App Store yang saya guna, penolakan Apple yang saya betulkan, nota untuk penguji dan dua skill Claude Code yang menyemak aplikasi anda. 29 €.

[iOS Kit](https://devoria.fr/ms/kits/ios): Bina aplikasi iPhone anda dengan Claude Code: kod permulaan aplikasi saya, skill yang menyemak kerjanya, serta Apple Review Kit, App Store Screenshots Kit dan ASO Kit. 129,99 €.
