Android Auto в Baidu CarLife: как удалось подружить два протокола

Владелец Honda Vezel 2024 года для китайского рынка столкнулся с особенностью штатной мультимедийной системы: головное устройство поддерживало только Baidu CarLife. Android Auto в списке совместимых технологий не было, а обычная прошивка от дилера не могла решить проблему.
Дополнительным ограничением стала активация Honda Connect. За пределами Китая выполнить её невозможно, поэтому штатная система фактически оставалась источником радио, музыки с USB-накопителей и воспроизведения по Bluetooth. Для полноценной интеграции со смартфоном приходилось искать обходные решения.
От идеи адаптера к собственному приложению
Одним из вариантов была покупка специализированной коробочки вроде wizcar. Другой путь автор обнаружил в обсуждениях на Reddit: один из пользователей продавал приложение, способное связать несовместимые на первый взгляд протоколы. Если такую задачу удаётся решить программно, решил автор, можно попробовать повторить подход самостоятельно.
Для разработки он использовал Claude Code вместо ручного разбора APK, который, по его словам, был бы более привычным подходом десять или пятнадцать лет назад. Так появился Headswap — приложение для телефона, выполняющее роль посредника между штатной системой автомобиля и Android Auto.
Как работает Headswap
Для головного устройства приложение представляется телефоном, подключённым через Baidu CarLife. Одновременно для Android Auto на том же смартфоне Headswap выступает как головное устройство. За счёт такого разделения ролей приложение связывает два протокола и передаёт интерфейс Android Auto на мультимедийную систему, которая изначально его не поддерживает.
Проект опубликован с открытым исходным кодом по лицензии GPL-3.0. Изначально автор рассчитывал, что решение пригодится прежде всего владельцам автомобилей Honda для китайского рынка. Однако уже через несколько дней к проекту присоединились владельцы сотен машин.
Что показало тестирование
Автор наблюдал за работой решения в течение трёх с половиной недель и по ходу использования фиксировал возникающие проблемы. Сам материал посвящён не только результату, но и внутреннему устройству Headswap, а также ограничениям, которые проявились при практической эксплуатации.
История проекта показывает, что отсутствие Android Auto в штатной системе не всегда означает необходимость менять головное устройство или покупать отдельный адаптер. В некоторых случаях связать несовместимые платформы можно программным способом — если разобраться в протоколах и быть готовым самостоятельно тестировать нестандартное решение.


