Налаштування Google Play Instant для Android (міні-додатки)

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Налаштування Google Play Instant для Android (міні-додатки)
Середній
~3-5 днів
Часті запитання

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

Етапи розробки

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

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Налаштування Google Play Instant для Android (мініапліки)

Google Play Instant дозволяє користувачам запустити частину додатка без встановлення—прямо з веб-браузера, Google Search або Play Store за допомогою кнопки «Спробувати». Варіанти використання включають демо-версії ігор, адаптацію нових користувачів та попередній перегляд контенту через deep link без необхідності попередньої встановлення.

Технічно миттєвий додаток (instant app) — це той же APK зі суворими обмеженнями щодо розміру та функціональності. Це не окремий додаток—це підмножина існуючого.

Технічні обмеження

Розмір: Миттєвий досвід не може перевищувати 15 МБ. Це основне обмеження. Для додатків з численними ресурсами, шрифтами та залежностями це становить значний виклик. Android App Bundle з динамічними модулями (dynamic-feature) дозволяє включити лише необхідну функціональність у миттєвий досвід.

Обмеження API: Миттєві додатки працюють у пісочниці. Недоступні наступні API: READ_EXTERNAL_STORAGE, WRITE_EXTERNAL_STORAGE, доступ до контактів, SMS та постійні сповіщення. Деякі апаратні API обмежені. Bluetooth, камера та мікрофон доступні з дозволу користувача, як у звичайних додатках.

INSTANT_APPS_ACCESS дозвіл необхідно додати до маніфесту миттєвого модуля.

Зберігання: SharedPreferences у миттєвій області часткові та очищуються. Щоб зберегти дані між миттєвою та встановленою версіями, використовуйте InstantApps.getPackageManagerCompat() з Cookie API—малий буфер (~16 КБ) для передачі стану під час встановлення.

Структура проекту з миттєвим додатком

Додаток розділяється на модулі через Android App Bundle:

  • app — базовий модуль (завжди встановлюється)
  • feature_instant — модуль з dist:instant="true", включений у миттєвий досвід
  • решта feature_* — динамічні модулі, завантажуються за запитом

У feature_instant/AndroidManifest.xml:

<dist:module dist:instant="true">
    <dist:delivery>
        <dist:install-time />
    </dist:delivery>
</dist:module>

install-time для миттєвого засобу означає «включити у миттєвий досвід», а не «встановити з базовим модулем».

Код миттєвого модуля запускається через намір (intent) з deep link—той же URL, який використовується для App Links. Коли користувачі встановлюють додаток, миттєвий досвід безперервно переходить у встановлену версію.

Поширені перешкоди для впровадження

Обмеження розміру 15 МБ. Аналіз APK за допомогою apkanalyzer показує, що займає місце: зазвичай неоптимізовані drawable (webp замість png), шрифти (тільки необхідні ваги через downloadable fonts) та великі бібліотеки. ProGuard/R8 з isMinifyEnabled = true та isShrinkResources = true є обов'язковими. Іноді залежності повинні бути замінені—наприклад, використання Static Maps API з ImageView замість повного Google Maps SDK.

Навігація. Миттєві додатки запускаються через URL. Якщо навігація побудована на внутрішніх ID замість deep links, потрібна переробка. NavDeepLinkBuilder у Navigation Component спрощує це, але вимагає, щоб кожен екран миттєвого досвіду мав відповідний URL.

Тестування. Ви можете запустити миттєвий додаток безпосередньо з Android Studio, використовуючи конфігурацію з Launch: Instant App URL. На пристрої ввімкніть «Google Play Instant» в Developer Options. Без реального тестування пристрою важко перевірити обмеження пісочниці.

Cookie API для передачі стану. Якщо користувач завершує адаптацію у миттєвій версії, а потім встановлює додаток, без Cookie API цей прогрес втрачається. Впровадження: зберігайте дані у cookie через InstantApps.setInstantAppCookie() у миттєвій версії; при першому запуску встановленої версії отримайте його через InstantApps.getInstantAppCookie().

Налаштування Google Play Instant для існуючого додатка займає 3–5 днів, за умови, що додаток вже використовує багатомодульну структуру. Для монолітного проекту попередня модуляризація займає додатковий час. Вартість розраховується індивідуально.