- Введение в Android Firmware
- Предостережения
- 1. Что такое прошивка для Android?
- 2. Что содержит прошивка Android?
- Что такое загрузчики
- Что такое радио прошивка
- Что такое билды Android
- 3. Использование fastboot
- Заключение
- What is stock Android? Everything you need to know about the core OS
- What is stock Android? Stock Android at a glance
- The latest version of stock Android
- How to check your version and for updates
- Can you get stock Android on any phone?
- What stock Android looks like
- What brands/phones offer stock Android?
- Nokia
- Motorola
- Google (sort of)
- Phones with unlockable bootloaders
Введение в Android Firmware
Телефоны и планшеты Android, как правило, намного более открытые, чем их аналоги с такими операционным системами, как iOS, Tizen или Windows 10 Mobile. Если вам не нравится прошивка, установленная изготовителем устройства на вашем устройстве Android, вы можете заменить ее собственной. CyanogenMod, Paranoid Android и проект Pure Nexus — примеры пользовательских прошивок, которые пользуются большой популярностью среди пользователей Android.
Пользовательская прошивка также является единственным способом установки новых версий Android на устройствах, которые больше не поддерживаются их производителями. Если вы не владеете устройством, принадлежащим к серии Nexus или Android One, я уверен, что вы уже это знали.
В этой статье я помогу вам понять, что такое Android-прошивка и как работает устройство Android. Я также расскажу вам об инструментах, которые вы можете использовать для замены прошивки на своём устройстве.
Предостережения
Замена прошивки — это рискованная операция, которая потенциально может привести к невозможности использования вашего устройства. В большинстве случаев это также снимает гарантию с вашего устройства. Перед тем, как продолжить, убедитесь, что у вас есть резервная копия ваших данных и копия исходного образа вашего устройства, и преступим к экспериментам с прошивкой.
1. Что такое прошивка для Android?
Первоначально прошивка была термином, используемым для обозначения крошечных критически важных программ, установленных в памяти, доступной только для чтения, или ПЗУ, на электронном устройстве. Изменение прошивки было либо невозможным, либо требовало специального оборудования, которое обычно было недоступно обычным конечным пользователям.
Однако прошивка для Android отличается от других. Она включает в себя всю операционную систему Android и хранится в записываемой памяти под флэш-памятью NAND, том же типе памяти, который используется на устройствах хранения, таких как USB-накопители и SD-карты. Слово прошивка используется только потому, что производители устройств не удосужились придумать новое слово для этого.
Прошивку Android также часто называют Android ROM, потому что по умолчанию пользователи не могут напрямую писать в нее.
2. Что содержит прошивка Android?
Прошивка, установленная на устройстве Android производителем, содержит сборку операционной системы Android и две дополнительные программы с закрытым исходным кодом, которые обычно незаменимы, загрузчик и радио прошивка.
Что такое загрузчики
Загрузчик Android представляет собой небольшой фрагмент проприетарного кода, который отвечает за запуск операционной системы Android, когда устройство включено. Однако загрузчик почти всегда выполняет еще одну задачу. Он проверяет подлинность операционной системы.
Как он решает, что является подлинным? Он проверяет, был ли загрузочный раздел подписан с использованием уникального ключа OEM, что является сокращением от ключа Original Equipment Manufacturer. Ключ OEM, конечно же, принадлежит производителю устройства, является закрытым, и вы не можете понять, что это такое.
Из-за проверки подлинности вы не можете напрямую установить пользовательский ПЗУ на устройстве Android. К счастью, в наши дни большинство производителей устройств позволяют пользователям отключать проверку. На Android-жаргоне они позволяют пользователям разблокировать загрузчик.
Конкретная процедура, которую вам нужно выполнить, чтобы разблокировать загрузчик, зависит от вашего устройства. Некоторые производители, такие как Sony и HTC, ожидают, что вы предоставите секретный токен разблокировки. Другие просто ожидают, что вы запустите фиксированный набор команд с помощью терминала.
Обычно для запуска команд разблокировки используется инструмент fastboot, который является частью Android SDK. Например, если у вас есть устройство Nexus, вы можете разблокировать его загрузчик, выполнив следующую команду:
В этой статье вы узнаете больше о fastboot. Обратите внимание, что если у вас есть устройство с загрузчиком, которое невозможно разблокировать, нет простого способа изменить или заменить его прошивку.
Что такое радио прошивка
Это может показаться вам неожиданностью, но ваш смартфон Android фактически запускает другую операционную систему на независимом процессоре, называемом процессором основной полосы. Радио прошивка относится к операционной системе, которая работает на процессоре основной полосы частот.
Как правило, это RTOS — операционная система реального времени отвечает за управление возможностями сотовой радиосвязи устройства. Другими словами, это то, что позволяет вашему устройству совершать звонки и подключаться к Интернету с использованием беспроводных технологий, таких как 2G, 3G и 4G LTE.
RTOS — это проприетарный кусок кода и популярные производители базовых процессоров, такие как Qualcomm, MediaTek и Spreadtrum держат его в секрете. Операционная система Android обычно взаимодействует с RTOS с использованием сокетов и обратных вызовов.
Как правило, замена радио прошивки вашего устройства — плохая идея.
Что такое билды Android
Android-сборка — это единственная часть прошивки, созданная с открытым исходным кодом. Следовательно, это единственная часть, которую вы можете изменить и расширить. Когда вы слышите, как энтузиасты Android говорят, что «я сделал новый ПЗУ на своем устройстве», вы можете быть уверены, что речь идет о новой сборке Android.
Сборка Android обычно используется в виде ZIP-файла, который может использоваться fastboot. Он имеет следующее содержимое:
android-info.txt — текстовый файл, определяющий предварительные условия сборки. Например, он может указывать номера версий загрузчика и радио прошивки, необходимые для сборки. Вот пример файла android-info.txt:
boot.img — это двоичный файл, содержащий как ядро Linux, так и ramdisk в виде архива GZIP. Ядро — это исполняемый файл zImage для загрузки, который может использоваться загрузчиком.
С другой стороны, ramdisk является файловой системой только для чтения, которая монтируется ядром во время процесса загрузки. Он содержит хорошо известный процесс init, первый процесс, который запускается любой операционной системой на базе Linux. Он также содержит различные демоны, такие как adbd и healthd, которые запускаются процессом init. Вот как выглядит дерево каталогов ramdisk:
system.img — образ раздела, который будет установлен в пустой каталог system, который вы можете увидеть в приведенном выше дереве. Он содержит исполняемые файлы, необходимые для запуска операционной системы Android. Он включает в себя системные приложения, шрифты, фреймворки JAR, библиотеки, медиакодеки и многое другое. Очевидно, что этот файл больше всего интересует пользователей Android, когда они запускают новый ПЗУ.
Системный образ также является файлом, который заставляет большинство пользователей Android проявлять интерес к пользовательской прошивки. Файлы системных образов, предоставляемые производителями устройств, часто заполняются ненужными приложениями и настройками, неофициально называемыми bloatware. Единственный способ удалить bloatware — заменить образ системы производителя на более желательный образ системы.
userdata.img — образ раздела, который будет установлен в пустой каталог data, который вы можете увидеть в дереве каталогов ramdisk. Когда вы загружаете пользовательский ПЗУ, этот образ обычно пустой, и он используется для сброса содержимого каталога data.
recovery.img очень похож на boot.img. Он имеет загрузочный исполняемый файл ядра, который может использовать загрузчик, и ramdisk. Следовательно, образ для восстановления также можно использовать для запуска устройства Android. Когда он используется, вместо Android запускается очень ограниченная операционная система, которая позволяет пользователю выполнять административные операции, такие как сброс пользовательских данных устройства, установка новой прошивки и создание резервных копий.
Процедура, необходимая для загрузки с использованием образа восстановления, зависит от устройства. Обычно это включает в себя запуск режима загрузчика, также называемый fastboot mode, путем нажатия комбинации аппаратных ключей, присутствующих на устройстве, а затем выбора опции Recovery. Например, на устройстве Nexus вам нужно нажать и удерживать кнопку питания в сочетании с кнопкой уменьшения громкости.
Кроме того, вы можете использовать adb, инструмент, включенный в Android SDK, для прямого входа в режим восстановления.
3. Использование fastboot
Самый простой способ загрузки новой прошивки на вашем устройстве — использовать инструмент fastboot. fastboot следует протоколу fastboot для связи с устройством Android. Однако это может произойти только при запуске устройства в режиме fastboot. Самый быстрый способ войти в режим fastboot — использовать adb:
Чтобы запустить пользовательский ПЗУ, который доступен в виде ZIP-файла, содержащего все файлы образов, упомянутые в предыдущем разделе, вы можете использовать команду fastboot update . Например, вот как вы могли бы загрузить ROM, присутствующий в файле с именем update.zip:
Если вы хотите загрузить только определенный образ, вы можете сделать это, используя команду quickboot flash . Например, вот как вы могли бы загрузить только образ системы:
Аналогичным образом, если вы хотите заменить только загрузочный образ, вы должны использовать следующую команду:
Всегда полезно проверить, работает ли загрузочный или восстановительный образ, прежде чем он начнет работать на вашем устройстве. Для этого вы можете использовать команду fastboot boot . Например, вот как вы можете проверить, совместим ли пользовательский образ восстановления с именем twrp.img с вашим устройством:
Обратите внимание, что ни одна из команд fastboot, упомянутых в этом разделе, не будет работать, если загрузчик вашего устройства не был разблокирован.
Заключение
Теперь вы знаете, что такое прошивка Android и как ее заменить. Я хочу, чтобы вы поняли, что замена прошивки — рискованная операция, которая потенциально может привести ваше устройство в непригодность. В большинстве случаев это также снимает гарантию с вашего устройства. Перед тем, как продолжить, убедитесь, что у вас есть резервная копия ваших данных и копия исходного образа вашего устройства, и начинайте экспериментировать с прошивкой.
Источник
What is stock Android? Everything you need to know about the core OS
The chances are very good that your Android smartphone doesn’t have stock Android. Most manufacturers layer their own software over the core Android operating system, a process known as “skinning.” If you have a recent phone from Samsung, Oppo, OnePlus, Vivo, Xiaomi, or even Google, you are using an Android skin.
You might have read online somewhere that the pure version of Android is superior to these skins. That’s a highly subjective opinion, but it might have made you curious. What is stock Android exactly? Is it really better than having an Android skin? How does one get a stock Android phone?
We’re going to address all those questions and more in this article!
Editor’s note: This article is updated as of September 2021. We will add/remove content as Google launches new updates and variants to the operating system.
What is stock Android? Stock Android at a glance
The purest version of Android is colloquially known as AOSP, which references the Android Open-Source Project. This version of the operating system is its “default” state, with no Google apps, no customizations, and no extra features. Generally, all versions of Android are based on this release.
Now, you can install the AOSP version of Android on a phone and call it “stock.” However, in most real-world cases, stock Android is one step above this. It usually features the inclusion of Google apps, including the ever-important Google Play Store. However, like the AOSP version, stock Android usually doesn’t feature any additional customizations (or at least a very limited amount).
Every year, Google releases a new version of Android. Any new features, fixes, and improvements to the operating system come to stock Android. However, you’ll need to check with your phone’s manufacturer about if and when you’ll see that update on your device.
There are a lot of folks out there who think that stock Android is superior to other versions because of its simplicity. Generally, skinned versions of Android come with “bloatware” (pre-installed apps you may or may not want) and are “heavy” (meaning they have lots of additional code that could slow down the operating system). These issues make some users long for a simpler, lighter version of Android, which the stock variant provides. However, skinned versions of Android often have many more features available. For example, a native dark mode didn’t land on stock Android until Android 10, while skinned variants had had this feature for years prior.
The latest version of stock Android
The most recent stable launch of Android is Android 11, which launched in 2020. In 2021, we will see Android 12 launch.
Generally, a phone with stock Android can see updates to the latest versions of Android quickly, because the phone’s manufacturer doesn’t need to make many software changes. However, this does not guarantee every phone will always have the latest version. Manufacturers only keep phone software updated for a certain period of time, so phones eventually age out. You’ll need to check with your specific manufacturer to see how long your phone will see updates.
Do note that there are a few programs that use what is essentially stock Android without using that terminology. Phones within the Android One program use a subtly altered version of stock Android, for example. Android Go phones similarly use software that riffs on stock Android. We explain this in-depth in the article below.
How to check your version and for updates
It’s very easy to check which Android version you are using. On your stock Android phone, follow the steps below:
- Head to Android Settings by tapping the gear icon in the notification shade or the Settings app in the app drawer.
- Once there, scroll down and tap About Phone.
- Scroll a bit until you find your Android Version.
If you find that you are on an older version of Android, there might be an update for you. To check for Android updates using stock Android, perform these steps:
- Head to Android Settings by tapping the gear icon in the notification shade or the Settings app in the app drawer.
- Once there, scroll down and tap System.
- On the System page, tap Advanced at the bottom of the list. This will expand the list to show more options.
- At the bottom of the list, you’ll now see System Update. Tap that.
- Tap the “Check for Update” button to see if there’s an update available.
If there is no update available but you are on an older version of Android, it might be that your phone is too old for new updates. It’s also possible that the newest update just isn’t available yet for your phone. Check with your phone’s manufacturer for more information.
Can you get stock Android on any phone?
Let’s say you buy the latest Samsung phone, which comes with One UI software. Is there a way to remove the One UI skin and instead have a stock experience?
The short answer to this question is “no.” There is no simple way to remove an Android skin from a smartphone and just leave stock Android behind. However, there are ways to completely remove all the software from the phone and install a fresh version of stock Android. The new version of Android is referred to as a “ROM” (read-only memory) and the procedure of installing it is colloquially called “flashing.” There are many robust online communities revolving around flashing different ROMs on all types of phones and other devices.
Since Android is open-source software, anyone can download the source code, alter it, and put it online for people to use. By flashing different types of ROMs from Android enthusiast communities, you can not only get a truly stock experience but also try out all-new Android skins.
Keep in mind, though, that flashing ROMs usually voids your phone’s warranty. In some limited cases, a bad flash can “brick” your device, meaning make it inoperable. We recommend that only people who are technically inclined try to flash ROMs on their devices, as it can be tricky. For everyone else, we recommend finding a phone for sale that already has a stock Android experience.
What stock Android looks like
Here is a gallery of screenshots that should give you an idea of what to expect from stock Android.
What brands/phones offer stock Android?
Not many companies offer a stock Android experience anymore. Even companies that did once do so — such as Xiaomi — have since stopped. Below, you’ll find some prominent companies that offer an unskinned version of Android.
Nokia
There’s no other company as committed to stock Android as HMD Global, the company that owns the Nokia smartphone brand. Every single Nokia smartphone comes with Android One onboard, which is as close as you can get to true stock nowadays.
The big problem, though, is that HMD Global only makes budget and mid-range Nokia phones. If you want a flagship-caliber device comparable to a Samsung Galaxy S21 Ultra, you won’t find one with a Nokia logo. This is an unfortunate sacrifice stock Android fans will need to make.
If you’re interested in seeing what HMD Global has to offer, check out our list of the best Nokia phones you can get.
Motorola
Most Motorola phones come with My UX, which is the company’s proprietary Android skin. There are a few, though, that come with Android One. The semi-recent Motorola One Action is one such device. Even though it came out in 2019, it’s still for sale and remains Moto’s most prominent Android One phone.
As with Nokia-branded devices, though, you’re not going to find powerful hardware with the Motorola One Action. For more on this phone, check out our full review.
Google (sort of)
Back in the day, Google co-created the Nexus line of smartphones. Those phones all shipped with stock Android. In 2016, though, Google started making phones by itself and re-branded them as Pixel phones. These devices come with Pixel UI on board, which is technically an Android skin.
Granted, Pixel UI is very, very close to stock. However, it is not technically stock as Google adds in tons of Pixel-exclusive features and pre-installs apps here and there. The bottom line here, though, is if you are unhappy with what HMD Global and Motorola have to offer, a Google Pixel phone might be your next-best option.
Phones with unlockable bootloaders
Finally, the best stock Android phone might be a phone you already have. If your phone comes with an unlockable bootloader, the chances are high that there is a community of modders sharing stock ROMs you can flash.
Not every phone comes with an unlockable bootloader, though. Some phones, such as Pixel devices, are easy to unlock. Other phones are difficult or even impossible. Our best advice is to visit the forums over at XDA-Developers and browse around to see what phones have unlockable bootloaders. It will require some work on your part, but this is likely the only way to get a phone with stellar hardware and stock Android.
That’s everything you need to know about stock Android! Be sure to bookmark this page as we will update it as information changes over time.
Источник