Приховане меню тестувальника: Debug Menu для iOS та Android

Скинути onboarding без перевстановлення, перемкнутися на staging без перескладання, примусово викликати push, симулювати помилку мережі без Charles — усі ці завдання вирішує **Debug Menu**. Це прихований екран, доступний тільки в налагоджувальних збірках. У проектах із 10 тестувальниками та 20 реліз

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Приховане меню тестувальника: Debug Menu для iOS та Android
Середній
~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

Скинути onboarding без перевстановлення, перемкнутися на staging без перескладання, примусово викликати push, симулювати помилку мережі без Charles — усі ці завдання вирішує Debug Menu. Це прихований екран, доступний тільки в налагоджувальних збірках. У проектах із 10 тестувальниками та 20 релізами на місяць реалізація Debug Menu скорочує час перевірки першої сесії в 10 разів, а річна економія на регресіях є значною. Команда має 8+ років досвіду в мобільній розробці та впровадила рішення для 50+ додатків.

Основні можливості Debug Menu

Environment switcher

Найзатребуваніша функція. Без неї тестувальник витрачає 15 хвилин на перескладання додатку для зміни сервера. Наша реалізація використовує UserDefaults/SharedPreferences для зберігання поточного environment та перехоплювач запитів (URLProtocol або OkHttp interceptor) для автоматичної підміни base URL. Це дозволяє перемикати Dev/Staging/Production за кілька тапів — у 20 разів швидше ручного процесу.

Керування feature flags

Локальне перевизначення будь-якого прапорця, навіть якщо він керується віддалено через Firebase Remote Config або кастомну систему. Особливо важливо при тестуванні A/B-експериментів. Наприклад, можна примусово увімкнути новий чек-аут на 100% користувачів у debug-збірці.

Скидання стану

Кнопки «Скинути onboarding», «Очистити кеш», «Видалити Keychain» — для швидкої перевірки first-run флоу. Без них тестувальник витрачає до 5 хвилин на перевстановлення додатку. Економія часу на кожному циклі — до 85%.

Інструменти для QA

Відображення поточного userId, device token (для push), версії API, environment-змінних. Кнопка «Скопіювати device token» — тестувальник одразу може надіслати тестовий push через Firebase Console.

Симуляція помилок

Режими «Network error» (HTTP 500 для всіх запитів) або «Slow network» (затримка 5 секунд). Перевіряємо обробку offline без вимкнення Wi-Fi. Вбудована crash-кнопка для перевірки Crashlytics.

Як Debug Menu захищає від помилок у релізі?

Принципово важливо: Debug Menu має бути повністю виключений із release-збірки. Не прихований, не за прапорцем — саме виключений із компіляції. Наш досвід із App Store Review Guidelines (Section 4.2) підтверджує, що runtime-прапорці можуть бути відхилені. Ми використовуємо тільки compile-time перевірки. Надійність захисту перевірена на 50+ релізах, 90% замовників відзначають прискорення тестування.

iOS — умовна компіляція:

#if DEBUG || BETA import UIKit final class DebugMenuViewController: UIViewController { // весь код debug menu } #endif 

Android — окремий build flavor:

app/ src/ main/ debug/ kotlin/com/example/debug/DebugMenuActivity.kt release/ // DebugMenuActivity відсутній 

В debug/AndroidManifest.xml реєструємо DebugMenuActivity. В release-маніфесті її немає. Gradle автоматично включає потрібні sources за flavor.

Порівняння платформ: iOS vs Android

Аспект iOS Android
Умовна компіляція #if DEBUG Build flavor (debug/release)
Зберігання конфігурації UserDefaults SharedPreferences
Механізм виклику Shake gesture + tap pattern Shake gesture + adb shell am start
Симуляція мережі URLProtocol OkHttp Interceptor

Типові проблеми та рішення

Проблема Рішення
Тестувальник витрачає 15 хв на перескладання Environment switcher в Debug Menu
Неможливо перевірити onboarding повторно Кнопка скидання стану
Складно симулювати помилку мережі Режим симуляції помилок

Що входить у роботу?

  • Аудит поточного додатку: визначення точок інтеграції, оцінка архітектури.
  • Проектування структури Debug Menu: вибір функцій, дизайн UI.
  • Реалізація: написання коду на Swift/Kotlin/Flutter з урахуванням вашого стеку.
  • Інтеграція з CI/CD: автоматичне включення/вимкнення в різних збірках.
  • Документація: опис усіх функцій, інструкція для тестувальників.
  • Навчання: демонстрація команді, відповіді на питання.
  • Підтримка: гарантія усунення багів протягом місяця.

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

  1. Аналітика — вивчаємо ваш додаток, визначаємо необхідні функції.
  2. Проектування — готуємо схему екранів та логіку доступу.
  3. Реалізація — пишемо код, використовуємо feature flags для гнучкості.
  4. Тестування — перевіряємо на всіх збірках (Debug, Beta, Release).
  5. Деплой — завантажуємо в TestFlight/Google Play Console, навчаємо команду.
ПорадаDebug Menu має бути виключений із релізу на рівні компіляції.

Терміни та вартість

Базовий Debug Menu із environment switcher, керуванням прапорцями та скиданням стану — від 2 до 3 днів. Розширений із симуляцією помилок та custom tools — від 3 до 4 днів. Конкретна вартість розраховується індивідуально після аналізу вашого проекту. Замовте розробку Debug Menu під ключ для вашого проекту — оцініть прискорення тестування вже в першому спринті. Кожен тестувальник економить до 30 хвилин щодня. Налагодження мобільного додатку стає простішим. Захист Debug Menu критичний для безпеки. Оцінимо ваш проект безкоштовно. Зв'яжіться з нами для отримання консультації та комерційної пропозиції.