Никакого секрета тут нет, хотя на заре появления уведомления об обновлении многие пользователи принимали Instant Apps за вирус. На деле же это приложение относится к сервисам Гугла и в разделе с приложениями не отражается (как минимум на момент написания статьи). Instant Apps отвечает за приложения с быстрым запуском. Не поняли? Это специальная технология, которая позволяет запускать приложения, не устанавливая их, из Play Market. Это нужно для того, чтобы пользователь решал, нужно ли устанавливать приложение, не устанавливая его на свой смартфон — опробовав его. Согласитесь, идея довольно интересная. Обновляется же Instant Apps автоматически и отключить его привычными способами нельзя. Наверняка это можно сделать специальными программами вроде Titanium Backup, но это теоретически может превратить смартфон в «кирпич», да и для установки Titanium Backup нужны рут-права. В общем, пусть себе обновляется.

Настройки Instant Apps вы можете обнаружить в разделе Google. Для этого откройте «Настройки» на рабочем столе.

Зайдите в раздел Google.

Нажмите на строчку Google Play Instant (может называться «Приложения с мгновенным запуском»).

Выберите свой аккаунт.

Подтвердите действие.

Теперь найдите приложение с мгновенным запуском в Play Market. Пусть будет приложение Viki. На странице приложения вы видите кнопку «Попробовать» — она говорит о том, что указанное приложение поддерживает мгновенный запуск. Нажмите на нее.

Дождитесь запуска.

Готово.

Если приложение понравилось, можете установить его.

А вот что интересно: несмотря на то, что технология существует не один год на момент написания статьи, приложений с мгновенным запуском в Play Market — мизер.

Instant Apps (переводится как «Приложения с мгновенным запуском») — новая технология от компании Google, которая позволяет опробовать приложение без установки на устройство. При включенной функции вы можете зайти в Play Market и опробовать приложение без установки, если оно поддерживает такой функционал.

Что касается самого обновления приложения, происходит это в автоматическом режиме, причем пользователь не в состоянии на это повлиять, поэтому обновление происходит при подключении к сети интернет. Выглядит на экране смартфона это примерно так:

Насколько нам известно, отключить автоматическое обновление Instant Apps можно только заморозкой приложения Google Play services for Instant Apps с помощью, например, Titanium Backup, однако для него требуются рут-права. Честно говоря, в заморозке или тем более удаления этого приложения, на наш взгляд, нет никакого смысла.

Что касается автоматического обновления приложения, то связано это, судя по всему, с добавлением новых приложений в Play Market, которые поддерживают мгновенный запуск.

Как опробовать приложения с быстрым запуском?

На момент написания статьи приложений с поддержкой быстрого запуска в Play Market сравнительно мало, однако список расширяется.

Что необходимо сделать? Первым делом надо разрешить использование приложений с быстрым запуском. Для этого зайдите в настройки своего смартфона на базе Android.

Найдите раздел Google, откройте его.

Здесь вы увидите массу подразделов, вам нужен «Приложения с мгновенным запуском».

Переводите переключатель в положение «Вкл».

Подтверждаете действие, нажав ОК.

Теперь открываете Play Market и ищите приложения с поддержкой быстрого запуска. Например, Vimeo. При переходе на страницу приложения вы увидите кнопку «Попробовать» — нажмите на нее.

Дождитесь загрузки.

Протеститруйте приложение и, при необходимости, установите его.

Если кратко описать назначение технологии, то она необходима для упрощения процесса оплаты услуг и товаров в интернете, без потребности в установке дополнительного ПО на Ваш гаджет. Давайте разбираться!

Что такое Instant Apps?

Если перевести дословно это словосочетание, то получим выражение – «приложения с мгновенным запуском». Мы имеем дело с функционалом операционной системы Андроид, который позволяет просматривать содержимое из Гугл Плей до того, как Вы установите его в память устройства. Предварительно на смартфон скачивается небольшой файл с обзором функциональных возможностей программы или сервиса, Вы внимательно просматриваете контент и принимаете решение – скачивать полную версию софта или нет. Таким образом, Вы экономите время и «дисковое» пространство, не забивая его прогами, которые впоследствии могут оказаться бесполезными.

НО, есть ограничение! Не все приложения поддерживают такой режим. Его реализация и внедрение ложатся на плечи разработчиков. Если они создадут адаптацию своей утилиты с поддержкой приложения Google Play Services for Instant Apps, то на странице загрузки в официальном магазине Гугл Вы увидите специальную кнопку «Попробовать». На данный момент перечень не слишком большой, но зарубежные компании активно внедряют опцию в своё ПО (Buzzfeed, Periscope, Wish).

Рассмотрим пример с Баззфид (новостной агреагтор).

  • Переходим по ссылке и видим нужную нам кнопку, позволяющую протестировать программу до установки.
  • После нажатия запускается встроенный браузер с названием и уведомлением об открытии приложения без инсталляции. Можно почитать условия соглашения или же сразу выбрать «Continue» (продолжить).
  • Спустя несколько секунд загрузится предварительная версия, изучите возможности софта. Если нравиться, то вверху нажимаем «Install» для скачивания в память.

Как подключить?

Не на всех моделях телефонов функционал доступен по умолчанию (присутствует практически повсеместно, начиная с версии Андроид 6.0.

Google Play Services for Instant Apps скачать из официальных источников нельзя. Если найдете в сети подобные сайты – обходите их стороной, иначе подцепите вирус. Необходимая опция встроена в Android и не может быть установлена отдельно (разве что путём прошивки устройства, но этот способ я не буду описывать).

А для включения возможности предварительного просмотра следует:

  • Зайти в «Настройки» девайса;
  • Открыть раздел «Google» — «Приложения с мгновенным запуском» и активировать переключатель:

Здесь же будет отображаться перечень софта, который вы уже смотрели ранее.

Устранение возможных проблем

Чаще всего пользователи жалуются, что Instant Apps загружены без разрешения владельца телефона, прога сама запускается и автоматически обновляется – будто живет своей жизнью. К сожалению, в Гугл считают подобное поведение вполне нормальным и естественным. Поэтому, нужно либо смириться, либо отключить опцию (смотрим инструкцию выше).

На самом деле, IA – это очередная ступень развития интернета. Просто мы пока не привыкли к подобному, оно вызывает у нас отчуждение. А уже очень скоро для совершения покупок в интернет магазинах нам не нужно будет заходить на сайт, долго искать нужный товар и проходить через несколько шагов регистрации, оформления заказа. Достаточно будет воспользоваться Google Поиском чтобы найти продукт, и затем через Instant Apps сразу будет подгружаться страница с описанием и кнопкой покупки от соответствующего магазина.

Инстант Аппс является помощником и предоставляет рекомендации, согласно пользовательским интересам, которые некоторыми юзерами воспринимаются как навязчивая реклама. Отсюда и неприязнь. Если это Вам не нужно, просто зайдите в настройки, категория «Google» и отключите приложения с мгновенным запуском.

Автор рекомендует:

Видео

Вот и разобрались Google Play Services for Instant Apps что это такое, как активировать. Если остались вопросы – милости прошу в комментарии.

С уважением, Виктор!

06.12.201710:006830 Виктор Фельк Информационный портал IT Техник

В этой статье рассмотрим, что такое Instant App, зачем он нужен и как создать такое приложение?

Еще в прошлом году на DroidCon я слышал об этой теме. В этом году о ней тоже говорили. Наконец то у меня дошли руки посмотреть подробнее. В этой статье я расскажу, что мне удалось понять. Кода здесь практически не будет, только поверхностный разбор. И в конце несколько полезных ссылок для дальнейшего изучения.

Пример

Давайте сразу посмотрим пример. Есть такой видеохостинг — Vimeo. И у них есть свое Android приложение на маркете.

Если загуглить, например, «vimeo video», то гугл в результатах покажет несколько видео, нажав на которые можно перейти на Vimeo сайт. Т.е. браузер откроет ссылку вида https://vimeo.com/236370796. Но если делать это на Android смартфоне, на котором установлено Vimeo приложение, то оно и откроется вместо сайта. Система видит, что есть приложение, которое умеет открывать такую ссылку и запускает его.

Если же приложение Vimeo не установлено, то может открыться его Instant App версия.

Это приложение, которые мы даже явно не устанавливали. Система сама загрузила и установила его, и открыла в нем видео. (Не знаю почему рекордер не записал видео, которое проигрывается в верхней части экрана, но оно там есть). Обратите внимание также, что в этом приложении есть кнопка для перехода к установке полной версии с маркета.

Если у вас не запускается Instant App, то убедитесь, что он включен в настройках системы: Settings -> Google -> Instant App. Если у вас в настройках нет пункта Instant App, значит ваше устройство его не поддерживает.

Т.е. система перехватила ссылку, определила, что для нее есть Instant App приложение, скачала его и запустила. Ссылка играет очень важную роль в этой технологии. По сути URL — это точка входа (entry point) в приложение. Чуть позже я расскажу, как реализуется эта привязка.

А вот так выглядит полноценная версия приложения Vimeo, установленная с маркета.

Видно, что экраны обоих версий очень похожи, но у Instant App версии функционал ограничен. Instant App — это light версия основного приложения. Как мы уже видели, она может быть быстро подгружена и отображена при нажатии на ссылку.

Зачем нужен Instant App

Зачем это может понадобиться? Самый очевидный ответ — чтобы получить больше установок вашего приложения. Пользователь находит что-то в гугле (или просто получает ссылку в мессенджере, почте и т.п.), нажимает на ссылку и у него открывается ваше Instant App приложение. Оно позволяет пользователю увидеть примерный функционал и призывает установить полную версию. Тем самым вы получите нового пользователя. Т.е. Instant App — это классическая демоверсия приложения, которая помогает пользователю принять решение об установке полноценной версии.

Как создать Instant App приложение

Давайте разбираться, откуда взялась эта Instant App версия и как ее создать.

Создана она в том же самом проекте, что и основное приложение. Но чтобы была возможность создавать легковесную и ограниченную версию, необходимо разделить код основного приложения на модули.

О каких модулях речь? О тех самых, с которыми мы работаем в Android Studio. По умолчанию у нас создается только модуль app. Если мы работаем по Clean Architecture, то обычно создаем еще несколько модулей. А если мы собираемся создавать Instant App приложение, то мы выносим в модули отдельные фичи (features) приложения.

В примере с Vimeo такая фича — это экран просмотра видео. Т.е. в приложении есть какое-то Activity, которое отвечает за этот экран. Оно вынесено в отдельный модуль. Назовем этот модуль — videoplay. В этот модуль кроме Actiivty мы выносим используемые им классы — адаптеры, презентеры, кастомные вьюхи, и пр. Т.е. тут должны быть классы, которые нужны для работы только этому Activity и никому больше.

Для общеиспользуемых репозиториев и прочих классов, которые будут использоваться в модулях, предназначен отдельный модуль, который называется base.

В каждом feature-модуле прописана зависимость от base-модуля:

dependencies {      implementation project(':base')      ...  }  

Впрочем, это не мешает модулю base быть feature-модулем. Он также может содержать в себе Activity.

В итоге ваш проект состоит из одного base-модуля и нескольких feature-модулей. Из этого всего мы можем собрать два типа приложения.

Первое — это обычный полноценный APK, который включит в себя все ваши features-модули.

Второе — это ограниченное Instant App приложение, которое включит в себя base-модуль и те feature-модули, которые вы хотите видеть в этом приложении.

Чтобы обеспечить нам возможность собрать два разных приложения из одного кода, в Instant App проекте есть два модуля сборки: installed и instant.

installed соберет для нас полноценное приложение, а instant — Instant App версию.

В этих модулях есть gradle файлы, в которых мы прописываем feature-модули, который будут использованы при сборке приложения.

dependencies {     implementation project(':base')     implementation project(':feature1')     implementation project(':feature2')  }

Соответственно, в gradle файле модуля installed мы обычно указываем все feature-модули, чтобы получить APK с полным функционалом. А в gradle файле instant мы указываем только те features-модули, которые хотим видеть в Instant App приложении.

Модуль installed соберет APK, который будет использовать модули как библиотеки. А модуль instant сделает отдельный APK из каждого модуля и запакует все эти APK в один ZIP.

Маркет

Какую из этих двух версий приложения надо заливать на маркет?

Полноценный APK обязательно должен там быть. А вот Instant App — по вашему желанию. Если он вам нужен, то создавайте и заливайте.

Как программно определить версию

Т.к. обе версии приложения используют один и тот же код, то в этом коде может возникнуть необходимость проверять, в какой именно версии мы сейчас находимся. Для этого можно использовать метод isInstantApp.

Activity = модуль

И что, теперь нужно каждое Activity выносить в отдельный модуль?

Не нужно. Выносите в отдельные feature-модули только те экраны, который вы хотите видеть в Instant App. А весь остальной код можете оставить в одном отдельном feature-модуле, который просто не будет включен в Instant App. Не забудьте только в base-модуль поместить классы, которые нужны будут для работы feature-модулей.

URL

Я уже упоминал, что URL является входной точкой в Activity.

Каждый feature-модуль должен содержать в себе хотя бы одно Activity (можно и больше). И для этого Activity должен быть настроен IntentFilter на определенный URL.

Когда пользователь нажимает на ссылку, происходит следующее.

Система находит, что в маркете существует Instant App приложение, в котором есть feature-модуль, который умеет открывать такие ссылки.

Чуть выше я писал, что Instant App приложение представляет из себя ZIP, в котором собраны все feature-модули и base-модуль в виде отдельных APK. В случае с Vimeo, например, это могли бы быть, например, файлы videoplay.apk (создан из feature-модуля videoplay) и base.apk (создан из base-модуля). И в videoplay.apk есть Activity, для которого настроен IntentFilter на vimeo.com ссылки.

Система загружает videoplay.apk на устройство и запускает. Вместе с ним также она загружает base.apk. Т.е. когда идет первая загрузка какого-либо feature APK файла из Instant App, с ним вместе всегда грузится и base.apk. Потому что все feature зависимы от base. Отсюда, кстати, вытекает одно ограничение. Суммарный размер любого feature APK файла и base.apk не должен превышать 4 мегабайт. Т.е. в нашем случае суммарный размер файлов videoplay.apk и base.apk не должен превышать 4 MB. Это сделано, чтобы приложения Instant App были максимально легкими и быстро загружаемыми.

Тут важно понимать, что, даже если Instant App приложение содержит в себе еще какие-либо feature APK файлы, система загрузит только videoplay.apk (+ base.apk). Потому что в данный момент нужен только этот файл для обработки нажатой ссылки.

А что если экран из videoplay.apk предоставляет возможность перейти на какой-то другой экран, например, экран комментариев? В этом случае программно переход должен быть реализован не с помощью Intent, который вызывает Activity, а с помощью Intent, который вызывает ссылку. Например, это могла бы быть ссылка вида https://vimeo.com/236370796/comments.

Предположим, что в проекте есть feature-модуль videocomments, в котором находится Activity c IntentFilter, настроенным на такие ссылки. И этот feature-модуль был включен в список в модуле instant. В этом случае система найдет, что в Instant App приложении есть еще файл videocomments.apk, в котором есть Activity настроенное на этот тип ссылок. Система загрузит и запустит videocomments.apk. Файл base.apk в этом случае уже не будет загружаться, т.к. он был загружен ранее.

Try now

Если в маркете есть Instant App версия приложения, то пользователь видит кнопку Try now.

По нажатию этой кнопки происходит примерно то же самое, что и по нажатию на ссылку. Система загрузит один из feature APK вместе с base.apk и запустит его.

Какой именно модуль будет запущен, можно определить в манифесте. Будет найден тот APK, который содержит главное Activity. Т.е. Activity со стандартным фильтром:

Либо есть возможность в манифесте указать ссылку:

Она будет вызвана по нажатию на Try now и далее будет загружен и запущен соответствующий этой ссылке feature APK.

Полезные ссылки

Для дальнейшего изучения темы рекомендую посмотреть следующие материалы.

https://codelabs.developers.google.com/codelabs/android-instant-apps/index.html 

и 

https://codelabs.developers.google.com/codelabs/android-multi-feature-instant-app

Два codelab от google. В них вы увидите, как обычный проект можно переделать в Instant App. После этого вы будете понимать техническую сторону темы.

https://www.youtube.com/watch?v=tXqat1JOmS8 — видео с Google IO 18. Мало технических деталей, много общих слов про функционал и возможности. Полезно к просмотру, чтобы понять назначение этой технологии. Это видео можно скинуть продакт-менеджеру, чтобы он впечатлился и захотел внедрить такую штуку на проекте.

https://developer.android.com/topic/google-play-instant/faqs — FAQ с массой действительно интересных вопросов, которые возникают при изучении темы.

https://developer.android.com/topic/google-play-instant/best-practices/apps — Best Practices по функционалу, навигации и поведению Instant App приложений.

https://android-developers.googleblog.com/2017/08/android-instant-apps-best-practices-for.html — Best Practices по технической части создания Instant App приложения

Присоединяйтесь к нам в Telegram:

— в канале StartAndroid публикуются ссылки на новые статьи с сайта startandroid.ru и интересные материалы с хабра, medium.com и т.п.

— в чатах решаем возникающие вопросы и проблемы по различным темам: Android, Kotlin, RxJava, Dagger, Тестирование 

— ну и если просто хочется поговорить с коллегами по разработке, то есть чат Флудильня

— новый чат Performance для обсуждения проблем производительности и для ваших пожеланий по содержанию курса по этой теме 

Приложения с мгновенным запуском

Google Play services for Instant Apps – это новая технология в Android, позволяющая запускать софт из Маркета в режиме мгновенного приложения, путем загрузки специального файла с данными. Например, вы можете сначала просмотреть программку и её функционал, а потом принять решение, загружать или нет её на телефон. Для такого просмотра, у каждого приложения должна быть адаптация от разаботчиков, помеченная значком “Instant”. На сегодняшний день Buzzfeed, Wish и Periscope поддерживают данную опцию.

Запуск мгновенного приложения через Instant Apps

Эта же функция должна поддерживаться и на веб-сайтах, особенно в интернет-магазинах. В этом случае – при просмотре товара, будет также подгружаться небольшой файлик, который позволит открыть данные о лоте в виде мгновенного приложения с активной кнопкой “Купить”. Такая технология призвана избавить пользователя от загрузки не нужной ему информации – все данные подгружаются из Маркета или Облака. Разработчики обещают, что на скорость загрузки новая опция не будет влиять.

Подключить функцию просто: “Настройки” – “Google” – раздел “Службы” – открываем “Instant Apps” и активируем ползунок.

Опция быстрого запуска для онлайн магазина

Сама устанавливается и обновляется

Технология активно внедряется с шестой версии Android. В последних моделях смартфонов приложение интегрируется автоматически и также без участия человека обновляется. Это считается вполне нормально со стороны Гугл. Пользователю придется просто смериться с этой утилитой в своей системе, как и с другим софтом, идущим для ОС по умолчанию.

Кстати, почитайте эту статью тоже:  Lenovo Vibe X3 составит конкуренцию iPhone и Samsung

Можно ли удалить или отключить?

Стоит зразу заменить, что Instant Apps – это будущее интернета. Довольно сильное заявление, но специалисты думают именно так. Поэтому глупо пытаться избегать подобной технологии, ведь рано или поздно она заменит привычный процесс покупки через интернет.

Если все-таки хочется удалить приложение, то нужно получить ROOT-права. Они позволят войти в систему от имени администратора, где уже привычным способом выполняется деинсталляция любого софта от производителя Google.

Однако рекомендуется лучше отключить приложение на смартфоне. Оно весит мало и никак не влияет на производительность ОС.

  • Для начала посетите настройки смартфона. Отыщите там пункт Google. Перейдите в папку с программным софтом «Услуги». Среди множества утилит отыщите Instant Apps. Теперь, когда вы зашли в приложение, сдвиньте единственный ползунок в сторону. Если высветиться уведомление, то обязательно согласитесь со своими действиями.

Помните: сервис Инстант Аппс работает только в качестве помощника в интернете и вирусом не является. При любых других действиях со стороны программы проверьте ее на вирусы – они могут маскироваться под нее.

Напоследок наглядное видео о работе данной опции от Гугл

Похожие статьи

На устройстве восстановлены настройки по умолчанию. Чтобы продолжить войдите в аккаунт Google — решение Обзор Huawei Nova 3 Обзор Huawei P smart Обзор Huawei P20 Lite Huawei P20 Pro или Xiaomi Mi 9 – что лучше? Обзор Huawei P20 Pro Обзор Huawei P20 Важные различия между Huawei P30 Pro и P30 Huawei Mate 20 Pro или Huawei P30 Pro – что лучше? Huawei P30 Lite и Samsung Galaxy A50 — что лучше?

ОСТАВЬТЕ ОТВЕТ

Please enter your name here
Please enter your comment!