На проходящей в эти дни конференции Google I/O объявлено о преодолении платформой Android знакового рубежа - два миллиарда активных устройств. Статистика включает в себя только устройства, хотя бы один раз в месяц обращавшиеся к сервисам Google, учитывает только индивидуальные идентификаторы устройств, но не отражает аппараты не использующие сервисы Google, например, электронные книги, некоторые модели планшетов и устройства, привязанные к другим сервисам (многочисленные китайские прошивки, прошивка от Yandex, LineageOS/CyanogenMod). Также сообщается, что в прошлом году из Google Play было загружено 82 миллиарда приложений, на 35% выросло число разработчиков, программы которых были установлены более миллиона раз в месяц, а число покупателей программ увеличилось на 30%.
Компания Google объявила о включении Kotlin в список официально поддерживаемых языков для разработки приложений для платформы Android. Более того, совместно с компанией JetBrains, курирующей разработку Kotlin, инициировано создание некоммерческой организации, которой будут делегированы функции принятия решений в отношении дальнейшего развития языка. Язык Kotlin создан в санкт-петербургском центре разработки компании JetBrains и изначально рассчитан на компиляцию приложений в форму для последующего выполнения внутри стандартной виртуальной машины Java (JVM) или Android. Разработчики Kotlin попытались сохранить максимальную совместимость и похожесть на Java, при этом избавившись от имеющихся в Java ограничений и недостатков. Язык обеспечивает нелохую переносимость с Java - из программ на Java вызывать компоненты, написанные на Kotlin, и, наоборот, из программ Kotlin можно вызывать Java-классы. Среди отличий Kotlin выделяется ориентация на обеспечение более высокой безопасности за счет реализации статических
Компания Google анонсировала Android Go, оптимизированный вариант платформы Android, предназначенный для оснащения младших моделей смартфонов, поставляемых с небольшим размером оперативной памяти. Ожидается, что проект поможет производителям наладить выпуск функциональных и дешёвых устройств, доступных для широких масс, в условиях постоянного роста системных требований у современного ПО. Поставку устройств с Android Go планируется начать в 2018 году. В основе Android Go лежат оптимизированные системные штатные компоненты платформы Android O, способные обеспечить эффективную и комфортную работу на устройствах, имеющих 1 Гб ОЗУ или менее. Вторым звеном является специально оптимизированный набор приложений Google Apps, который адаптирован для снижения потребления памяти, места в постоянном хранилище и трафика. В том числе подготовлены специальные сокращённые варианты приложений YouTube Go, Chrome и Gboard. В каталоге Google Play для маломощных устройств в первую очередь будут предлагаться приложения,
Компания Google анонсировала модульную систему Treble, которая позволит производителям создавать универсальные компоненты поддержки оборудования, не привязанные к конкретным версиям Android и используемым в них выпускам ядра Linux. Treble существенно упростит адаптацию новых версий Android для существующих устройств и поможет наладить оперативное создания обновлённых прошивок с актуальными выпусками Android. Если ранее производитель вынужден был портировать компоненты для поддержки оборудования для ядра каждого нового выпуска, то теперь для новых выпусков можно будет использовать уже подготовленную основу, обеспечивающую взаимодействие с оборудованием. Низкоуровневые компоненты, специфичные для каждого устройства, будут выделены в отдельный слой, который будет отделён от Android OS Framework (т.е. от используемого в Android ядра Linux) и сможет развиваться независимо. Взаимодействие Android OS Framework с компонентами поддержки оборудования будет организовано через специальную прослойку, предоставляющую
Группа исследователей из Мичиганского университета опубликовала доклад о безопасности мобильных приложений для платформы Android, которые открывают в слушающем режиме сетевые порты и принимают на них соединения. Отмечается, что обработка внешних сетевых запросов создаёт угрозу для безопасности мобильных устройств, которая обычно упускается из виду из-за не серверной специфики мобильных приложений. Исследователи разработали специализированную утилиту OPAnalyzer для статического анализа кода, которая выявляет открытие сетевых портов и оценивает наличие типовых уязвимостей в реализации. Проверив более 100 тысяч приложений из каталога Google Play было выявлено 1632 программ принимающих сетевые соединения, половина из которых насчитывает более 500 тысяч загрузок. Исследователи пришли к выводу, что почти половина всех обработчиков сетевых соединений незащищена и может быть использована для организации удалённых атак. Всего при автоматизированной проверке было выявлено 410 уязвимых приложений и 956 потенциальных
Разработчики проекта Android-x86, в рамках которого силами независимого сообщества осуществляется портирование платформы Android для архитектуры x86, опубликовали третий стабильный выпуск сборки на базе платформы Android 6.0, в которую включены исправления и дополнения, обеспечивающие бесшовную работу на платформах с архитектурой x86. Для загрузки подготовлены универсальные Live-сборки Android-x86 6.0 для архитектур x86 (572 Мб) и x86_64 (677 Мб), пригодные для использования на типовых ноутбуках, нетбуках и планшетных ПК. Изменения со времени прошлого обновления: Реализовано автомонтирование CD/DVD; Решены проблемы при запуске в виртуальном окружении на базе VMware; Добавлен скрипт qemu-android для запуска Android-x86 в QEMU; Исходные тексты Android обновлены до ветки 6.0.1_r79; Ядро Linux обновлено до версии 4.4.62, импортированы дополнительные патчи из AOSP; Mesa обновлён до версии 17.0.4; Обновлены версии различных системных компонентов (libdrm, ntfs-3g, exfat, bluez).
Анонсирован проект Halium, в рамках которого предпринята попытка унификации низкоуровневых компонентов альтернативный мобильных платформ, с целью уменьшения фрагментации и упрощению разработки. Авторы инициативы пытаются организовать совместную работу над единым Linux-окружением, которое можно использовать в качестве базиса для платформ, отличных от Android, но использующих компоненты и драйверы Android для обеспечения поддержки аппаратного обеспечения. В настоящее время в Ubuntu Touch, Mer/Sailfish OS, Plasma Mobile и webOS Lune используются разные части кода Android и разные методы сборки. По сути данные проекты решают одну задачу - использование в Linux окружении бинарных драйверов Android, но выполняют эту работу по разному, дублируя друг друга и решая одни и те же проблемы. Во всех из этих проектах для организации взаимодействия с оборудованием используется библиотека libhybris, предоставляющая прослойку для обеспечения работы специфичных для платформы Android драйверов устройств, работающих в
Представлен проект Anbox, в рамках которого развивается окружение, позволяющее запустить полноценную мобильную среду Android в обычном дистрибутиве Linux, тесно интегрированную с основным рабочим столом. Проект развивается уже полтора года и в настоящее время готов для предварительного тестирования. Официально пока поддерживается только установка в Ubuntu Linux. Android-окружение построено на базе Android 7.1.1 из репозитория AOSP (Android Open Source Project). Наработки Anbox распространяются под лицензией GPLv3. Anbox использует пространства имён ядра Linux (user, pid, uts, et, mount, ipc) для создания изолированного контейнера с компонентами Android. Android не имеет прямого доступа к оборудованию - всё взаимодействие производится только через специальную прослойку, которой управляет фоновый процесс anbox, запускаемый на стороне хоста. Прослойка использует те же методы работы с оборудованием и внешним миром, что и официальный эмулятор Android, основанный на QEMU. Поддержка отрисовки обеспечивается при
Компания Google опубликовала третий предварительный выпуск Android Things, редакции платформы Android для потребительских интернет-устройств, относящихся к категории интернет вещей (IoT). Android Things даёт возможность быстро создавать умные устройства, используя API платформы Android и сервисы Google. Продукт доступен для тестирования на аппаратных платформах Intel Edison, Intel Joule, NXP Argon, NXP Pico и Raspberry Pi 3. Для адаптации платформы для других устройств предлагается базовый набор поддержки оборудования (BSP, Board Support Package). Особенностями Android Things является прямая доставка обновлений через инфраструктуру Google, использование коммуникационной платформы Weave для организации связи между устройствами и взаимодействия с сервисами Google, средства для управления устройствами без экрана, применение cуществующих решений для разработки приложений (Android Studio, Android SDK, Google Play, Google Cloud), предоставление Peripheral I/O API для взаимодействия с датчиками и приводами (GPIO,
В апрельском обновлении платформы Android в сетевой подсистеме ядра Linux устранена критическая уязвимость (CVE-2016-10229), позволяющая выполнить код на уровне ядра, отправив специально оформленный набор UDP-пакетов, который приводит к некорректному вычислению контрольной суммы в процессе выполнения системного вызова recv с флагом MSG_PEEK. Ошибка, вызвавшая уязвимость, была устранена боле года назад в выпусках основного ядра Linux 4.5 и 4.4.21, поэтому проблеме подвержены только версии ядра, младше 4.4.21. Уязвимость не проявляется в Debian и SUSE, но вероятно присутствует в openSUSE 42.1. Информации о подверженности проблеме Ubuntu и RHEL пока нет. Кроме уязвимости в UDP-стеке и уже ранее упомянутых проблемы в беспроводном стеке Broadcom и crypto-движке Qualcomm, в апрельском обновлении Android также устранено шесть критических уязвимостей в медиасервере, позволяющих организовать выполнение кода с правами процесса mediaserver при обработке специально оформленного контента, а также критические