Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Вконтакте
  • Новая технология от Google «Instant apps» – что это такое и как установить. Instant apps: что это, как подключить и использовать

Новая технология от Google «Instant apps» – что это такое и как установить. Instant apps: что это, как подключить и использовать

Границу между веб-сайтами и приложениями усиленно стирали последние десять лет, но так и не стерли. Наоборот, с расцветом мобильных телефонов приложения вернулись и никуда не собираются уходить. Технология Instant Apps - это подход к той же проблеме с другой стороны. Что, если заменить сайты настоящими приложениями? Последствия могут навсегда изменить интернет и имеют серьезные побочные эффекты.

На прошедшем в середине мая Google I/O 2016 было показано много интересного - от вполне ожидаемой новой версии Android, об особенностях безопасности которой ты можешь прочесть в колонке Жени Зобнина, до магазина приложений для виртуальной реальности. Но может статься, что самый важный анонс - это не Android N, не виртуальная реальность и не Google Home, а нечто под названием Instant Apps.

Вот базовый пример использования Instant Apps. Ты при помощи телефона или планшета с Android ищешь в интернете какой-то товар и жмешь на ссылку в поисковой выдаче. И вместо сайта магазина твое устройство загрузит некую минимальную версию приложения, в которой будет только информация об этом товаре и кнопка «Купить».

Казалось бы, принципиальной разницы по сравнению с сайтами нет (автор веб-комикса xkcd уже успел поиронизировать над этим). Но шутки шутками, а отличия все же имеются, и очень важные.

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

Технически это реализовано следующим образом: разработчик строит свою программу так, чтобы у нее была легко отделимая часть, которую можно загружать отдельно. Создавать новую ветку кода при этом не обязательно, главное - в нужном месте вызвать программные интерфейсы Instant Apps. Приложение отправляется в Google Play, и остальное - это уже магия Google. Когда поисковик решит, что вместо сайта можно показать приложение, он запросит его из Google Play и покажет пользователю.

При этом не факт даже, что Instant Apps будет загружаться дольше, чем сайт, и потратит больше трафика. Многие современные сайты страдают проблемой ожирения, и нередко можно встретить страницы, которые засасывают из интернета по десять мегабайт. Этого хватило бы на целое приложение, так что если его часть будет занимать, скажем, один мегабайт, то это вряд ли сегодня кого-то напугает.

Посетители Google I/O аплодировали этому анонсу не зря. Кажется, он решает массу проблем и открывает большие возможности. Беда с приложениями в том, что часто бывает нужно немедленно использовать какую-то программу и для этого ее требуется скачать, а она, быть может, занимает слишком много, чтобы качать по сотовой сети. Причем следующий раз, когда она понадобится, может наступить, к примеру, через месяц или не наступить вовсе.

Моментальная подгрузка только самой необходимой части приложения позволит обойтись без установки и не забивать телефон. Это удобно, когда ты, скажем, хочешь заказать доставку чего-то или, к примеру, желаешь арендовать велосипед во время прогулки по другому городу.


Казалось бы, у Instant Apps сплошные плюсы и никаких минусов. Пользователи компьютеров и всяких там айфонов будут видеть обычный сайт, а Android вместо него загрузит свой кусочек программы из Google Play. «Моментальные приложения» пригодятся любому изданию, любому онлайновому магазину, а также множеству реальных магазинов, кафе, музеев, выставок, да что там - даже обычным предметам, в которые сейчас всё чаще встраивают компьютеры.

Но разреши напомнить тебе один важный исторический пример. В конце восьмидесятых годов, когда Microsoft Word был одним из множества конкурирующих текстовых процессоров, никто не жаловался на то, что его стандарт закрыт. Наоборот, это было нормой - свой стандарт файлов был у каждой программы.

Зато когда популярность Windows и Word сделали его формат фактически единственным стандартом текстовых документов, тут уже начались разговоры, что неплохо бы открыть его для всех. В течение многих лет это было очень острой проблемой, и до сих пор она решена не до конца.

Что, если популярность Android и поисковика Google сделают Instant Apps новым стандартом сайтов? Вместо веба, где можно заглянуть в код любой страницы, мы получим веб, состоящий из байт-кода Java.

Можно, конечно, посмеяться и сказать, что это давняя и несбывшаяся мечта инженеров Sun Microsystems. Но они-то представляли себе, что программы на Java будут исполняться на любом компьютере с любой архитектурой, а у Google получается так, что для запуска «инстант аппа» нужно иметь совместимое устройство. И, кстати, абы какой Android не подойдет, ведь доступ к магазину есть только в телефонах с лицензированной у Google версией системы. Вот тебе и свобода с открытостью!

К слову, речь потенциально не только про мобильные телефоны. Как известно, в Chrome OS активно встраивают поддержку приложений для Android, и нет никаких причин не добавить и Instant Apps. Хромбуки тем временем уверенно набирают популярность. В США благодаря интересу со стороны образовательных учреждений они, по подсчетам IDC, уже продаются лучше «маков» (десктопов и ноутбуков).

Магазины приложений отбирают хлеб у сайтов уже не первый год, так что появление Instant Apps вряд ли можно считать внезапным событием. На ум, кстати, приходят две другие новые технологии - гугловская же Accelerated Mobile Pages (AMP) и Facebook Instant Articles . Обе по духу близки к Instant Apps и нацелены на то, чтобы лучше приспособить для телефонов текстовый контент.

Конечно, паниковать и кричать, что Google убивает веб, пока рано. Сложно спорить с тем, что от Instant Apps будет много пользы, да и бороться с прогрессом - не лучшая затея. Мобильные телефоны еще не закончили менять привычный технологический ландшафт, и Instant Apps - не последнее проявление этого процесса. Жаль только, что изменения часто ведут к повышению закрытости и фрагментации.


А еще, конечно, никто не знает, победит эта технология или нет, насколько она в итоге будет распространенной и какими окажутся следующие шаги Google. Вот еще интересный вопрос - как отреагируют в Apple? Появится ли в iOS прямой аналог или, быть может, в Купертино придумают кардинально другой подход?

И напоследок - еще один исторический пример. Помнишь Flash? Его создатели хотели сначала внедрить свою суперпрогрессивную технологию в сайты (и это неплохо удалось), а затем сделать так, чтобы она заменила собой веб (и вот это уже не вышло). А по прошествии какого-то времени Flash стал ненавистной дырявой фигней, от которой все спешат избавиться как можно скорее. Instant Apps в Google, по крайней мере, смогут в любой момент выключить.

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

Что такое Instant Apps?

Будет полезным

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

Что же конкретно собой представляет очередное нововведение, обладающее названием Instant Apps? В переводе с английского такое словосочетание означает «мгновенные приложения», что как нельзя лучше отображает суть работы данной функции. Как правило, перед использованием программного контента обладателю мобильного гаджета необходимо полностью загрузить соответствующий файл из магазина Google . Разработки, построенные по принципу Instant Apps, не являются неделимой системой, а состоят из большого числа самостоятельных модулей. Подобные автономные блоки не скачиваются все вместе, а быстро подгружаются по мере необходимости.

Основные преимущества

Что же дают эти новые Instant Apps? По словам специалистов из Google, данное обновление, доступное для ОС Android, способно полностью изменить современный подход к работе с различными онлайн-сервисами, значительно повысив удобство и скорость загрузки контента. Как правило, мобильная версия сайта не обладает достаточной гибкостью и функциональностью, которыми могут похвастаться специализированные утилиты. Но для их загрузки требуется время и трафик. В целом, технология Instant Apps обеспечивает следующие преимущества:

  • высокая скорость работы, а также удобство использования;
  • значительная экономия внутренней памяти гаджета;
  • отсутствие каких-либо сложностей, связанных с установкой;
  • широкий спектр поддерживаемых мобильных устройств.

Теперь благодаря технологии Instant Apps вы можете свободно переходить к любому программному контенту без каких-либо задержек, так как он автоматически скачивается отдельными функциональными блоками. В зависимости от того, хотите вы приобрести товар, посмотреть видео или запустить небольшую игру на сайте, будет загружен отдельный фрагмент полноценной мобильной утилиты, который прекрасно справляется с поставленной задачей. С визуальной же точки зрения, все это выглядит как обычный софт, скачанный из магазина.

Установка программ

Ознакомиться со всеми возможностями новой функции от Google можно при помощи официального онлайн-магазина для Android. Любой пользователь данной платформы, обладающий поддерживаемой версией ОС, теперь в состоянии скачать пробный модуль любой утилиты с пометкой «Instant», чтобы протестировать ее на своем устройстве. Для этого потребуется выполнить следующую последовательность несложных действий:

  • Откройте загрузочную страницу программы в магазине Google Play.
  • Нажмите на кнопку «Попробовать», которая расположена рядом с «Установить».
  • В запущенном после этого браузере выберите опцию «Продолжить».
  • Дождитесь окончательной загрузки всех необходимых файлов.

Обратите внимание

Чтобы получить полную версию контента, следует вернуться в магазин и выбрать опцию «Установить». После этого на рабочем столе вашего мобильного девайса появится иконка, предназначенная для постоянного доступа к программному продукту.

Подключение Instant Apps

Будите ли Вы использовать данную технологию?

Технология под названием Google Play services for Instant Apps работает абсолютно на всех современных смартфонах и планшетах, которые обладают ОС Android 6.0 и выше. Если вы являетесь владельцем более старших версий системы, вашему устройству потребуется . По умолчанию функции сервиса находятся в рабочем состоянии, в противном же случае их можно довольно быстро включить, выполнив следующие шаги:


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

Выводы

Разобравшись в том, как можно использовать Instant Apps и что это нам дает, необходимо подвести некоторые итоги. Повсеместное внедрение данной функции дает массу преимуществ не только обычным пользователям, но и разработчикам мобильных утилит, которые пытаются продать свои услуги как можно большему числу людей. Благодаря модульности создаваемых продуктов, повышается удобство и скорость работы с программным контентом, а . Возможно, в ближайшем будущем эта технология получит еще большее развитие, что приведет к ощутимому росту популярности Android.

Здравствуйте. Сегодня хочу поведать об относительно новом функционале Гугл - Google Play Services for Instant Apps. Что это за «фишка», нужна ли она в телефоне, как правильно отключить/удалить, существует ли опасность подцепить вирус? Вопросов много, но все они будут рассмотрены в данном обзоре. Приступим!

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

Что такое 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 что это такое, как активировать.



В этой статье рассмотрим, что такое 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.

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

Лучшие статьи по теме