Google I/O 2017: заметки Android-разработчика

    Валентин Телегин, руководитель Android-разработки Superjob, съездил на Google I/O и теперь делится самым интересным.

    Google I/O — это крупнейшее открытое (почти полностью) событие компании Google, которое проходит каждый год и собирает более 1000 разработчиков со всего мира. Несколько дней компания рассказывает, показывает, дает попробовать или хотя бы посмотреть издали на новинки, которые предлагает считать важнейшими для индустрии.

    Android встретил меня уже в арендной машине. Я уже ранее пользовался Android Auto, но только приложением на телефоне. В этот раз удалось протестировать в боевой обстановке на дорогах The Bay Area. Основной юзкейс свелся к использованию навигатора, озвучке входящих сообщений из telegram и звонкам по телефону. К функционалу нет претензий, но, пока телефон подключен шнурком к машине, пользоваться им не получится, а это очень неудобно.



    В любом случае — это уже вчерашний день. На конференции показывали превью Android In-Car. В прошлом году я видел прототип на основе Астон Мартин, а в этом — уже реальный образец. Основное отличие от уже существующего Android Auto в том, что это встроенное решение, не требующее подключения телефона. Показали решения на базе Volvo V90 и Audi. Интерфейс мультимедиа и бортового компьютера полностью реализуется автопроизводителем и идентичен обычному для марки дизайну. Встроен функционал Гугл-ассистента. Текущая версия базируется на основе Android N. Гуглплея пока нет.

    Теперь по порядку.

    Android O — новая операционная система — станет доступна летом этого года. Расшифровку наименования новой версии андроида так и не сказали. Хотя уже все знают ответ:

    — Как назвали новую версию андроид?
    — Как, как? Наугад...


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

    Google уделяет внимание безопасности, но ОС пока остается уязвимой. Компания обещает решить эту проблему. Также вдвое уменьшено время загрузки ОС версии О на телефоне Pixel. Разработчики из Google внедрили поддержку языка программирования Kotlin, назвав его языком «первого класса» для ОС Android, однако пока он не станет заменой «первоклассному» языку Java. Ранее уже можно было писать на Kotlin, т.к. он работает поверх JVM, но теперь интеграция будет добавлена в официальный инструмент разработки новую версию Android Studio 3.0.

    Будущее Kotlin теперь не вызывает сомнений, и повсеместное распространение этого языка — дело ближайшего будущего. Отмахнуться, сказав, что это хипстерский язык, уже не выйдет.



    Кейноут был посвящен полностью сервисам. В первую очередь топили за ассистента. Он стал поддерживать больше языков, но русского пока нет даже в планах. Теперь можно совершать звонки из Google Home. Бесплатно и с вашего номера телефона. Пока только в США. Ассистент стал «проактивным» — теперь он понимает контекст из вашей повседневной жизни. Например, если спросить про пробки завтра утром, то он знает, что завтра рабочий день и вы едете утром на работу, и расскажет про вероятные пробки по вашему маршруту и про время в пути. Да, и главная новость для андроид-конференции: ассистент теперь заработает на iPhone.

    Google Home научился выводить визуальные подсказки на разные устройства: телефон, телевизор. Например, в ответ на вопрос о погоде и т.п. визуализировать ответы.

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

    Представили технологию Google Lens. Распознавание образов по фотографии и поиск информации по распознанному объекту. Весьма перспективная вещь, но не новая. Она же поддерживается ассистентом. Вновь радует сервис Google Photos. Внедрили поддержку умного шаринга фотографий (Suggested sharing). Например, поделиться с другом фотографиями с последней вечеринки, где он есть на фото. А также функция шаринга всей библиотеки с членами семьи. То есть, например, будут шариться фотографии, где есть лица ваших детей или всех членов семьи, а все остальные фотографии останутся незашаренными. И локальная для США функция заказа печатной книги с фотографиями, которая составляется по особому алгоритму, который отбирает наиболее красивые фотографии. Если что, список можно подкорректировать.



    Практический пример Google показал именно на примере поиска работы. Поиск будет агрегировать вакансии, обработанные специальными алгоритмами, благодаря которым будут отображаться только актуальные варианты. Но только для Америки.

    Instant app стал доступен для всех. Можно будет пощупать и возможно внедрить. Это отдельная функциональность в виде модуля, но является частью основного приложения. В этом году особое внимание было отдано Machine Learning. Например, с помощью проекта Magenta можно реализовать прототип приложения Prisma буквально на коленке и весьма быстро. Девизом конференции стал слоган «Mobile First to AI first», и это, безусловно, повлияет на будущее Android.

    Следуя тренду последнего времени разработчики Google предложили свой подход к реализации архитектуры в виде Android Architecture Components. Новая коллекция библиотек, которые помогут создавать надежные, тестируемые и поддерживаемые приложения. Один из таких компонентов служит для решения проблемы жизненного цикла LiveData. Она хранит модель, например, между циклами смены ориентации экрана. Сейчас этот функционал реализован через отдельные родительские активити. По словам разработчиков, внутри используется реактивный подход, но проще, чем реализация подобного функционала посредством RxJava.



    В Google play теперь новый алгоритм получения диффов между apk, что даёт значительное сокращение в размере скачиваемых apk. Также теперь доступен механизм автоматической генерации multi apk на стороне магазина, что тоже даёт сокращение размера приложения. Уменьшение размера диффа достигнуто в том числе за счет того, что он считается над неупакованными данными.

    Был представлен облегченный вариант операционной системы Android Go для маломощных смартфонов. Для работы на таких устройствах Google занимается оптимизацией производительности и разработкой дополнительных инструментов управления данными совместно со специальным пакетом упрощенных приложений. Популярные приложения YouTube Go, Chrome и Gboard получат поддержку Android Go. Также в магазине Google Play появится отдельная категория приложений для Android Go. Такие приложения будут потреблять меньше памяти и экономнее расходовать интернет. Выход запланирован на 2018 год.

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

    Единственное место, куда были постоянные очереди, — это codelabs. Желающие могли выполнить ряд заданий и получить шанс выиграть билет на следующую конференцию.

    Для зарядки телефонов и ноутбуков были выделены специальные зоны, которые никогда не пустовали. Более прозорливые носили с собой powerbank’и и наслаждались свободой передвижения. На территории конференции можно было отдохнуть, поиграть в бочу или бильярд, посидеть в тени или перекусить снэками.



    Одним из экшенов было получение фигурки андроида. Для этого требовалось зачекиниться с помощью Android Pay на 4 площадках. При чекине можно было выбрать приглянувшийся пончик. Некоторые хитрили и чекинились по нескольку раз на одной площадке, а кто-то ходил по кругу и получал по нескольку андроидов. Организаторы боролись с читерами, ставя метку на бейджике, но нашего человека это остановить не могло :-)

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

    Не обошлось без происшествий. Случился локальный пожар в одном из подсобных помещений. Приезжали бравые пожарные, всех зевак оттеснила охрана конференции. Кому-то «посчастливилось» повредить руку, и его с фиксатором увезли на скорой.
    SuperJob.ru 70,42
    Компания
    Поделиться публикацией
    Комментарии 11
    • –1
      Будущее Kotlin теперь не вызывает сомнений, и повсеместное распространение этого языка — дело ближайшего будущего. Отмахнуться, сказав, что это хипстерский язык, уже не выйдет.
      Про какие языки я только это не слышал. Kotlin интересен, но утверждение о «великом будущем» языка весьма спорно.
      • 0

        Когда язык какой-то левой компании признает одна из крупнейших корпораций, это дорогого стоит… Значит язык, действительно, хорош. Сами можете его попробовать, особенно если вы Java-разработчик. Писал одно приложение на нем, мне очень понравилось

        • 0
          Когда язык какой-то левой компании признает одна из крупнейших корпораций, это дорогого стоит…

          А ничего что эта крупнейшая корпорация использует IDE этой «левой» компании? Я не веду споры на счёт языка, но то что она признала этот язык, лично для меня было несколько ожидаемой вещью.
          А на счёт левой компании, вы конечно же, погорячились.
          • 0

            Я говорю о том, что никакого интереса гуглу не было использовать этот язык, кроме как того, что он удобный (вспомним ту же политику Microsoft с их языками)
            Да, согласен, это было ожидаемо ;) Сам очень люблю JetBrains и их продукты

        • 0

          А уж Nullability в Kotlin — это что-то рождённое ради счастья во всем мире. Про NPE я, вообще, забыл.

        • 0

          В Android Auto на телефоне разочарован, напоминает всякие бесполезные приложения-из-магазина, в которых пара кнопок, повторяющих стандартные действия. Навигацию в телефоне использовать можно (но только гуглмапс, что уже минус), а вывести на экран борткомпьютера — уже нет(минус побольше, прикрепить нормальный навигатор на державку можно и без андроидавто), приложения в магазине есть, но функциональность сомнительна (типа репорта в соцсетях того что слушаешь в машине — как учебная замена "Hello, World!" сойдёт, но на практике бесполезно). Единственный плюс — внутримашинный работает на порядок быстрее виндовых (WinCE или аналога) — нет секундной паузы от нажатия до реакции, голос обрабатывает очень быстро (на русском в том числе), но никакого единения с телефоном нет вообще.

          • 0

            У первого нексуса был режим в авто, активируемый особым rare-as-bigfoot держателем от htc. Потрясающая вещь. Но больших дебилов, чем гугл, найти сложно, и они все испортили. Для нексус 5 уже нет такого прекрасного держателя.

          • 0

            Android In-Car — это теперь как у Эппла с CarPlay, я правильно понимаю?


            Чисто автомобильная система в привычной стилистике мобильной операционки, но автономная и только взаимодейсьвующая с телефоном?

            • 0

              Apple CarPlay — это аналог Android Auto. Для их работы требуется подключить телефон к машине по шнурку.
              Android In-Car встроен в автомобиль и не требует для работы подключения телефона. По сути это то, что китайцы продают уже много лет, но главное отличие это интеграция в сам автомобиль, а не просто мультимедиа магнитола. Информация выводится как на экран магнитолы так и на дополнительный экран приборной панели или на саму панель, если она полностью цифровая.

              • 0
                Да, подразобрался. Действительно Android в машине — немного другое, полноценная операционка, отдельное самодостаточное устройство.

                Маленькая поправка — Apple CarPlay умеет работать как по шнурку, так и по беспроводной связи. Пруф тут: https://support.apple.com/ru-ru/HT205634 (смотрите раздел про способы подключения к автомобилю). На wwdc2016 была пара видео про работу CarPlay и разработку систем для CarPlay. Вы правы в том смысле, что CarPlay — это интерфейс к ios -телефону, самостоятельных функций без телефона вроде как не имеет.
            • 0
              Да, без powerbank’а сейчас никуда. У многих проблема актуальней некуда.

              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

              Самое читаемое