Стирая границы устройств

:

imageХоть главная и пестрит на данный момент словами «Android 2.2» и «Froyo», но я не могу молчать. На гуглоконференции Вик Гундотра показал нечто, что я, лично применяя к себе как потребитель, считаю самым серьезным революционным прорывом в коммуникационных девайсах со времен Palm Pilot. И почему-то про это на Хабре совсем не сказали ни в нескольких заметках о Froyo с конференции, ни в обзорах перепрошитого Нексуса. Ускорение работы, флеш, хот-споты и красивый маркет — это все здорово, но это не меняет настолько сильно принцип работы с устройством, как такая вещь, как cloud-to-device messaging API.

Вы смотрели «Аватар»? Помните, как лихо тот взлохмаченный темнокожий ученый перекинул изображение мозга Джейка со стационарного ПК себе на планшет? Когда я увидел это, я подумал «вот это да, я тоже так хочу». Планшеты и экраны там, конечно, безумной красоты, но меня больше всего впечатлила эта легкость и непринужденность, с которой произошел сложный и многоплановый обмен данными между ПК и мобильным устройством.

Когда мне впервые достался Андроид для пользования, я не переставал удивляться коммуникационной парадигме, положенной в основу этой системы. Андроид — это действительно коммуникатор. Не телефон с функциями ПК, и даже не просто 3G-телефон с хорошим браузером. Это устройство, которое использует Интернет так же, как обычные телефоны используют сеть GSM. Для Андроида глобальная Сеть — это необходимый для работы ресурс, на который завязана работа большинства приложений, а не просто возможность посмотреть в браузере странички. Всё — начиная от синхронизации контактов и заканчивая сложными операциями вроде перевода текста на другой язык — использует Сеть. Гугл породил эту идеологию много лет назад и Гугл логично воплотил ее в мобильном устройстве.

Единственное звено, которого мне лично не хватало в этой парадигме, это возможность простой передачи чего-нибудь с ПК на Андроид. Речь не про файлы и фотографии, хотя про это тоже можно написать отдельную статью. В конце концов, есть различные программы вроде WebSharing или Samba-клиента в ES Explorer. Нет, речь про объединение ПК и мобильного устройства в одно информационное пространство, единый «буфер обмена», если хотите. Чтобы можно было нажать Ctrl+C на ПК, тапнуть иконку на телефоне и вставить там этот текст; чтобы можно было назначить фотографию контакта в телефоне, напрямую вырезав ее из фотографии на ПК; чтобы можно было открыть на устройстве сайт, который открыт у меня в десктопном браузере; чтобы можно было мгновенно перекинуть на экран телефона изображение (просто фотографию или даже вывод какой-то программы) с экрана монитора так, как это делал ученый из «Аватара».

В фильме это была, разумеется, фантазия режиссера. И с теми мобильными ОС, что были раньше, это и оставалось фантазиями. Но идеология «постоянного подключения» Андроида просто требовала сделать что-то в этом направлении, и на Google I/O 2010 нам показали именно то, что дает фундамент для реализации всех пожеланий из абзаца выше. Все это стало возможным благодаря Cloud-to-device messaging API.

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

На конференции Вик продемонстрировал два простых примера того, что можно сделать с помощью этого API. В первом примере его помощник Мэтт открыл Google Maps, задал в них маршрут по городу и нажал в Хроме маленькую кнопочку с пиктограммой телефона. Через секунду это же место на карте с этим же маршрутом появилось в мобильном Google Maps на Андроиде! Второй пример как раз полностью совпадал с тем, о чем я заикался во втором абзаце — Мэтт просто взял и открыл на Андроиде сайт, который был открыт у него на ПК. Никаких лишних телодвижений, ни копирования в буфер обмена, ни сохранения-открытия закладок, он даже не прикасался к телефону; просто нажимаем кнопку в десктопном браузере и бежим показывать страницу домочадцам.

И, разумеется, это не какая-то встроенная функция, это открытое и свободное к использованию API. Это потрясающая возможность начать делать с мобильными устройствами то, что раньше было просто немыслимо и невозможно. По мере того, как все больше и больше программ и сервисов начнут использовать идею Cloud-to-device messaging, мы будем наблюдать стирание границ между стационарными и мобильными устройствами и между устройствами вообще, все отдельные девайсы будут превращаться в единое информационное поле пользователя, между которыми он не будет замечать никаких границ.

На конференции Вик закончил презентацию этой фичи словами: «We can't wait to see what you're going to do with this API». Мне, честно говоря, тоже очень любопытно.