Google работает над ARCVM, новым способом запуска Android-приложений в Chrome OS

В течение последних нескольких лет на многих устройствах Chromebook можно было установить магазин Google Play и запускать приложения для Android. Это дало Chrome OS возможность стать чем-то большим, нежели просто не очень популярной операционной системой, основанной на популярном браузере. Но теперь Google решила внести с свою десктопную ОС некоторые существенные изменения, касающиеся ее поддержки Android-приложений, что, наконец, может позволить использовать одну давно запрашиваемую пользователями функцию.

История Android на Chrome OS

Около четырех лет назад Google разработала способ для запуска в браузере Chrome Android-приложений под названием Android Runtime for Chrome (ARC). Изначально технология создавалась с оглядкой на Chrome OS, но позже разработчики выяснили, что ее можно использовать для запуска Android-приложений в браузере Chrome на любой настольной платформе.

Хотя ARC первого поколения и работала достаточно хорошо, Google хотела создать что-то более полезное и больше заточенное под Chrome OS. Таким образом, компания начала разработку ARC следующего поколения, которая получила название ARC++. Новая версия ARC еще глубже интегрировала Android Runtime с Chrome OS, позволив поставить в систему такие вещи, как Google Play. Именно поэтому сегодня Android-приложения работают на устройствах Chromebook.

Создание ARC++ стало возможным отчасти потому, что Chrome OS, как и Android, основана на ядре Linux. Для обеспечения высокого уровня безопасности, ARC++ фактически работает в так называемом «контейнере», который является способом изоляции фрагментов Android от остальной части Chrome OS. Хотя ARC++ в данном виде и работает, команда разработчиков Chrome признала, что им есть куда расти и развивать свою технологию.

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

Если вы хотите узнать немного больше об ARC++, есть отличное наглядное объяснение процесса ее подключения к Chrome OS от Дэвида Ривемана, который когда-то был членом команды Chrome и с тех пор перешел в подразделение Fuchsia.

Linux на Chrome OS — не та же самая Linux

В прошлом году Google заявила, что собирается предпринять большие усилия для того, чтобы сделать приложения Linux доступными для установки и использования на Chrome OS (что является проектом Crostini), но, естественно, это было намного легче сказать, чем сделать. Если вы подумали о том, что Chrome OS основана на Linux, а это означает, что на ней должно быть относительно просто запускать приложения для Linux, то не спешите с выводами, так как все сильно сложнее.

Чтобы запускать программы для Linux на Chrome OS, команда Chrome решила создать виртуальную машину (или VM) для запуска Debian (дистрибутива Linux) и интегрировать эту VM с Chrome OS. Да, они могли бы использовать уже существующую технологию виртуальных машин, подобную QEMU или VirtualBox, но подумали и решили, что лучше создавать такие специализированные инструменты с нуля. Создали, и назвали их «crosvm» и «Termina».

Причин для использования виртуальной машины было немало, но самой очевидной была безопасность. Прямой доступ к ядру Linux в Chrome OS создает больше возможностей для попадания в нее вредоносного кода или даже вирусов.

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

В Linux, где у Google нет такого уровня контроля, невозможно было ограничиться только доверенными приложениями. Использование виртуальной машины решает эту проблему, так как если вы установите вредоносное приложение, вы сможете просто выключить виртуальную машину, удалить ее и создать заново, не затрагивая при этом саму Chrome OS.

Создание виртуальной машины, интегрированной с Chrome OS, чтобы приложения Linux чувствовали себя на Chromebook как дома, тоже не обошлось без трудностей. Например, в последнее время команда разработчиков приложила много усилий, чтобы в Chrome OS можно было без проблем запускать более графически насыщенные Linux-программы и, возможно, даже игры.

Реализация ARCVM

Вообще, Google не планирует вносить какие-либо изменения в исходный код Android-приложений на Chrome OS. Тем не менее, как стало известно, команда Chromium прилагает все усилия к тому, чтобы поддержка Android-приложений в Chrome OS была больше похожа на поддержку приложений Linux.

Все эти усилия сводятся к технологии ARCVM (сокращение от ARC Virtual Machine), которая, исходя из имеющихся доказательств, использует наработки проекта Crostini, чтобы запускать Android через ту же виртуальную машину Termina. Перейдя на виртуальную машину, при запуске Android в Chrome OS сможет использовать те же функции для обеспечения безопасности, а также будет поддерживать возможность простого сброса, если что-то пойдет не так.

Надлежащая изоляция приложений Android от Chrome OS в целом создаст для Google возможность загружать Android-приложения без необходимости входа в режим разработчика. Возможность загрузки Android-приложений уже давно востребована пользователями Chrome OS, так как многие приложения, помеченные как «несовместимые» с Chromebook, на самом деле работают на ней просто отлично. Помимо прочего, это также позволило бы устанавливать на Chrome OS сторонние магазины приложений, такие как Aptoide.

Если Google сделают то, что задумали, разработчики приложений для Android смогут установить Android Studio на Chromebook, создать свое приложение и протестировать его на устройстве, не заходя при этом в режиме разработчика. Учитывая недавние шаги Google в сторону более «безопасной разработки» с помощью Chromebook, это кажется наиболее вероятным стимулом для развития ARCVM.

Однако, как и в случае с другими незавершенными проектами, обнаруженными в Chromium, существует вероятность того, что проект ARCVM может быть полностью свернут, как и Campfire в свое время. После создания рабочего прототипа команде разработчиков нужно будет взвесить все за и против, чтобы понять, перевешивает ли возросшая безопасность и возможность загрузки сторонних приложений влияние, которое они могут оказать на производительность более дешевых устройств семейства Chromebook.

Поскольку работа над ARCVM все еще продолжается, и это никоим образом не подтвержденный проект, невозможно сказать, когда, если вообще когда-нибудь, мы увидим его вживую на наших устройствах. Можно предположить, что анонс случится либо в конце этого года, либо во время запуска Android Q на Chrome OS.

Делитесь своим мнением в комментариях под этим материалом и в нашем Telegram-чате.

Теги
Лонгриды для вас
Как отправить геолокацию в WhatsApp на Android

Несмотря на то что сам я пользуюсь Telegram в качестве своего основного мессенджера, игнорировать популярность WhatsApp практически невозможно. Сегодня, если нужно с кем-то связаться, практически наверняка вам предложат написать в WhatsApp. Не потому, что он особенно удобен или функционален – вовсе нет, у этого мессенджера даже нет инструмента редактирования сообщений, - а потому что им пользуются все. Очень похоже на карточку Сбербанка, которая есть у всех, но которой никто никогда не платит. Но справедливости ради отмечу, что функционально WhatsApp довольно неплох и даже позволяет с удобством поделиться геолокацией.

Читать далее
Google учит «Google Объектив» для Android решать математические задачи

Одним из самых недооценённых сервисов Google, на мой взгляд, является Google Lens, или по-нашему «Google Объектив». Скорее всего, сказывается неграмотное позиционирование, из-за чего часть пользователей считает этот продукт бесполезным, а часть не слышала о нём вообще. А тем временем это чрезвычайно интеллектуальная штука, спектр функциональных возможностей которой не ограничивается только распознаванием объектов, попадающих в кадр. Это гораздо более универсальный сервис, способный помочь вам и вашим детям в самых разных сценариях использования.

Читать далее
Как смотреть жуков, бабочек и других насекомых в 3D в Google

Дополненная реальность – это технология, которую Apple начала продвигать одной из первых. Причём долгое время продвижение состояло в основном в россказнях Тима Кука о её совершенстве и широчайшей сфере применения. Многие в это поверили, но хотели увидеть хотя бы одно практическое подтверждение слов генерального директора, которого почему-то всё не было и не было. Но на помощь вовремя пришла Google, которая хоть и начала развивать дополненную реальность заметно позже, всё-таки смогла найти её интересное всем применение.

Читать далее

Новый комментарий