Лист ожиданияСкачать

Манифест приватности PrivacyInfo.xcprivacy. Что в него записать и когда он нужен

Какой файл Apple ждёт в приложении и в каждом SDK, какие причины в нём пишут и как Xcode собирает из манифестов отчёт перед анкетой App Privacy.

Коротко

Манифест приватности это файл PrivacyInfo.xcprivacy в проекте Xcode, где приложение или SDK перечисляет собранные данные и причины обращения к пяти группам системных функций. С 1 мая 2024 года App Store Connect не принимает приложение, если такая функция есть в коде, а причины в манифесте нет.

Что лежит в файле PrivacyInfo.xcprivacy

Манифест приватности это список свойств (property list) с четырьмя ключами верхнего уровня. Свой манифест бывает у приложения и у каждого стороннего SDK, будь то XCFramework, Swift Package или проект Xcode.

  • NSPrivacyTracking. Да или нет, отслеживает ли код людей в том смысле, который Apple вкладывает в App Tracking Transparency.
  • NSPrivacyTrackingDomains. Домены, которые занимаются отслеживанием. Пока человек не дал согласия, запросы к ним система не пропускает, и приложение получает ошибку.
  • NSPrivacyCollectedDataTypes. Какие типы данных собраны, связаны ли они с человеком, идут ли на отслеживание и с какой целью. Это нужно на всех платформах.
  • NSPrivacyAccessedAPITypes. Группы системных функций, которым нужна заявленная причина, и коды причин. Это нужно на iOS, iPadOS, tvOS, visionOS и watchOS.

Причины Apple спрашивает потому, что метки времени файлов, свободное место на диске или время с загрузки системы годятся для отпечатка устройства (fingerprinting). Такой сбор Apple запрещает, даже если человек разрешил отслеживание.

Где манифест в Xcode

Файл создают через File › New › File. В разделе Resource выберите тип App Privacy File, нажмите Next, отметьте цель приложения и нажмите Create. Xcode назовёт файл PrivacyInfo.xcprivacy, и это имя обязательно.

Файл должен входить в ресурсы цели, иначе Xcode не возьмёт его в отчёт. В готовом приложении для iPhone он лежит в корне пакета рядом с Info.plist, у приложения для Mac в папке Contents/Resources. В Swift Package манифест сам ресурсом не считается, его объявляют явно, например .process("PrivacyInfo.xcprivacy").

Сроки и числа Apple

ЧтоКак у Apple
Впервые показанна WWDC23, в 2023 году, вместе с подписями SDK
Причины для вызовов в коде приложенияобязательны с 1 мая 2024 года, без них App Store Connect не принимает загрузку
SDK из списка Appleс 1 мая 2024 года нужен его манифест, если новое приложение или обновление добавляет такой SDK, и подпись, если он подключён готовым бинарным файлом
Проверка правильности файлас 12 ноября 2024 года, при ошибке приходит письмо ITMS-91056 с путём к файлу
Правильный манифест у популярных SDKобязателен с 12 февраля 2025 года
SDK в списке Apple86 названий, от Abseil и Alamofire до Flutter и webview_flutter_wkwebview
Ключей верхнего уровня4
Групп вызовов с заявленной причиной5, метки времени файлов, время с загрузки системы, место на диске, активные клавиатуры и UserDefaults

По данным документации Apple о манифестах, списка SDK, TN3181 и новости Apple от 07.12.2023, проверено 16.10.2026. SDK мы посчитали по списку Apple.

Как собрать манифест приватностиШесть шагов манифеста приватности по документации Apple на 16 октября 2026 года. 1. Создайте файл PrivacyInfo.xcprivacy через File, New, File, тип App Privacy File. 2. Ключ NSPrivacyTracking, значение YES только вместе со списком доменов отслеживания. 3. Ключ NSPrivacyCollectedDataTypes, собранные данные, значения только из списка Apple. 4. Ключ NSPrivacyAccessedAPITypes, причины для 5 групп системных вызовов, для UserDefaults часто подходит CA92.1. 5. Манифесты SDK лежат внутри каждого SDK, в списке Apple 86 SDK. 6. Отчёт о приватности в Organizer командой Generate Privacy Report, получается PDF для анкеты App Privacy.Как собрать манифест приватностиШесть шагов в Xcode, по документации Apple на 16.10.20261Создайте файлFile › New › Fileтип App Privacy File2ОтслеживаниеNSPrivacyTrackingYES только вместе со спискомдоменов3Собранные данныеNSPrivacyCollectedDataTypesзначения только из списка Apple4Причины вызововNSPrivacyAccessedAPITypes5 групп, для UserDefaults частоCA92.15Манифесты SDKвнутри каждого SDK86 SDK в списке Apple6ОтчётOrganizer › Generate Privacy ReportPDF для анкеты App Privacy
Причины для пяти групп вызовов обязательны с 1 мая 2024 года, а отчёт Xcode сводит манифесты приложения и SDK в один PDF. По документации Apple, 16.10.2026.

Как добавить манифест по шагам

  1. Создайте PrivacyInfo.xcprivacy в цели приложения через File › New › File › App Privacy File.
  2. Если приложение не отслеживает людей, поставьте NSPrivacyTracking в NO. Если отслеживает, поставьте YES и перечислите домены в NSPrivacyTrackingDomains, без пути и косой черты в конце.
  3. В NSPrivacyCollectedDataTypes опишите каждый собранный тип данных. Значения берите только из списка Apple, на собственных названиях типов и целей отчёт Xcode собирается неправильно.
  4. Найдите в коде вызовы из пяти групп. Частый случай это UserDefaults, на нём же работает @AppStorage в SwiftUI. Если данные читает и пишет только само приложение, подходит причина CA92.1.
  5. Обновите SDK до версий со своим манифестом. Данные SDK в ваш файл не переносят, каждый SDK описывает себя сам.
  6. Соберите архив через Product › Archive, в Organizer нажмите на него с клавишей Control и выберите Generate Privacy Report. Xcode сохранит PDF, по которому удобно заполнять анкету App Privacy.

Частые ошибки

  • Файл не в ресурсах цели. Тогда Xcode не видит манифест, когда собирает отчёт, и ваших данных в PDF нет.
  • Свои значения вместо значений Apple. Неизвестный ключ, неверный тип или домен с путём делают манифест неправильным, и App Store Connect присылает письмо ITMS-91056 с именем и путём файла.
  • Копировать данные SDK в свой манифест. Apple ждёт, что сторонний SDK опишет себя сам, а приложение только свой код. При этом за весь код SDK внутри приложения отвечаете вы.
  • Править чужой манифест в архиве и забыть о подписи. Неправильный файл из SDK можно поправить или удалить в архиве, но подпись архива после этого ломается. Выгружайте такую сборку из Organizer, Xcode подпишет её заново.

Отчёт о приватности перед анкетой App Privacy

Отчёт Xcode сводит манифесты приложения и всех подключённых SDK в один PDF, разбитый так же, как этикетка приватности в App Store. Apple советует держать его под рукой, когда вы отвечаете на вопросы App Privacy.

Агент Appto собирает приложение на SwiftUI в проекте Xcode, а анкету App Privacy в App Store Connect Appto заполняет сама и перед записью ждёт вашего «да». Подробнее на странице о работе с App Store Connect.

Вопросы

Обязателен ли манифест приватности для каждого приложения?

Он нужен, если код приложения обращается к вызовам из пяти групп с заявленной причиной, например к UserDefaults. С 1 мая 2024 года App Store Connect не принимает загрузку без причины в манифесте.

Каким SDK нужен свой манифест?

Всем из списка Apple, на 16.10.2026 в нём 86 названий, среди них Firebase, Alamofire, Flutter и OneSignal. Правило касается любой версии такого SDK и SDK, которые его перепаковывают.

Как сделать отчёт о приватности в Xcode?

Выполните Product › Archive, в Organizer нажмите на архив с клавишей Control и выберите Generate Privacy Report. Xcode сохранит PDF, он открывается в Просмотре.

Что значит письмо ITMS-91056?

В сборке есть манифест с неизвестными ключами или значениями, в письме указаны имя и путь файла. Если файл пришёл из SDK, возьмите его новую версию, если он ваш, уберите лишнее.

Чем манифест отличается от этикетки приватности?

Манифест это файл внутри сборки, его читают Xcode и App Store Connect. Этикетка это раздел страницы в App Store, её заполняют анкетой App Privacy без новой версии.

Сделайте своё приложение в Appto

Appto сама проверит нишу по свежим данным App Store, нарисует экраны, напишет код, оформит страницу в App Store и отправит в Apple с вашего аккаунта или покажет, что нажать в App Store Connect. Работает на вашем Claude Code или Codex.

Скачать для Mac