- What is the Android Open Source project?
- Open and free
- The Google flagship
- Google Pixel 6 Pro — 5G
- These are the best USB-C cables you can find for Android Auto
- These are some of the best Google Pixel 6 screen protectors you can buy
- Don’t miss out on the very best smart lights for gaming
- Jerry Hildenbrand
- Погружаемся в opensource-экосистему Android
- Несколько причин, почему стоит об этом задуматься
- Google Play далеко «не торт»
- Низкое качество приложений в google play, засилие рекламы, телеметрий, шпионских модулей, уязвимостей
- Энергопотребление
- Вторая жизнь старым устройствам без большого количества ОЗУ и/или места на диске?
- Несколько подводных камней, с которыми ничего не сделать
- Немного матчасти
- На каких устройствах это будет работать?
- MicroG
- NanoLX NanoDroid
- Установка приложений из google play
- Очень небольшой начальный набор из качественных opensource-приложений
- Вместо выводов
What is the Android Open Source project?
Source: Jerry Hildenbrand / Android Central
Best answer: The Android Open Source Project is the core of the Android software that runs on your phone. It’s free and anyone can modify it but it isn’t enough to power a device on its own.
Open and free
Source: Google
Android is a free open-source operating system. The AOSP (Android Open Source Project) is free to download, free to alter, free to build into a product that can power just about anything. But it’s not something you’ve ever used when you picked up a phone or other gizmo that runs «Android» because it’s not really a complete operating system.
The AOSP isn’t everything you need to power a device but it’s a huge chunk of it.
At its heart, Android is nothing more than a platform that anyone can use to run applications plus the bits and pieces needed for it to talk to standard hardware. We tend to think of Android as an operating system for a phone or tablet (or even a watch or television), but it’s just a part of the software needed to get any device to turn on and do things. That being said, it’s one of the most important parts.
Having a huge library of code that anyone can use is great. Having all the things people build with it able to use the same applications is even better. It’s better for us because we will have a huge list of applications that work out of the box when we buy an Android-powered device. It’s better for the companies making the devices because we’ll want to buy them and they don’t have to put in the work to build their own application platform. It’s also great for Google because it means more devices will be able to use the internet and its services.
Source: Google
That last part is why Google maintains the AOSP. Google has always held the belief that everyone should have access to the internet. While some of the reasons may be altruistic and good-natured, the main reason Google as a company has these goals is because the internet is how it makes money. All companies exist to make money, but with the AOSP, Google has found a new way to make money from everyone while giving away one of its most expensive products: Android.
Google isn’t the only company that builds the AOSP.
This is done through the AOSP. Google maintains the Android source code. That means exactly what you think it does: It keeps things clean and tidy and up-to-date, then makes it available for other people. It also has people working full time to make improvements and add new features to Android.
All of this is made available for anyone to freely use under a liberal license that allows changes to be made to the code and not submitted back to the maintainers. This means Samsung is allowed to do whatever it wants with the AOSP and doesn’t have to share what it has done with anyone. So are you, and so am I. If we do something different, we can keep those changes to ourselves to offer a (hopefully) better product than anyone else can.
Source: Nick Sutrich / Android Central
But the phones and gadgets we buy aren’t running the AOSP as an operating system. What we see is the end result of someone or some company using it to create software that is unique and their own. This can be done by changing the code or by adding more code or even adding applications that aren’t open-sourced like the AOSP is. Every company that sells Android-powered gadgets, including Google itself, is doing this.
Even Google’s own phones aren’t using an open-source version of Android.
This fits into Google’s methods to make money because there are some restrictions when a company wants to use Google’s popular applications and services. If a company wants to include Google’s mobile services (and almost all phone makers do) it has to adhere to rules as a Google partner. Those rules make sure everyone knows about Google’s money-making products.
The process is a circle. Google gives Android away. A company uses it on its phone. As consumers, we want Android phones that can use Google Play and Gmail and Google Photos and all the other things that make Android great. The company making the phone can bundle those features in for free as long as it makes sure its product can use every other application found in the Google Play store. Phone manufacturers, like Samsung, save time and money by not building their own application platform and application storefront; we get the best Android phone with access to all the apps we love plus a market with over a million others, and Google gets a lot of people using its services and being on the internet to see Google’s ads.
By making Android a big piece of an operating system that anyone can use for free, Google’s investment in it pays off.
This couldn’t happen without Android being free to use, so the time and money Google invests in Android makes it a very lucrative part of its business. By providing Android as source code anyone can use instead of a standalone product like Windows, Google can reap the benefits while another company does the work of building and maintaining a living operating system. AOSP means everyone wins, and that’s the way we like it.
The Google flagship
Google Pixel 6 Pro — 5G
The Pixel 6 Pro is Google’s first no-compromise high-end phone. From the display to the camera setup and the promised five years of security updates, this is a serious flagship phone that’s worthy of your attention.
We may earn a commission for purchases using our links. Learn more.
These are the best USB-C cables you can find for Android Auto
Android Auto is an absolute necessity when driving, regardless of whether you’re headed out to the grocery store or for a long road trip. These cables will ensure your phone stays protected and charged, no matter what.
These are some of the best Google Pixel 6 screen protectors you can buy
If you can’t wait to get your hands on the new Google Pixel 6, don’t forget to think about buying a screen protector for it as well. We’ve rounded up some of the best picks!
Don’t miss out on the very best smart lights for gaming
Smart lights aren’t just for the living room. They can also be used to amp up your gaming setup, whether you want to make your desk flashier or install lights that react to the game you’re playing. Here are some of our favorite options.
Jerry Hildenbrand
Jerry is an amateur woodworker and struggling shade tree mechanic. There’s nothing he can’t take apart, but many things he can’t reassemble. You’ll find him writing and speaking his loud opinion on Android Central and occasionally on Twitter.
Источник
Погружаемся в opensource-экосистему Android
Каждый выбирает свой «уровень погружения». Вам не обязательно следовать каждому пункту из этого поста. Моя цель — показать, насколько хорошо развита экосистема на данный момент и чего вы можете и не можете от неё получить. Делайте выводы самостоятельно. Хотите — меняйте прошивку полностью и переходите на microg. Хотите — просто поставьте на свой телефон f-droid прямо рядом с gplay. Хотите — не делайте ничего.
Давайте поговорим об экосистеме приложений свободных приложений с открытым исходным кодом на Android. Попробуем установить MicroG — свободную реализацию сервисов Google на Android. Посмотрим, как и зачем со всем этим жить.
Несколько причин, почему стоит об этом задуматься
Google Play далеко «не торт»
Далеко ходить не нужно, в соседних постах можно найти множество примеров того, как разработчиков выгоняют из Google Play по тем или иным причинам, заставляя общаться с ботами без возможности реальной аппеляции. Некоторые типы приложений теперь принципиально невозможно распространять (например, блокировщики рекламы, да и в принципе приложения обхода любых ограничений).
Мне, как параноику, не нравится, что у стороннего лица появляется практически полный доступ к моему устройству. Google способен как минимум удалить с моего телефона любое приложение в любой момент и собрать с него произвольные данные. Более того, google play service — это огромное (стандартная поставка — 600Мб, минимальная — 95Мб) количество постоянно обновляющегося кода, часть которая работает с системными привилегиями. Для сравнения, дистрибутив MicroG может весить всего 4Мб.
Низкое качество приложений в google play, засилие рекламы, телеметрий, шпионских модулей, уязвимостей
Я, конечно, и раньше был не очень высокого мнения о среднестатистическом приложении для андроида, но был серьёзно удивлен своим новым телефоном одного китайского производителя. После покупки, мне пришлось три дня ходить со стоковой прошивкой из-за ограничений разблокировки (вот она — еще одна причина не доверять свои устройства компаниям). Я честно не понимаю, почему этим пользуются и почему это любят. Мне постоянно (несколько раз в час) приходили непонятные уведомления (дайте разрешение, обновите меня, реклама). Что-то постоянно обновлялось. Стоковый браузер в один момент просто перестал работать.
Энергопотребление
Исходит из предыдущего тезиса. Если приложения не загружают рекламу, не отправляют статистику и не следят за вами, они потребляют меньше электроэнергии. Это же касается gapps: зачастую, они являются главным потребителем электроэнергии. Да, Google в последнее время серьёзно работает над энергопотреблением. Однако, во-первых, не у всех есть возможность использовать актуальные версии Android. Во-вторых, даже в этих условиях замена gapps на более простое и минималистичное решение позволит вам еще сильнее продлить жизнь от батарейки.
Вторая жизнь старым устройствам без большого количества ОЗУ и/или места на диске?
Тоже логичное продолжение предыдущих моментов. Случалось ли с вами такое, что на бюджетном устройстве после очередного обновления gapps вообще не остается места ни на приложения, ни на пользовательские данные? Даже если на вашем не очень свежем устройстве еще достаточно свободных ресурсов, избавление от gapps позволит освежить его.
Несколько подводных камней, с которыми ничего не сделать
Немного матчасти
Google Play Services, gapps, Google Play. Включают в себя как базовые сервисы, необходимые для работы push-уведомлений, геолокации, синхронизации различных данных с Google так и остальной пользовательский софт, использующий всё это (например, Gmail).
Тип уведомлений, работающий через сторонний сервер. Позволяет значительно экономить батарейку, т.к. устройство может полностью заснуть и просыпаться через небольшие промежутки времени, проверяя только одно сетевое соединение на наличие новых событий.
По умолчанию, устройства на Android идут с заблокированным загрузчиком. Обычно, требуется произвести эту процедуру, чтобы иметь возможность устанавливать любые другие прошивки. Разблокировка загрузчика обычно не только даёт возможность модифицировать системные разделы, но и отключает проверку подписи ядра при загрузке.
Права суперпользователя. Точно так же, по умолчанию обычно их нет и необходимо их получать тем или иным способом. Либо установкой прошивки (для lineageos есть addon-su), либо magisk. Обычно в инструкциях предлагают ставить проприетарный и купленный китайцами SuperSU (мы их слушать не будем и поставим опенсорсный magisk). В особо тяжелых случаях иногда приходится использовать эксплоиты (вроде KingRoot).
Позволяет устанавливать прошивки и их модификации в виде zip-архивов. Обычно это TWRP, тоже проект с открытым исходным кодом.
Помимо предоставления root, имеет встроенный модуль для скрытия этого самого root от некоторых приложений (полезно для банк-клиентов) и большое множество сторонних модулей. В контексте этого поста для нас будет самым полезным модуль для установки Xposed.
Если Magisk предоставляет модули для модификации базовой системы, то xposed предоставляет модули для модификации и патчинга на лету самого Android. В контексте этого поста будет полезным модуль FakeGapps. Рекомендую ставить его через Magisk, и для конкретной API-версии (соответствующей вашей версии android). К сожалению, обычно поддержка прошивок отстает на одну версию android.
Каталог открытого ПО для Android. Можно использовать как официальный репозиторий, так и сторонние.
Флагман среди opensource-прошивок. Бывший Cyanogenmod.
На каких устройствах это будет работать?
Условно все устройства можно поделить на следующие классы (в порядке убывания удобности):
- Устройства с официальной поддержкой lineageos. Наличие официального порта обычно является не только гарантией более-менее нормальной работы, но и наличия множества других прошивок под это устройство. Естественно, лучше проверять информацию (и о наличии прошивок, и о возможных сюрпризах) на 4pda/xda до покупки. К сожалению, совсем новых устройств вы там обычно не увидите.
- Устройства с неофициальными портами lineageos/других прошивок. Обычно, немного хуже, но жить все равно можно.
- Устройства без сторонних прошивок, но с root. Сложнее избавляться от bloatware и gapps (однако, с NanoDroid это теперь можно делать в автоматическом режиме). Никаких гарантий, что вы удалили все вредоносные приложения от производителя.
При выборе устройства так же нужно смотреть на:
- Собственно покрытие прошивками. Хорошее коммьюнити вокруг телефона обычно дает более крепкие гарантии на обновление прошивки, чем типичный производитель.
- Некоторые производители ограничивают возможность разблокировки загрузчика.
- Например, у xiaomi присутствует задержка от нескольких дней до недель от привязки телефона к аккаунту до первой разблокировки.
- Huawei недавно в принципе перестала выдавать коды разблокировки (особо не разбирался, как минимум для нескольких устройств). Фу на них, но за несколько долларов до сих пор можно купить код разблокировки на стороне.
MicroG
MicroG — открытая реализация gapps. Обеспечивает работу push-уведомлений, api геолокации в использующих это приложениях. Список поддерживаемых api.
Для работы требуется функциональность подделки подписи в прошивке. Способы установки, примерно соответствующие градации устройств выше:
Можно установить LineageOS for MicroG и получить практически все перечисленное практически из коробки. Самый простой и удобный способ из всех, рекомендую использовать именно его, если ваше устройство есть в списке поддерживаемых.
Можно установить MicroG вручную на любую прошивку, не идущую в комплекте с gapps (почти любая не стоковая прошивка). Однако, в прошивке требуется поддержка подмены подписей (Signature Spoofing).
- Смотрите инструкции. В довольно большом списке прошивок эта функциональность есть из коробки, достаточно только поставить сверху MicroG.
- Остальные прошивки придется тем или иным способом патчить.
- Самый удобный способ — модуль для XPosed FakeGapps. Не требует модификации самой системы.
- Способы с модификацией системы. Не рекомендую, т.к. у меня это приводило к проблемам с производительности, но не могу сказать, правило это или исключение. Необходимо повторять после каждого обновления.
- Способы патчинга на самом телефоне (nanodroid-patcher) занимают достаточно много времени (перекомпиляция достаточно жирного системного файла), но являются вторыми по удобству. У меня это приводило к проблемам с производительности, не рекомендую.
- Способы патчинга с участием компьютера. Еще менее удобны, но при этом быстры, т.к. пересборка происходит на ПК. Требуют подключения телефона к ПК.
Не планировал описывать полную инструкцию, но опыт предыдущего поста показывает, что придется.
Процесс установки зависит от способа. Про установку при помощи NanoDroid чуть ниже, здесь описана ручная процедура:
- Удалить gapps, если они есть. Например, при помощи приложения /d/gapps
- Установить собственно необходимые apk. Из репозитория microg или NanoLx.
- GmsCore.apk («MicroG Services core» из репозитория). На Android 7 и выше это приложение нужно сделать системным (при помощи приложения или модуля magisk systemize), если вы хотите пользоваться бекендами поиска местоположения.
- GmsProxy.apk («MicroG Services Framework proxy» из репозитория)
- Одну из реализаций PlayStore (это обязательно)
- Приложение-заглушку FakeStore. Заглушке в настройках необходимо дать доступ на подделку подписей. В последний раз у меня с этим возникли какие-то проблемы, поэтому можно сделать adb shell pm grant com.android.vending android.permission.FAKE_PACKAGE_SIGNATURE с ПК или просто pm grant com.android.vending android.permission.FAKE_PACKAGE_SIGNATURE с телефона.
- Переподписанный Google Play Store. Да, это возможно! Но такой apk предоставляет только репозиторий NanoLX.
- Бекенды местоположения, если нужно. Например, MozillaNlpBackend. Позволяет телефону быстро определять своё местонахождение без GPS.
После установки и перезагрузки, необходимо зайти в настройки microg и пройтись по чеклисту, дать все необходимые разрешения. Мне на Android 9 понадобилось набрать *#*#2432546#*#* , без этого регистрация пуш-уведомлений не производилась. Тестировать работу можно при помощи Push notifications tester.
NanoLX NanoDroid
Пожалуй, самый простой и удобный способ установить MicroG. Помимо основных возможностей (удаление gapps и установка microg) имеет несколько приятных фич:
- Удаление стандартных приложений и замена их на opensource-аналоги. Удобно, когда у вас телефон на условном MTK с сильно замусоренной стоковой прошивкой.
- Установка Fdroid, YalpStore/AuroraStore с системными правами
- Возможная установка патченного Google Play, совместимого с microG.
Достаточно установить несколько из следующих файлов:
- NanoDroid: основной установщик. Устанавливает всё.
- NanoDroid-setupwizard: графическая настройка основного установщика. Позволяет выбрать, какие компоненты будут установлены и какие действия будут совершены. Работает только на устройствах с arm/arm64.
- NanoDroid-BromiteWebView: заменяет системный WebView на BromiteWebView со встроенной блокировкой рекламы.
- NanoDroid-OsmAnd: устанавливает OsmAnd+.
- NanoDroid-microg: устанавливает только microG.
- NanoDroid-fdroid: устанавливает только FDroid и расширение, позволяющее устанавливать и обновлять приложения в фоновом режиме.
- NanoDroid-patcher: включает поддержку Signature Spoofing (см выше).
- NanoDroid-uninstaller: удаление ранее установленного.
Установка приложений из google play
Как было отмечено выше, есть несколько способов решения проблемы.
- Можно установить патченную версию оригинального Google Play и жить, как обычно. Должно работать всё, включая микроплатежи в приложениях.
- Aurora Store. Прекрасное, красивое, быстрое приложение. Может многое (из основного нужного — установка, обновление бесплатных приложений). Пока в бете и имеет некоторые проблемы со скачиванием через анонимный аккаунт (используйте свой неанонимный или пока обойтесь Yalp Store, это практически то же самое, но без красивого интерфейса и с еще более скромными системными требованиями (до сих пор поддерживается Android 2+)
- PlayMaker позволяет на вашем сервере развернуть f-droid репозиторий с нужными вам приложениями из google play. Управление скачиваемыми приложениями производится через веб-интерфейс. Имеет очевидные ограничения, но очень удобен, если вы нечасто устанавливаете новые приложения и нуждаетесь лишь в способе их удобного обновления.
- 4pda app&game: Безумное приложение, однако, предоставляющее быстрый доступ к обновлению ваших приложений. Может быть полезным тем, что на 4pda обычно выкладывают не только оригинальные версии, но и модифицированные (например, с удаленной рекламой). Лично я не одобряю, но знаю, что этим пользуются.
- APKPure Сторонний сервис-зеркало Google Play. Не был замечен за перепаковкой приложений (подписи совпадают с оригинальными), но нет никаких гарантий, что так будет продолжаться и дальше.
Очень небольшой начальный набор из качественных opensource-приложений
Update: только что появился пост с более широким обзором приложений.
Вместо выводов
Лично мне переход на MicroG, F-Droid и AuroraStore дал тот Android, о котором я всегда мечтал. С удобными приложениями, не напичканными рекламой и телеметрией, позволяющие мне не делиться своими данными с Google, но при этом работающими push-уведомлениями, позволили перестать мечтать о недостижимом (смене мобильной ОС на Sailfish/ubuntu phone/etc, где все бы равно для полноценной работы приходится использовать слой для поддержки Android-приложений) и начать жить.
Надеюсь, эта инструкция поможет вам понять, нужно ли вам это в принципе и успешно повторить этот результат.
Источник