Я до сих пор помню тот день, когда впервые получил root-права и прошил кастомную прошивку на своем Samsung Galaxy S. В то время я учился в колледже и только начинал работать с Android. При прошивке устройства я наткнулся на множество новых слов и аббревиатур, связанных с экосистемой Android, о которых тогда я понятия не имел. За эти годы я познакомился с распространенными жаргонами Android, когда писал об этом, участвовал в форумах и читал о разных вещах.
Эта статья предназначена для всех новых пользователей Android, которые хотят чего-то большего от своих телефонов — рутировать, прошивать и исследовать свои возможности. Полезно знать, что это за термины, так как большая часть контента для Android, скорее всего, использует их именно в этой форме. Это поможет вам лучше понять вещи в следующий раз, когда вы будете следовать статье, в которой говорится о перепрошивке ПЗУ.
Итак, вот некоторые жаргоны Android, о которых вам следует знать.
АБР
ADB, сокращение от «Android debug bridge», в основном представляет собой инструмент командной строки, который используется для связи с устройством Android. После того, как вы подключите устройство Android через USB-кабель и установите ADB, вы можете использовать команды ADB для выполнения определенных операций на Android с помощью вашего компьютера.
Для обычного конечного пользователя ADB в основном используется при прошивке или рутировании устройства. Его также можно использовать для отправки (передачи) любого файла с вашего компьютера на Android в качестве пользователя root.
АОСП
Проект Android с открытым исходным кодом, также известный как AOSP, представляет собой операционную систему Android от Google в чистом виде. Это ПЗУ, созданные из открытого исходного кода Android. Такие производители, как Samsung и HTC, используют этот исходный код, а затем модифицируют его для создания ПЗУ, таких как Sense и TouchWiz, которые мы используем на своих телефонах.
ПЗУ AOSP имеют размер от 200 до 300 МБ по сравнению с ПЗУ Samsung и HTC, которые могут достигать нескольких ГБ. Теперь, хотя это может ускорить ваше устройство, сократив все вредоносные программы, вы можете потерять много интересных вещей, для которых производители разработали устройство.
Загрузчик
Для простоты понимания загрузчик можно сравнить с BIOS, который есть у нас на компьютере. Когда вы включаете свой телефон Android, он загружается первым. После этого он может загрузить либо восстановление, либо ядро, в зависимости от вашего варианта загрузки. Затем он, наконец, загружает ПЗУ (операционную систему) для нормальной загрузки.
Запечатанное на заводе устройство поставляется с заблокированным загрузчиком, который запускает официальную прошивку на устройстве и имеет цифровую подпись производителя. Поэтому, если вы хотите запускать пользовательские ПЗУ, вы должны сначала разблокировать загрузчик. Однако разблокировка загрузчика аннулирует гарантию на большинство устройств.
Далвик
При перепрошивке ПЗУ вы, должно быть, столкнулись с шагом, который просит вас очистить кеш Dalvik. Теперь, чтобы понять, что именно вы делаете в этот момент, мы должны сначала понять, что такое Dalvik.
Dalvik — это виртуальная машина на основе Java, которая является основой для запуска ваших программ. Точно так же, как приложения APK запускают приложения на вашем Android, Dalvik запускает код, написанный на Java. Чтобы упростить задачу, Dalvik — это удобная для мобильных устройств виртуальная машина Java, которая запускает код Java, чтобы она могла работать на вашем устройстве Android.
Кэш Dalvik — это просто кеш, который поддерживается при выполнении кода Java. Всегда желательно избавиться от этого кеша, чтобы избежать какой-либо двусмысленности при компиляции кода после перепрошивки нового ПЗУ.
Деодекс
В деодексированных ПЗУ все файлы APK и ОС скомпилированы и размещены под одним зонтиком, который называется class.dex. Это гарантирует, что весь код будет в одном пакете. Поскольку весь код доступен в одном месте, модифицировать эти ПЗУ очень просто. Таким образом, почти все разработчики пользовательских ПЗУ предпочитают Deodex.
Однако весь этот код требует дополнительного времени для компиляции каждый раз, когда его нужно выполнить для виртуальной машины Dalvik.
GAPPS
В большинстве случаев, когда вы прошиваете пользовательское ПЗУ, разработчики просят вас прошить файл GAPPS после прошивки файла ПЗУ. Файл GAPPS содержит все приложения Google, включая маркет, который будет установлен как системное приложение для работы устройства.
Телефон сможет загружаться без Google Apps, но не будет ни Market, ни службы GPS-слежения, ни даже синхронизации учетной записи и данных.
Каждая версия Android имеет свой файл GAPPS, поэтому то, что вы прошиваете, предоставляется разработчиками. Если вы хотите загрузить их вручную, лучше всего использовать приложение Gapps Manager.
ядро
Ядро — это не то, что есть только у Android-устройств. По сути, это базовый слой между машиной и операционной системой. Будь то Windows, Mac или iOS, у каждого из них есть ядро.
Android-смартфоны используют ядро Linux. Каждый раз, когда программное обеспечение должно взаимодействовать с оборудованием, все должно проходить через ядро. От изменения громкости на телефоне до совершения телефонных звонков и получения сигнала сотовой связи, все передается с помощью ядра.
Различные ПЗУ работают на разных ядрах в зависимости от их архитектуры. Эти ядра управляют оборудованием для программного обеспечения. Лучшим примером здесь может быть поддержка OTG. Хотя вы можете подключить OTG к любому устройству Android, оно будет обнаружено только в том случае, если ядро поддерживает эту функцию. Таким образом, есть несколько телефонов, которые поддерживают OTG, в то время как другие должны прошивать специальное ядро, чтобы получить эту функцию.
Одекс
Есть много технических способов объяснить это, но, поскольку эта статья предназначена для новичков, самый простой способ описать файлы Odex — это то, что они представляют собой предварительно скомпилированные файлы .dex. Эти файлы оптимизированы и могут запускаться непосредственно виртуальной машиной Dalvik.
ПЗУ Odex оптимизированы и поэтому загружаются быстрее. Эти файлы очень сложно изменить, так как они уже скомпилированы.
Вывод
Итак, это были некоторые из важных терминов, с которыми вы могли столкнуться, изучая форумы, посвященные перепрошивке и рутированию вашего устройства. Надеюсь, это поможет вам освоить язык разработки для Android. Если вы столкнетесь с какими-либо другими терминами, не упомянутыми в статье, не стесняйтесь обращаться за разъяснениями в комментариях ниже.