Як написати сторінки відповідності вимогам за допомогою агента для програмування
Факти, потрібні цим сторінкам, уже є у вашому репозиторії. Що агент справді може вивести, про що мусить запитати вас і які межі варто встановити, перш ніж його допускати.
Агент для програмування, що може читати ваш репозиторій, уже має факти, потрібні цим сторінкам: назву застосунку, bundle id, посилання на магазини й кожен SDK у збірці. З правильними інструментами він складає чернетки сторінок на основі цих доказів і дає вам посилання для перегляду — ви перевіряєте й публікуєте.
Зробіть це за кілька хвилин
AppFoyer розміщує сторінки, про які цей посібник, — політику конфіденційності, умови, підтримку, видалення акаунта та app-ads.txt — на власному піддомені, без вашого домену й сервера. Один застосунок — безкоштовно, і ніщо з того, чого вимагає магазин, ніколи не буває за платним доступом.
Перевірено 25 вересня 2026 р.. Політики магазинів змінюються, іноді без попередження. Усе нижче посилається на офіційну документацію, і авторитетом є та сторінка, а не ця. Якщо вони розходяться, правий магазин. Цей посібник перекладено з англійської; цитати з документації магазинів наведено в англійському оригіналі.
Написання політики конфіденційності — здебільшого переписування. Складну частину — з’ясування того, що ваш застосунок насправді збирає, — закривають файли, які вже лежать у вашому репозиторії, а це саме та робота, з якою добре справляється агент із доступом до файлової системи.
Що агент справді може вивести
Лише з файлів збірки, нічого вас не питаючи:
| Факт | Звідки він береться |
|---|---|
| Назва застосунку | strings.xml app_name, CFBundleDisplayName, pubspec.yaml, app.json |
| Application id / bundle id | applicationId у Gradle, PRODUCT_BUNDLE_IDENTIFIER у проєкті Xcode |
| Платформа | Які з цих файлів існують |
| Збір даних | Кожен сторонній SDK у build.gradle, Podfile, Package.swift, pubspec.yaml, package.json |
| Дозволи та рядки опису використання | AndroidManifest.xml, Info.plist |
| Ідентифікатор рекламного видавця | Ідентифікатор застосунку AdMob у маніфесті чи plist |
| Запропонований URL у Play | Побудований з application id — пропозиція, а не факт, адже застосунку може не бути в магазині |
Ця таблиця — суть політики конфіденційності. Вона ж є відповіддю на питання “що збирає мій застосунок”, у якому більшість розробників помиляються, відповідаючи з пам’яті, і не помиляються, коли читають файли.
Чого він не може знати й мусить запитати
Агент, який це вигадує, гірший, ніж відсутність агента:
- Назву вашої юридичної особи та юрисдикцію, зазначену у ваших умовах.
- Адресу підтримки, яку ви справді читаєте. Він ніколи не повинен угадувати її з конфігурації git чи з логіна розробника Apple, знайденого у файлі fastlane.
- Ваш справжній App Store id, якщо його немає в конфігурації fastlane, — числовий id вивести неможливо.
- Чи застосунок уже опубліковано і на якій сторінці в магазині.
- Бізнесові факти: чи продаєте ви підписки, чи є діти цільовою аудиторією, чи передаєте ви дані партнерові, який не залишає слідів у списку залежностей.
- Будь-що про ваш бекенд. Ніщо в репозиторії не каже, як довго ви зберігаєте дані.
Хороший результат виглядає так: усе, що можна вивести, виведено з файлом і рядком, звідки воно взялося, а залишається короткий список питань, на які можете відповісти лише ви.
Межі, на яких варто наполягти
Перш ніж допускати будь-якого агента до цього, визначтеся з таким — саме це відрізняє корисний інструмент від джерела ризику:
- Ніщо не публікується без натискання людини. Згенерована юридична сторінка, що стає публічною без перевірки, — це весь ризик в одному реченні.
- Кожен виведений факт має джерело. “Я знайшов
firebase-crashlyticsуapp/build.gradle:47” можна перевірити; “ваш застосунок збирає діагностичні дані” — ні. - Він не комітить і не пушить. Запропонувати diff — це допомога; переписати ваш репозиторій — ні.
- Він надсилає за межі вашого комп’ютера мінімум. Вивести факти локально й надіслати висновки — зовсім не те саме, що завантажити ваш вихідний код.
- Він каже, чого не знає. Агент, що заповнює заповнювач правдоподібним реченням, створив документ про відповідність вимогам, який містить здогадку.
Поставте ці п’ять питань будь-якому інструменту цієї категорії, зокрема й нашому.
Де людина лишається в процесі
Агент складає чернетку; рішення ухвалюєте ви. Конкретно саме ви:
- підтверджуєте відповіді на питання, які він не зміг вивести;
- читаєте розділ про сторонні сервіси — ту частину, яку рецензент порівнює з вашою формою Data safety;
- визначаєте строки зберігання, бо лише ви знаєте свій бекенд;
- натискаєте «опублікувати»;
- заповнюєте поля в консолі магазину — жоден агент не повинен перебувати у вашій Play Console.
Якщо ваш застосунок стосується грошей, даних про здоров’я чи дітей, година роботи юриста все одно має бути в цьому списку. Шаблон, складений на основі доказів, — кращий початок, ніж порожня сторінка; але це не консультація.
Що тут робить AppFoyer
Є плагін для Claude Code. Ви встановлюєте його, кажете “make this app store-ready”, і skill читає
ваші файли збірки, виводить наведену вище таблицю з файлом і рядком для кожного факту, питає лише те,
чого не зміг знайти, і складає чернетки всіх п’яти сторінок плюс app-ads.txt. Потім він дає вам URL
для перегляду в дашборді.
Межі, описані вище, забезпечуються технічно, а не лише обіцяються. Облікові дані агента відкривають
фіксований набір інструментів — перегляд і читання застосунків, їх створення (по одному на flavor),
оновлення налаштувань, чернетки сторінок, app-ads.txt, чекліст, іконка застосунку та власна адреса, —
і публікації серед них немає: request_publish дає вам посилання, а не живу сторінку. Іконка й
адреса — дві речі без кроку чернетки, тому агент повідомляє, коли їх установив, і не замінить адресу,
якою ви вже користуєтеся, не запитавши. Агент не може опублікувати чи зняти з публікації, видалити
застосунок, змінити канали сповіщень або торкатися вашої скриньки запитів на видалення; це дії лише в
межах сеансу, які ви виконуєте самі. Повний список інструментів і робочі приклади — на
сторінці документації агента. Skill ніколи не комітить і не пушить і пропонує diff лише
тоді, коли ви просите його вбудувати готові URL назад у застосунок.
Якщо ваш агент — не Claude Code, а Cursor, Codex чи чат-асистент, для сторінки конфіденційності є маршрут через копіювання та вставлення: редактор дає вам промпт, уже заповнений даними вашого застосунку, ви запускаєте його будь-де та вставляєте відповідь назад. Промпт і пояснення, чому він сформульований саме так, — у посібнику Як написати політику конфіденційності за допомогою AI-асистента.
Якщо агента у вас немає, те саме доступне як коротка форма. Шлях з агентом швидший, бо відповіді вже є у вашому репозиторії, — але це не інший продукт.
Офіційні джерела
- Надання інформації для розділу Data safety в Google Play — Довідка Google Play Console, про те, що дані SDK декларуєте саме ви
- Відомості про конфіденційність застосунку в App Store — Apple
- Конфіденційність і безпека у Firebase — приклад розкриття для окремого SDK, яке читає агент