что такое treble прошивки

Что такое Project Treble? Поддерживает ли мой смартфон Android данную технологию?

Одна из самых частых жалоб на Android заключается в очень сильной «фрагментации» платформы. На данный момент существует восемь различных версий мобильной операционной системы Android, которые до сих пор используются на устройствах с различным аппаратным оснащением.

Стандарты в индустрии устанавливает компания Apple. Если самой популярной системой Android остается выпущенная два года назад Android 7.x Nougat, то более 75% iOS уже работают на самой свежей iOS 11.

Давайте детально взглянем на статистику устройств Android от Google. 23,5% устройств работает на Android 6.x (Marshmallow), а 30,8% управляются Android 7.x (Nougat). Это означает, что более половины устройств Android работают на системах возрастом около 2 лет. Лишь на 12,1% устройств установлена последняя версия Android 8.x (Oreo). Если говорить откровенно, то более 85% устройств Android имеют устаревшее программное обеспечение и более 13% находятся под управлением пятилетней (или более старой) операционной системой.

Можно выделить две основные причины данной плачевной ситуации: политика производителей и цикл обновления Android.

Project Treble приходит на помощь

Производителям нужно проводить работу по оптимизации обновления операционной системы под конкретное оборудование. Данный процесс требует много времени и часто бывает просто нерентабелен.

Обычно срабатывал следующий сценарий: операционная система и низкоуровневое программное обеспечения были частью одного и того же кода. Поэтому, когда ОС получала обновление, низкоуровневый программный модуль тоже должен был обновиться с помощью собственной реализации производителя. Для этого требуется много ресурсов.

Начиная с Android 8.x (Oreo), Google решила разделить два этих процесса. Теперь операционная система Android сможет получать обновления без реализации производителя. Собственные модули производителя также могут обновляться при необходимости.

Таким образом, в Android 7.x и более ранних версиях Android обновлять нужно было не только операционную систему, но и низкоуровневый код для аппаратных модулей, обновления для последнего поступали от производителя чипов. Например, если компания Samsung хотела выпустить обновление для одного из своих смартфонов, она должна была подождать обновление от Qualcomm, которое бы заставило установленный чип работать с обновленным кодом Samsung. Данные зависимости усложняли и затягивали процесс обновления.

В Android 8.x и выше данная ситуация больше не повторится. Так как низкоуровневый код отделен от кода операционной системы, производители устройства могут обновить программное обеспечение, не дожидаясь обновления низкоуровневого кода от партнеров, поставляющих микросхемы.

Данное изменение должно существенно ускорить процесс обновления. Производитель устройства получает независимый контроль над обновлениями. Таким образом, Project Treble позволит существенно увеличить скорость разработки и развертывания обновления.

Поддерживает ли мое устройство Project Treble

Project Treble получат не все устройства. Предусмотрено несколько ограничений:

Вывод: поддержка Project Treble зависит от производителей, но новые устройства Oreo должны будут поддерживать данную технологию.

На сайте Android Police доступен список устройств, которые получат поддержку Project Treble, а также которые будут обновлены до Oreo без поддержки Treble.

Как проверить поддержку Project Treble на устройстве Android 8.0+

Примечание: для данного способа не требуются права root.

Заключение

Обновления Android становились предметом жалоб на протяжении многих лет. Приятно видеть, что Google решает данную проблему. Данное улучшение приведет к тому, что все устройства Android будут ближе к паритету с Apple с точки зрения обновлений устройств.

Источник

Что такое Project Treble и будущее обновления Android ОС

Самая большая проблема операционной системы Android — это долгие обновления. Понятно, что для Nexus и Pixel устройств обновления системы выходят очень быстро, но к сожалению другим OEM-производителям стоит ждать довольно долго, пока выйдут специальные версии, которые компании будут дорабатывать. Многие пользователи жалуются уже очень давно на данную проблему.

Вот буквально с выходом Android 8.0 Oreo компания Google анонсировала специальную структуру новой ОС под названием Project Treble. Данная структура позволит ускорить процесс обновления операционной системы для OEM-производителей в несколько раз. Project Treble, возможно, является одним из самых больших изменений в Android Oreo. В данной статье мы расскажем как это повлияет на Android в будущем.

Зачем нужен Project Treble

Многие критикуют Android из-за того, что большинство топовых устройств все еще работают на устаревшей операционной системе, в то время как даже очень старый iPhone 5S получил обновление до iOS 11. Вся эта критика, отчасти, не обоснованная. Ведь компания Apple делает свою операционную систему только для iPhone, а Google для большого количества других производителей.

Но поскольку смартфоны приобретают все более важную роль в жизни человека: хранение огромного количества личных данных, финансовые реквизиты, фотографии и др., поэтому получать последние патчи безопасности и свежие обновления ОС очень важно.

Проблема медленного обновления связана с тем, что слоты программного обеспечения Android взаимодействуют с базовым аппаратным обеспечением телефона. Чтобы приложения могли работать на процессоре или использовать камеру, ОС должна взаимодействовать с подключенным оборудованием через слой абстракции аппаратного обеспечения (HAL).

Это очень важно, особенно если вы хотите, чтобы сторонние приложения из Play Store взаимодействовали с камерой любого телефона. HAL разработаны как низкоуровневый драйвер-агностик. Ниже находится ядро Linux, которое обрабатывает аппаратную связь между HAL и точными компонентами телефона. Он должен быть скомпилирован в зависимости от конкретного оборудования смартфона.

Проблема c Android 7.0 Nougat и более старыми версиями заключается в том, что не было разделения между аппаратным кодом низкого уровня у производителей и кодом операционной системы AOSP более высокого уровня. Поэтому компаниям приходилось ждать, пока каждый производитель процессоров оптимизирует новую ОС, а только потом уже сами компании дорабатывали их под свои смартфоны.

Читайте также:  что делать после контракта в армии

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

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

Как будут работать новые обновления

Очень важно знать, что Android использует ядро Linux. Оно является частью операционной системы, которая обрабатывает команды для ввода и вывода определенных данных. Иными словами, благодаря ему программное обеспечение взаимодействует с оборудованием. Чтобы внести какие-либо изменения в Android ОС, придется также изменить систему работы с ядром Linux.

Чтобы решить проблему уровня абстракции аппаратного обеспечения, Android Oreo получил разделение между вспомогательными системами, такими как аудио или камера, и их клиентами со стороны программного обеспечения. Эти новые разделы определяют интерфейс между HAL и его пользователями. На данный момент существует около 60 таких разделов для различных аппаратных компонентов (HIDL).

Главная цель HIDL — позволить заменить фреймворк без необходимости изменения HAL. HAL будут создавать производители смартфонов и процессоров. Их будут встраивать в устройства. Благодаря этому фреймворк сможет изменяться после обновлений (OTA) без необходимости изменения HAL. Чтобы обновлять устройства, работающие с более ранними версиями Android до Android Oreo, надо будет пройти старую процедуру обновления. А уже потом можно спокойно переходить на Project Treble.

Также очень важным нововведением стало то, что поддержка ядра Linux увеличилась с 2-х до 6 лет, благодаря Project Treble. Если раньше устройства (не от Google) получали обновления в течение одного года, то сейчас данный срок может увеличиться в несколько раз.

Как вы можете видеть, переход на Project Treble требует немного работы со стороны производителей оборудования. Как только данное изменение реализуют все OEM-производители на своих устройствах, то им не придется работать над изменениями в новой ОС. Надо будет лишь обновить фреймворк старой операционной системы на новый.

В официальном описании Project Treble говорится о том, что все новые устройства, которые выйдут уже с Android Oreo на борту, получат поддержку данной структуры. А это значит, что смартфоны, которые обновятся с Android 7.0 до 8.0, скорее всего, не будут ее поддерживать. Например, недавно вышедший OnePlus 5T, который из коробки работает на Android Nougat. Но в тоже время, первое поколение смартфонов Pixel после обновления до Android 8.0 Oreo получило поддержку Project Treble.

Естественно Project Treble не подразумевает то, что все смартфоны будут получать обновления мгновенно, т.к. Google не обрабатывает их напрямую. OEM-производители по-прежнему будут добавлять какие-то изменения в систему, а также внедрять собственное программное обеспечение. Поэтому добавление своих функций, а затем тестирование новой ОС займет некоторое время. И только потом они смогут присылать обновление на смартфоны. В любом случае, процедура будет занимать гораздо меньше времени.

Последствия Project Treble

С точки зрения пользователя, обновления ОС будут прилетать точно так же, как и сейчас. Компании по-прежнему смогут перенаправлять обновления OTA, которые вы можете загрузить в фоновом режиме. Единственное, данный процесс будет происходить немного быстрее, а также увеличится срок поддержки устройств.

Благодаря Project Treble разработчики кастомных прошивок смогут гораздо быстрее оптимизировать ОС под определенный смартфон. Если раньше для этого требовались недели или даже месяцы, то сейчас это все можно сделать за пару дней.

Большинство пользователей ресурса XDA уже в восторге от перспектив. Разработчик под ником «OldDroid» назвал это прорывом. Ему удалось установить кастомную прошивку Android Oreo на Huawei Mate 9, для которого вообще не было ни одной сторонней прошивки Android Nougat.

Возможно, мы приближаемся ко времени, когда программное обеспечение Android ОС можно будет легко портировать на разные устройства, подобно тому, как Windows может работать с огромным набором аппаратных конфигураций с минимальными требованиями. Но на данный момент это не является целью Project Treble.

Заключение

Project Treble звучит очень многообещающе, но стоит понимать, что у него есть ограничения. Во-первых, это не прямое обновление от Google. Такие производители смартфонов как Samsung, Huawei и LG, по-прежнему несут ответственность за сбор и обновление ОС в своих продуктах. И это не будет происходить также быстро как у Google Pixel. Treble — это оптимизация структуры ОС, предназначенная для ускорения обновлений от производителей. Google сделала свою часть, теперь все зависит от сторонних компаний.

Во-вторых, только телефоны с Android 8.0 Oreo и новее из коробки должны поддерживать Project Treble. Смартфоны, которые обновятся до Oreo, не должны полностью поддерживать Treble, хотя производители могут реализовать это, если захотят. Также маловероятно, что кастомные прошивки смогут поддерживать Treble на многих устаревших устройствах, поскольку доступ к низкоуровневому оборудованию не является открытым исходным кодом.

Если вы сейчас ищете смартфон с поддержкой Project Treble, то на данный момент есть несколько вариантов: Pixel / Pixel 2, Essential Phone, Huawei Mate 9, Mate 10, Honor 9 и Honor 8 Pro. Пока не ясно, какие другие OEM-производители планируют поддерживать Treble в своих существующих устройствах. Конечно, флагманы следующего года с предустановленной Android Oreo будут идти уже с возможностью быстрого обновления. И это очень хорошие новости для владельцев Android-устройств.

Читайте также:  что значит summer sale

Источник

Как установить Android 11 GSI на любое устройство Project Treble

Замечания: Как вы знаете, мы тестируем GSI Android 11 на Poco F1. Кроме того, обязательно сделайте резервную копию всех ваших файлов, поскольку, скорее всего, вам придется полностью стереть внутреннее хранилище из-за проблем с шифрованием.

Project Treble

Если вы хотите начать разработку приложения для следующей версии Android – вы уже можете протестировать своё приложение с помощью эмулятора Android Studio, или смартфона линейки Google Pixel. В этом году Google представила очередную разработку под названием Project Treble, которая позволит производителям быстрее выпускать обновления для приложений на Android. Вы можете установить официальную GSI-сборку Android Q на своё устройство, если оно совместимо с Project Treble.

Суть Project Treble заключается в модульности операционной системы, когда основа ОС отделена от установленных поверх неё прошивок. Это позволит производителям менять только основу ОС при выходе новых версий Android, что увеличит скорость выхода обновлений. В дополнение к тестам CTS, с помощью которых тестируются приложения, появился новый набор тестов VTS, или Vendor Test Suite.

С помощью тестов VTS производители смогут проверить, соответствуют ли их устройства требованиям Project Treble. Одна из самых главных деталей, которую необходимо проверять производителям устройств при выходе очередного обновления – это возможность загрузки GSI-сборки на устройства, совместимые с Project Treble. GSI-сборка – это чистая версия Android, которую используют производители устройств для проверки на наличие поддержки Project Treble, при выпуске нового смартфона. Однако Google хочет, чтобы разработчики использовали GSI-сборки для проверки своих приложений на совместимость с актуальной версией Android.

Например, если у вас смартфон Google Pixel, единственный способ протестировать своё приложение в будущей версии Android – это установить эмулятор Android Studio. Вы также можете воспользоваться специальным облачным сервисом для тестирования, ну или купить смартфон Google Pixel.

У каждого из этих способов есть свои преимущества и недостатки, но если у вас есть рабочее устройство, которое совместимо с Project Treble, и вы не хотите тратить деньги на покупку полной версии Android Studio, чтобы снять все ограничения, почему бы не установить GSI-сборку на своё устройство? Если ваше приложение будет хорошо работать на GSI-сборке, то оно, скорее всего, будет также работать на всех устройствах с этой версией Android.

Открытый код Android Q не будет доступен до августа 2021 года, поэтому официальные GSI-сборки – это единственный способ протестировать Android Q на смартфонах, которые не входят в линейку устройств Pixel.

Как узнать, поддерживает ли мой смартфон Project Treble?

Мой смартфон имеет поддержку Project Treble с типом обновления «А» Узнать, поддерживает ли её ваш смартфон крайне просто. Для этого есть бесплатное приложение Treble Check, доступное в Google Play. Софт не только даст вам информацию о том, поддерживает ли ваш девайс технологию, о которой мы говорим, но и какой тип обновления системы предусмотрен производителем. Это важный момент, так как если ваш смартфон имеет схему обновления «A», то в таком случае вам не подойдут прошивки от схемы «A/B» и наоборот. На профильных форумах этой теме и подборкам прошивок посвящены целые разделы.

Разница между прошивками «A» и «A/B» кроется в типе обновления. В случае с «А» прошивка вносит изменения только на уровне операционной системы Android, все остальное — графическая оболочка и прочие программные надстройки от производителя остаются нетронутыми. А прошивки с методом обновления «A/B» вносят изменения на обоих уровнях. Примечательно, что есть смартфоны, которые поддерживают исключительно первый, либо второй вариант. Изменить данное свойство, к сожалению, не представляется возможным.

У вас также мог возникнуть резонный вопрос, насчет того, почему я пишу этот материал в 2021 году, ведь технологии уже целых два года. Согласно последней официальной статистике, опубликованной Google в мае 2021 года процент устройств, работающих на версиях Android 8 Oreo и Android 9 Pie, в которых и реализована поддержка пресловутой технологии Project Treble, достиг 37%.

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

Обсудить будущее операционной системы Android и не только вы можете вместе с участниками нашего лампового чата в Telegram.

Требования

Перед началом установки бета-версии Android Q необходимо проверить устройство на совместимость с Project Treble, и можно ли установить образ системы из загрузчика.

Что нужно сделать в-первую очередь?

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

Ещё один важный момент, все GSI-сборки не проходят тесты CTS на момент своего выхода. Поэтому, если ваше приложение использует протокол SafetyNet для проверки устройства на прохождение CTS-теста – ничего не получится. Кроме того, эти сборки не рекомендуется использовать на постоянной основе, так как они полны различных багов. Google опубликовала список с известными на данный момент багами GSI-сборок у себя на сайте. В случае обнаружения новых багов, вы можете сообщить об этом Google, заполнив соответствующую форму (см. Google Issue Tracker).

Treble

Вопреки расхожему мнению, основная проблема, с которой сталкиваются производители смартфонов при обновлении прошивок своих телефонов, — это вовсе не пофигизм и лень (хотя это тоже часто встречается), а необходимость ждать, пока производители чипсетов и других хардварных компонентов обновят драйверы до новой версии Android.

Читайте также:  что значит значок наруто

Дело в том, что Android, как и многие другие продукты Google, очень долгое время развивался в режиме вечной беты. Это значит, что Android менялся. Не только и не столько в плане интерфейса, сколько в плане внутренней архитектуры.

В Android никогда не было устоявшегося, обратно совместимого интерфейса между системой и драйверами. В большинстве случаев нельзя было просто взять новую версию Android и «посадить» ее на драйверы и ядро Linux от старой версии. Почти всегда что-нибудь да отваливалось.

Требовались обновленные драйверы, разработкой которых занимался производитель железа, а вовсе не производитель смартфона. Поэтому, если производитель чипсета, камеры или Wi-Fi-адаптера по тем или иным причинам отказывался поддерживать старое железо (что происходит очень часто, а в случае с такими компаниями, как MediaTek, постоянно), полноценный порт новой версии Android становится почти невозможен.

Создатели кастомных прошивок искали обходные пути, чтобы заставить новую версию Android работать на старых драйверах. В дело шли любые приемы от простого «не работает, забейте» до различных программных прослоек, обеспечивающих работу на устаревших драйверах. Так, в кастомных прошивках для Xiaomi Redmi 1s есть прослойка, которая позволяет использовать камеру в Android 7.1.1, хотя драйверы для нее застряли еще на уровне версии 4.4.4.

Однако для компании — производителя смартфона такой подход зачастую неприемлем. Устройство с выполненным подобным образом портом может просто не пройти сертификацию Google. Кроме того, такие прослойки нередко приводят к сбоям в неожиданных местах и не обеспечивают новую функциональность, которая может требоваться Android для корректной работы (например, поддержка новых режимов камеры).

К счастью, в какой-то момент Google решила положить конец этой вакханалии и стандартизовать-таки программный интерфейс между драйверами и Android. Это и есть инициатива Treble, и она была воплощена в жизнь в Android 8.0.

Суть Treble проста и уже должна быть понятна: код Android разделяется на две независимые части, одна из которых содержит драйверы и весь зависимый от железа код, а вторая — саму операционную систему. Программный интерфейс между этими компонентами стандартизуется и остается стабильным между релизами Android. Как результат, для портирования новой версии Android достаточно портировать платформенно независимую часть системы, и она корректно заработает на имеющихся драйверах и версии ядра Linux, с которой смартфон был выпущен на рынок.


Так было…


…а так теперь

Это в теории. На практике же есть пара подводных камней.

Теперь о самих Treble-совместимых прошивках. Сразу после выпуска Android 8.0 Google начала публиковать так называемые образы GSI (Generic System Image). Это официальная сборка «чистого» Android (AOSP) для Treble-совместимых устройств. В теории ее можно прошить на разблокированное устройство с помощью fastboot и получить официальный Android.


Android 10 GSI на 15 различных устройствах

Чуть позже GSI-сборки начали подготавливать и разработчики кастомных прошивок. Например, ты можешь скачать GSI-сборку от phhusson с множеством фиксов для разных устройств. В теме, посвященной Treble, на 4PDA есть множество Treble-совместимых прошивок, включая LineageOS. Ну а проверить свое устройство на совместимость с Treble можно с помощью приложения Treble Check.

Проверяем совместимость с Project Treble

Откройте консоль на компьютере и введите следующую команду:

adb shell getprop ro.treble.enabled

Если в ответ придёт false, значит ваше устройство не совместимо с Project Treble. Так что дальше можете не продолжать. Если же ответ true, переходим к следующему шагу.

Затем вводим эти команды:

В полученном ответе нужно найти раздел [vendor], а внутри этого раздела найти строку namespace.default.isolated. Если напротив стоит значение true, значит на ваше устройство можно установить GSI-сбоку поверх образа Android 9 Pie. Если же стоит значение false, тогда вы можете установить GSI-сборку только той версии, которая сейчас стоит на вашем устройстве.

Как это должно выглядеть на примере OnePlus 6T

Теперь вам нужно подтвердить, есть ли на вашем устройстве рут. Если ваше устройство было обновлено до Android 9 Pie, наличие рута необязательно, но он необходим для поддержки OTA-обновлений. Введите следующие команды, чтобы проверить, есть ли на вашем устройстве рут:

Теперь, когда вы убедились, что ваше устройство поддерживает Project Treble, вам нужно выяснить какую версию GSI-сборки скачивать, так как есть различные образы для различных архитектур. Введите следующую команду, чтобы узнать, какая архитектура используется на вашем устройстве:

adb shell getprop ro.product.cpu.abi

Выпишите на листок бумаги полученную информацию: она вам понадобится при скачивании GSI-сборки.

Вывод

По мнению Google, Project Treble ускорит и упростит выход обновлений. А первой модульной версией ОС, станет Android 8.0 Oreo, где реализована установка обновлений, при полном отсутствии свободного места во внутреннем накопителе. Так же, если производитель мобильного устройства прекратит дальнейшую поддержку, при помощи Google Play получится и дальше получать актуальные патчи безопасности, где закрыты различные уязвимости системы. Владелец не получит новые функции, за то снизится вероятность взлома и кражи личной информации.

Скачиваем GSI-сборку

Как только файл скачается, распакуйте его. Внутри должно быть 2 файла: system.img и vbmeta.img.

Установка GSI-сборки

На этом всё, при дальнейшем запуске смартфона он должен запуститься с установленной GSI-сборкой. Стоит отметить, что Android Q beta 2 GSI не получается установить на OnePlus 6T, а вот на Xiaomi Mi 9 можно. Пишите свои мысли о новом Android Q в комментариях.

Источник

Строительный портал