Технологии, в том числе информационные, редко развиваются «по прямой»: обычно их путь извилист. В начале нулевых казалось, ничто не сможет обойти веб-страницу по популярности — но прошло всего десять лет и королём по количеству съеденного времени стали мобильные приложения. В прошлом году на них приходились почти девять из каждых десяти часов, проводимого за экраном пользователями мобильных устройств (что, учитывая огромную численную массу последних, даёт безусловное первое место).
И вот новый поворот! Google приступила к тестированию так называем мгновенных мобильных приложений. Которые, суть, не что иное как золотая середина между «аппом» и веб-страницей. Добро пожаловать в будущее.
Чем плоха веб-страница? Она малофункциональна. Несмотря на все попытки приблизить её к программам, попытки большей частью уже пройденные и забытые — все эти Java, Flash. VRML, бесчисленные плагины — страница уступала и уступает нативному софту. В производительности, удобстве, степени интеграции с операционной системой и интерфейсом пользователя, качестве доступа к системным ресурсам. Да, пользоваться — можно, но программа почти всегда удобней, почти всегда производительней!
Так что мобильные приложения (придуманные, кстати, не Джобсом, хватит уже кормить эту чудовищную ложь, он вообще поначалу был против! Сказать спасибо за мобильный софт следует Palm и наладонникам 90-х — пусть тогда и не было столь чётко организованной экосистемы с дистрибуцией, поиском, оценкой) по праву заняли главное место на мобильных устройствах, отняв его у браузера: чем мучиться с мелкими буками и ссылками, проще один раз ткнуть в иконку и получить простой, узкозаточенный, но хорошо знающий своё дело апп. There is an app for that — аппы есть для всего! — отличная характеристика периода, начатого «Айфоном».
Увы, за это время и особенно в последние пару лет, прояснились и недостатки. Всплыли они как бы исподволь, в результате опросов и вообще исследований привычек простых юзеров. Оказалось, например, что хоть приложения и доминируют по суммарному времени на мобильных устройствах, львиная доля часов тратится на единицы самых известных программ, тогда как миллионам прочих достаются буквально крохи с «рабочего стола». Отчего так происходит? Ответ на поверхности, хоть и неожиданный: у среднестатистического пользователя сформировалось негативное отношение к мобильному софту.
Видите ли, мобильные приложения часто нужны всего на один раз: например, посмотреть какой-нибудь контент, доступный только из аппа, либо совершить какую-то операцию, возможную только из аппа, и потом навсегда о нём забыть. И ради этого придётся пройти через мучительную процедуру инсталляции: даром что маленькие, приложения отнимают массу времени на установку! Апп нужно найти, желательно прочесть отзывы и посмотреть оценки (чтобы не нарваться на какой-нибудь сюрприз или прямой обман), свериться, хватит ли места в памяти устройства, решить вопрос с разрешениями (которые в Android было принято давать оптом во время установки; начиная с версии 6, правда, от этой схемы отошли в пользу предоставления разрешений по необходимости, уже после запуска)… И всё это, возможно, только ради того, чтобы снести несчастную софтинку после одного-двух стартов!
И вот уже заговорили, что время, проводимое мобильными пользователями в браузере, растёт вдвое быстрее времени, проводимого за приложениями… Впрочем, браузер, конечно, своего не вернёт: всё, поезд ушёл! Случится другое: приложения адаптируются к новым реалиям. И появление нового их класса, называемого «мгновенными», как раз об этом.
Вообразите, что обычное мобильное приложение реструктурировали. Во-первых, сделали модульным: максимум 4 мегабайта на модуль/блок, причём в память устройства изначально загружается только один (чтобы работало моментально даже в перегруженных сотовых сетях). Модуль реализует всего одну-две функции, требующихся конкретно в текущий момент — если понадобятся другие, приложение автоматически подкачает их из апп-стора.
Далее, такому приложению следует запретить многие вещи, разрешённые приложению нормальному. Например, лезть в системные настройки, работать в фоне, даже знать, какие ещё программы установлены на устройстве!
Наконец, оно ограничено оперативной памятью и запускается по URL. Кликнул пользователь по ссылке, получил работающий апп на экране, попользовался, закрыл — всё, и следа на устройстве не осталось.
Самое важное в этой схеме то обстоятельство, что юзер не тратит время и нервы на раздумья: а стоит ли ставить, компенсирует ли обещанный функционал затраты на инсталляцию? Потому что инсталляции как таковой и нет: ткнул — запустилось, не понравилось/не пригодилось — закрыл и не вспоминаешь больше! Получилась практически веб-страница, с той только разницей, что это не HTML (пусть даже пятый!), а почти полноценная программа — с полной скоростью, доступом к ресурсам, прочими преимуществами. И получается, удалось устранить узкое место мобильного софта, мешающее уже не только пользователям, а и разработчикам тоже: им станет легче убедить пользователя приложение попробовать. Безусловно, пользоваться этим станут и авторы дорогого софта: для создания пробных версий.
Впрочем, наберитесь терпения. Мгновенные приложения — штука настолько непростая, что Google, анонсировавшая идею ещё полгода назад, только сейчас приступила к ограниченному закрытому её тестированию: выбраны всего четыре популярных аппа, которым позволено сделать мгновенные версии, проверяемые на небольшом числе случайных пользователей. SDK обещают через несколько месяцев, пока же желающим девелоперам рекомендуют подготовиться: переработать структуру своих приложений, чтобы потом их было легче компилировать сразу в двух версиях — нормальной и мгновенной.
Остаётся добавить лишь, что скомпрометировать идею может «пустяк»: безопасность. Да, операционная система жёстко ограничивает мгновенные аппы в правах, но достаточно нескольких случаев эксплуатации уязвимостей для обхода системных ограничений, чтобы пошла дурная слава. А уязвимости будут: несмотря на то, что мгновенные приложения задуманы для Android 6 и новее (грубо: треть всей массы устройств на рынке), работать они смогут в версиях системы начиная с 4.1, то есть захватят миллиарды давно не обновлявшихся устройств.
Получится, как считаете?
P.S. Использованы графические работы Marco Verch, James Royal-Lawson, Google.