App Store чи Google Play відхилив білд?
Перетягніть .ipa, .apk чи .aab у безкоштовну перевірку й побачте в браузері, що стори відхилять. Якщо хочете, щоб це зробили ми, аудит готовності до сторів ще й звіряє форми лістингу з білдом.
190 € · 2 робочі дні, якщо хочете, щоб це зробили ми
Коди відмов
| Код | Що означає |
|---|---|
ITMS-91053 | API з обовʼязковим обґрунтуванням без оголошеної причини |
ITMS-90683 | Захищений ресурс без пояснення в Info.plist |
90068 | Мінімальна iOS нижче 15: зараз попередження, з весни 2027 відмова |
ITMS-90208 | Фреймворк заявляє старішу мінімальну iOS, ніж його бінарка |
ITMS-90809 | Посилання на застарілий UIWebView |
ITMS-90685 | Два бандли в застосунку з однаковим ідентифікатором |
- Що таке ITMS-91053?
- Відмова Apple за виклик API з обовʼязковим обґрунтуванням без оголошеної причини у privacy manifest. Вона приходить під час завантаження, перелічує знайдені API, і попереджувального прогону перед тим немає. Аудит готовності до сторів здебільшого саме про цей клас проблем. Як виправити
- Що таке ITMS-90683?
- Відмова Apple для білда, який може звернутися до камери, геолокації, контактів чи іншого захищеного ресурсу, а в Info.plist немає речення, навіщо. Вона береться з бінарки, а не з того, що робить застосунок: плагін, який підключає камеру, приносить цю вимогу, навіть якщо камеру ніхто ніколи не відкриває. Тому білд, що чудово працює на телефоні, так і не доходить до TestFlight. Ми називаємо ключ і плагін, через який він потрібен. Як виправити
- Що означає попередження 90068?
- App Store Connect надсилає його, коли MinimumOSVersion застосунку нижча за iOS 15. Сьогодні білд усе одно доставляється, а попередження приходить листом; з весни 2027 завантаження відхилятимуть. Flutter-проєкт має 13.0, доки хтось це не змінить, тож більшість команд наражаються на це, нічого не зробивши неправильно. Як виправити
- Що таке ITMS-90208?
- Відмова Apple, коли фреймворк у застосунку заявляє у власному Info.plist старішу мінімальну iOS, ніж та, під яку зібрано його бінарку. До Flutter 3.41 це зазвичай був App.framework: його Info.plist копіювався з
ios/Flutter/AppFrameworkInfo.plistі зберігав старий MinimumOSVersion. Починаючи з 3.41 збірка записує цей ключ сама, тож оновлення Flutter це виправляє; на старішій версії вкажіть там версію, під яку зібрано бінарку. Як виправити - Що таке ITMS-90809?
- Відмова Apple за будь-яке посилання на UIWebView. Нові застосунки відхиляють із квітня 2020, оновлення — з грудня 2020. Досить самого посилання, навіть якщо вебперегляд ніколи не показується; воно майже завжди з давнього SDK, і рішення — оновити або прибрати цей SDK. Як виправити
- Що таке ITMS-90685?
- Відмова Apple, коли два бандли в застосунку мають однаковий CFBundleIdentifier: зазвичай розширення з ідентифікатором самого застосунку або фреймворк, вбудований у застосунок і ще раз у розширення. Дайте кожному розширенню власний ідентифікатор під ідентифікатором застосунку і вбудовуйте кожен фреймворк один раз. Як виправити
Тримається актуальним
Строки App Store і Google Play, 2026–2027
Обидва стори піднімають вимоги щороку, і перелік, написаний торік, тихо перестає бути переліком. Ось те, що діє сьогодні. Дата нижче — коли це востаннє звіряли з тим, що Apple і Google справді публікують.
| Вимога | Що стається | З якого часу |
|---|---|---|
| Privacy manifest, API з обовʼязковим обґрунтуванням | Завантаження відхиляють | Діє |
| Пояснення до камери, геолокації, контактів | Завантаження відхиляють | Діє |
| Видалення акаунта в застосунку | Відхиляють на рев'ю | Діє |
| «Увійти з Apple» поряд зі стороннім входом | Відхиляють на рев'ю | Діє |
| Google Play: API 36 для оновлень, 35 щоб лишатись у видачі | Оновлення відхиляють, застосунок ховають | 31.08.2026 |
| Play Billing Library 8 | Нові застосунки й оновлення відхиляють | 31.08.2026 |
| Google Play: декларація для точної геолокації | Потрібна декларація | 27.01.2027 |
| Нативні бібліотеки на сторінках памʼяті 16 KB | Оновлення відхиляють | 01.02.2027 |
| MinimumOSVersion 15.0 | Зараз попередження 90068, згодом відмова | Весна 2027 |
| SDK iOS 27 для завантажень | Завантаження відхиляють | Квітень 2027 |
Востаннє звірено з опублікованими вимогами Apple і Google 16 вересня 2026. Коли планка піднімається, перевірки йдуть за нею, і кожен звіт називає, які перевірки виконались, а які ні.
Що перевіряє аудит готовності до сторів
- Відсутній privacy manifest або SDK, що йде без нього
- API з обовʼязковим обґрунтуванням, викликані без оголошеної причини — відмова
ITMS-91053, яка приходить без попередження - Плагін, який звертається до камери, геолокації чи контактів без
…UsageDescriptionв Info.plist —ITMS-90683, що зупиняє завантаження ще до TestFlight, часто через функцію, якою застосунок навіть не користується - Іконка для App Store з прозорістю, фреймворк із неправильною мінімальною версією iOS (
ITMS-90208) або відсутня відповідь про шифрування, через яку кожен білд чекає зі статусом Missing Compliance - Плагін, що реєструється на пуші без потрібного entitlement, тож сповіщення не приходять, посилання на UIWebView (
ITMS-90809) або два бандли з однаковим ідентифікатором (ITMS-90685) - Стороннє входження без рівноцінної альтернативи поруч (Настанова 4.8)
- Немає способу видалити акаунт зсередини застосунку (Настанова 5.1.1(v) і політика Google щодо видалення даних, яка вимагає ще й шлях поза застосунком)
- Target API level, який Google Play більше не приймає
- Нативні бібліотеки, які не завантажуються на сторінках памʼяті 16 KB — з 1 лютого 2027 Google Play не випускатиме таких оновлень, і зазвичай винні плагіни з готовим скомпільованим кодом
- Реліз, підписаний debug-ключем, білд із позначкою debuggable або Play Billing Library старша за версію 8
- Дозволи, які Google Play дає лише певним типам застосунків, — фонова геолокація, фото й відео, усі встановлені застосунки, усі файли — і ті, що треба задекларувати, серед них точна геолокація з 27 січня 2027
- Мітка приватності або форма Data safety, що каже менше, ніж робить білд
- URL підтримки або політики приватності в лістингу, який більше не відповідає
Стандарти й правила сторів, за якими ми перевіряємо
- App Store Review Guidelines
- 4.8 · 5.1.1(v) · 1.5 і те, за що відхиляють на рев'ю
- PrivacyInfo.xcprivacy
- обовʼязковий з 1 травня 2024 — файл, через який ITMS-91053
- MinimumOSVersion
- сьогодні попередження 90068, відмова з весни 2027
- SDK iOS 27
- обовʼязковий для завантажень із квітня 2027
- Play target API level
- 36 з 31 серпня 2026 · 35 щоб лишитись у видачі
- Play Data safety
- і видалення акаунта в застосунку
Надсилаєте білд. Отримуєте звіт поштою.
| Що ви надсилаєте | Перевірки сторів | Доступність |
|---|---|---|
.apk — Android | Повністю | Повністю |
.app — збірка iOS під симулятор | Повністю | Повністю |
.ipa — збірка iOS під пристрій | Повністю | Неможливо |
| Запрошення в TestFlight | Повністю | Руками, +60% |
Ціна
Аудит готовності до сторів — 190 €, 2 робочі дні. Для однієї конкретної відмови чи питання до того, як ви почнете робити, — консультація, 90 €/година.
Замовити аудит
Надішліть білд. Отримайте фіксовану ціну й дату.
Напишіть на hello@checkapp.dev: білд або посилання на нього і один рядок про те, що потрібно — аудит доступності, перевірка сторів чи обидва. Фіксована ціна й дата повернуться того ж робочого дня.