История одного очень полезного opensource-приложения, которое появилось как личный проект, получило мощную поддержку сообщества, а теперь используется на смартфонах и планшетах ведущих производителей. И при этом по-прежнему остаётся открытым и бесплатным.
Представьте себе Android без Google Mobile Services. Пользователей 4PDA таким не удивишь, нам хорошо знакомы слова AOSP, LineageOS, root и подобные. Но для большинства владельцев Android это звучит странно. Ведь сервисы Google обеспечивают работу фирменных карт, push-уведомлений, синхронизацию аккаунтов и множества других опций, без которых телефон теряет значительную часть функциональности.
Однако за удобство приходится платить: «корпорация добра» собирает огромные объёмы данных о пользователях, а создатели ПО становятся заложниками экосистемы Google. Проблемы приватности и монополизации беспокоят не только энтузиастов открытого софта, но и обычных владельцев гаджетов. Особенно остро это почувствовали обладатели смартфонов HUAWEI после введения санкций в 2019 году.
Именно для решения описанных проблем появился проект microG — открытая реализация Google Play Services. Это приложение позволяет запускать Android-утилиты без фирменных сервисов Google, сохраняя при этом функциональность и ограничивая неуёмное любопытство IT-гиганта.
История появления: один разработчик против корпорации
История microG началась в 2012 году, когда немецкий программист Марвин Виссфельд (Marvin Wißfeld) столкнулся с проблемой: как запустить нужные ему программы на аппарате без Google Play Services? В то время альтернативных магазинов приложений было мало, а большинство популярных утилит намертво привязывались к сервисам Google. Виссфельд решил создать открытую замену проприетарному решению. Мотивация была простой: пользователь должен иметь выбор и контроль над своими данными.
Первые версии представляли собой скорее proof-of-concept, чем готовое решение. Проект, называвшийся тогда NOGAPPS, неспешно развивался — Виссфельд трудился над ним в свободное время, постепенно реализуя различные API Google.
Переломным моментом стал 2016-й, когда к проекту присоединилось активное сообщество. MicroG начал поддерживать критически важные функции: геолокацию, push-уведомления, аутентификацию через Google-аккаунты. Постепенно проект перешёл из категории «интересный эксперимент» в разряд рабочих решений. Свой вклад в его развитие вносят десятки программистов со всего мира.
Ключевая идея microG проста: создать свободную альтернативу проприетарным Google Services. Приложение распространяется под свободной лицензией Apache License 2.0. То есть оно не только бесплатное, но и имеет открытый исходный код, доступный на GitHub.
Как всё устроено: искусство подмены
Принцип работы microG заключается в том, что эти сервисы «притворяются» Google Services и взаимодействуют с Android-приложениями точно так же, как проприетарный аналог. Когда программа обращается к Google API, microG принимает запрос и либо обрабатывает его самостоятельно, либо перенаправляет к альтернативным сервисам.
Ключевая технология, делающая это возможным, называется signature spoofing (подмена подписи). Каждое Android-приложение имеет криптографическую подпись, которая идентифицирует его создателя. Google Mobile Services имеют уникальную подпись Google, и microG использует ту же подпись, «убеждая» приложения, что перед ними настоящие Google-сервисы. Для авторов софта эта замена остается полностью прозрачной — их код не нужно менять.
Где используется microG: от энтузиастов до крупных компаний
MicroG нашёл применение во множестве проектов. Есть даже прошивки для смартфонов, изначально рассчитанные на использование с этими сервисами, например, LineageOS for microG или /e/ OS. Также microG получили распространение при создании модифицированных версий популярного ПО. Например, мод YouTube ReVanced использует их для работы функций, зависящих от Google Mobile Services, но при этом блокирует рекламу и добавляет дополнительные возможности.
История с санкциями против HUAWEI наглядно показала, насколько критична зависимость Android-экосистемы от решений одного IT-гиганта. В мае 2019 года США запретили компании использовать американские технологии, включая сервисы Google.
HUAWEI к тому моменту уже имела собственное решение на замену — HMS, HUAWEI Mobile Services. Однако многие Android-утилиты, к которым пользователи успели привыкнуть, не способны полноценно работать без сервисов Google. И здесь на помощь пришли microG. Поначалу всё было довольно сложно и занимались этим в основном энтузиасты. Требовалось подобрать нужную версию, правильно её установить, да и хотя бы просто знать о существовании такой полезной штуки.
Всё изменилось в прошлом году с выходом очередной прошивки EMUI 14.2 / HarmonyOS 4.2. В новых версиях «Сервисы microG» устанавливаются из фирменного магазина HUAWEI. Даже если вы о них никогда не слышали, App Gallery сам предложит скачать microG при установке любого ПО, завязанного на Google Mobile Service. Необходимо лишь проверить, что в системе для microG выданы все требуемые разрешения. Мы рассказали об этом подробно в недавней статье.
Вот так microG за 10 лет превратился из личного пет-проекта одного разработчика в продукт, который используется на телефонах и планшетах крупнейших производителей. При этом microG по-прежнему остаётся свободно распространяемой программой, бесплатно и легально доступной каждому.