Реліз iOS-застосунку в App Store: інструкція від архівації до публікації

Перша публікація iOS-застосунку в App Store займає значно більше часу, ніж очікують. Не через технічну складність — а через ланцюжок кроків, кожен з яких можна виконати неправильно та отримати reject через 24–48 годин. Застосунок, відправлений на рев’ю в п’ятницю з помилкою в метаданих, повернеться

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Реліз iOS-застосунку в App Store: інструкція від архівації до публікації
Середній
~2-3 дні

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Перша публікація iOS-застосунку в App Store займає значно більше часу, ніж очікують. Не через технічну складність — а через ланцюжок кроків, кожен з яких можна виконати неправильно та отримати reject через 24–48 годин. Застосунок, відправлений на рев’ю в п’ятницю з помилкою в метаданих, повернеться в понеділок з формальною відмовою за Guideline 2.1 «Performance: App Completeness». Ми у своїй практиці стикалися з такими ситуаціями десятки разів — тому підготували це керівництво, засноване на досвіді публікації понад 50 проєктів. Згідно з App Store Review Guidelines, застосунок має бути повноцінним та стабільним. Для публікації потрібна підписка Apple Developer Program ($99/рік) — це єдиний обов’язковий платіж.

Як підготуватися до публікації iOS-застосунку?

Підготовка App Store Connect: створити запис застосунку, вказати Bundle ID (має збігатися з тим, що в Xcode), Primary Language, Category. Без створення запису Transporter та Xcode Organizer не можуть завантажити білд.

Скріншоти: мінімально обов’язкові розміри для публікації — 6.5" (iPhone 14 Pro Max або аналог) та 5.5" (iPhone 8 Plus). Якщо завантажити лише один розмір — Apple масштабує для інших, але це погіршує візуальну якість лістингу. Для iPad — окремий набір, якщо застосунок підтримує iPad.

Конфіденційність: сьогодні обов’язкове посилання на Privacy Policy. Без неї — reject за Guideline 5.1.1. Також потрібно заповнити Privacy Nutrition Labels в App Store Connect — які дані збираються, з якою метою, чи прив’язані до особи.

Архівування та завантаження

# Через Fastlane fastlane pilot upload --ipa ./build/App.ipa # Або через xcodebuild + Transporter xcodebuild archive \ -scheme MyApp \ -archivePath ./build/MyApp.xcarchive \ -configuration Release xcodebuild -exportArchive \ -archivePath ./build/MyApp.xcarchive \ -exportPath ./build/export \ -exportOptionsPlist ExportOptions.plist 

ExportOptions.plist — ключовий файл. Неправильний method (app-store vs ad-hoc vs development) — і білд створиться, але не підійде для завантаження.

<!-- ExportOptions.plist для App Store --> <?xml version="1.0" encoding="UTF-8"?> <plist version="1.0"> <dict> <key>method</key> <string>app-store</string> <key>teamID</key> <string>YOURTEAMID</string> <key>uploadBitcode</key> <false/> <key>compileBitcode</key> <false/> </dict> </plist> 

Bitcode з останніми версіями Xcode застарів — Apple прибрала його. Якщо в проєкті старі налаштування з ENABLE_BITCODE = YES, виникнуть попередження при архівуванні.

Використання Fastlane скорочує час підготовки релізу в 3-5 разів порівняно з ручним архівуванням — особливо корисно при частих правках. Економія часу завдяки Fastlane знижує витрати на реліз на $300–750 за одну публікацію.

Крок Ручний метод Fastlane
Архівація xcodebuild archive fastlane gym
Підписання manual codesign automatic sign
Завантаження Transporter fastlane pilot
Час 20–30 хв 3–5 хв

Чому App Store рев’ю відхиляє застосунки?

Рев’ю триває від кількох годин до 2–3 днів. Основні причини reject:

Guideline 2.1 — App Completeness: застосунок падає, демо-акаунт не працює, кнопки ведуть в нікуди. Перед відправкою — протестувати на реальному пристрої, не лише симуляторі. Надати тестовий акаунт в Notes to App Review.

Guideline 4.3 — Spam / Copycat: якщо застосунок надто схожий на інший або має замало функціоналу. Новий застосунок від того ж розробника, який дублює вже опублікований — також 4.3.

Guideline 5.1.2 — Data Use and Sharing: запитуєте NSCameraUsageDescription, але камеру реально не використовуєте — відмова. Опис в NSUsageDescription має відповідати реальному використанню.

In-App Purchase: якщо в застосунку є будь-який платний контент або підписки — вони повинні використовувати IAP Apple, не сторонні платіжки. Спроба прийняти оплату через Stripe за цифровий контент — reject за Guideline 3.1.1.

Guideline Типова причина Рішення
2.1 Застосунок неповний або падає Ретельне тестування на реальних пристроях, надання демо-доступу
4.3 Копіювання або спам Унікальний функціонал, відмінності від аналогів
5.1.2 Невідповідність описів використання даних Коректний опис NSCameraUsageDescription та інших ключів
3.1.1 Обхід Apple IAP Використання StoreKit 2 для цифрових товарів
Як подати апеляцію на відмову? Через Resolution Center в App Store Connect. Опишіть, чому рішення несправедливе, і додайте докази. Apple Developer Relations відповідає протягом 1–3 днів. Апеляція працює: відмови з формальних причин при коректному обґрунтуванні часто скасовують.

Управління версіями та фазований реліз

Після схвалення — вибір: негайний реліз або Phased Release. Phased Release розгортає оновлення поступово: 1% → 2% → 5% → 10% → 20% → 50% → 100% користувачів протягом 7 днів. Дозволяє виявити критичні баги до масового оновлення.

Версію та build number потрібно збільшувати з кожним новим завантаженням. CFBundleShortVersionString (видима, наприклад 2.1.0) та CFBundleVersion (build number, тільки зростає). Однаковий build number — Transporter відмовить при завантаженні.

Що входить в роботу з публікації

  • Створення та налаштування запису в App Store Connect (Bundle ID, права, категорії).
  • Підготовка скріншотів для всіх обов’язкових розмірів.
  • Налаштування ExportOptions.plist та підписання коду (code signing).
  • Завантаження білда через Fastlane або Transporter.
  • Супровід рев’ю: відповіді на запитання, виправлення зауважень.
  • Налаштування Phased Release та моніторинг перших відгуків.
  • Надання документації та доступів (App Store Connect, TestFlight).

Процес роботи

  1. Підготовка App Store Connect: створення запису, Privacy Policy, Nutrition Labels, скріншоти.
  2. Налаштування архівування: Signing Config, ExportOptions.plist, перевірка entitlements.
  3. Завантаження білда через Transporter або Fastlane, заповнення метаданих.
  4. Супровід через рев’ю: відповіді на запитання рев’юерів, виправлення зауважень.

Орієнтири за термінами

Підготовка та первинна відправка готового застосунку — 1–2 дні. З урахуванням рев’ю Apple (зазвичай 1–3 дні) — 3–5 робочих днів до публікації. При reject та необхідності доопрацювань — додати ще 1–3 дні.

Ми публікуємо застосунки в App Store понад 7 років — знаємо всі тонкощі та гарантуємо проходження рев’ю з першого разу при виконанні наших рекомендацій. Якщо потрібна допомога з публікацією — оцінимо ваш проєкт та підготуємо все для App Store. Зв’яжіться з нами, щоб розпочати.